NetworkAdmin.ru
رفتن به کانال در Telegram
Авторский блог про сетевое и системное администрирование. Сайт: networkadmin.ru Реклама: @dad_admin Биржа: https://telega.in/c/networkadminru
نمایش بیشتر4 725
مشترکین
اطلاعاتی وجود ندارد24 ساعت
-47 روز
+230 روز
آرشیو پست ها
4 726
👓 Изоляция процессов без Docker
В linux есть встроенный механизм изоляции системных ресурсов - namespaces. Именно на нем основаны контейнеры вроде docker и LXC. Но namespaces можно использовать и напрямую без всяких надстроек.
Namespace - это способ ядра linux изолировать разные части системы: процессы, сеть, точки монтирования, пользователей и т.д. Каждое приложение может жить в своем отдельном пространстве, не видя другие процессы и ресурсы.▪️ Пример 1: изоляция процессов и монтирования. Запустим новую оболочку bash в отдельном пространстве процессов (PID) и монтирования (mount).
unshare --pid --mount --fork --mount-proc /bin/bash
ps aux
USER PID %CPU %MEM COMMAND
root 1 0.0 0.0 /bin/bash
root 18 0.0 0.0 ps aux
Здесь процесс bash получил PID 1 - он главный в своем изолированном пространстве. Теперь создадим изолированное монтирование:
mkdir /tmp/testdir /mnt/testdir
mount --bind /tmp/testdir /mnt/testdir
mount | grep testdir
/dev/sda3 on /mnt/testdir type ext4 (rw,relatime)
На хосте это монтирование вы не увидите, оно существует только внутри namespace.
▪️ Просмотр активных namespaces. Список всех пространств можно увидеть с помощью lsns:
lsns
NS TYPE NPROCS PID USER COMMAND
4026532480 pid 3 123 root unshare --pid --mount --fork --mount-proc /bin/bash
4026532481 mnt 3 123 root └─/bin/bash
Тут видны PID и MOUNT пространства, созданные нашей командой unshare. Если у вас работают контейнеры, их namespaces тоже будут отображены здесь.
▪️ Пример 2: запуск процессов в чужом namespace. Можно подключиться к уже существующему пространству с помощью nsenter.
Предположим, у нас есть процесс bash с PID 123. Подключимся к нему и запустим команду top:
nsenter -t 123 -p -m top
Теперь top выполняется внутри того же PID и mount namespace, что и процесс bash.
▪️ Полезные инструменты
unshare - создает новые namespaces.
nsenter - позволяет войти в уже существующие.
systemd-nspawn - мини-контейнерная система от systemd.
Пример запуска простого контейнера через systemd-nspawn:
systemd-nspawn -D /var/chroot/debian bash
#linux #namespaces
🧑💻 NetworkAdmin4 726
🖥 Курсы по PostgreSQL
Если вы работаете с PostgreSQL или только планируете - обратите внимание бесплатные курсы от компании Postgres Professional. Это один из немногих примеров, когда коммерческая компания делится полноценной учебной программой без ограничений.
Ссылка: https://postgrespro.ru/education/courses
▪️ Доступные курсы для администраторов PostgreSQL
DBA1 - базовое администрирование PostgreSQL
DBA2 - настройка и мониторинг
DBA3 - резервное копирование и репликация
QPT - оптимизация запросов
PGPRO - возможности Postgres Pro Enterprise
Каждый курс - это набор подробных презентаций и видео, охватывающих реальные задачи администрирования. Проходить можете в любом порядке, если нужно что-то точечно узнать - добро пожаловать.
▪️ Пример
Хотите разобраться с резервным копированием и репликацией?
Перейдите в DBA3, тема 2. Базовая резервная копия. Вы узнаете про холодные и горячие бэкапы, различия подходов, используемые инструменты и проверку восстановления.
(не реклама)
#postgresql #database
🧑💻 NetworkAdmin
4 726
— Ты уволен
— Почему?
— Мы оплатили GPT-5, ты больше не нужен.
Вы тоже в ах@е с такого расклада? Учился лет 5, потом столько же батрачил за копейки ради опыта — чтобы тебя заменила еб@чая железяка.
А теперь задумайтесь: нейронки развиваются с бешеной скоростью. Поэтому сейчас как никогда нужны спецы для их обучения.
Чтобы в кратчайшие сроки выйти на уровень элиты и стать топом в сфере — подпишитесь на канал @devsp. Его автор раскрывает неочевидные секреты: как в 3 месяца уместить 6 лет обучения, достойно пройти любое собеседование и что делать, чтобы лучшие компании дрались за вас.
А временами подкидывает крутые вакансии и лайфхаки, после которых вас с руками оторвут даже без опыта.
Это всё равно что встретить Нео и войти в 10% тех, кто сломал систему. Подписывайтесь: @devsp
4 726
🔒 Защита DNS-запросов на практике
DNS - это всегда один из самых уязвимых элементов сети. Каждый раз, когда вы вводите сайт в браузере, ваш компьютер отправляет незашифрованный запрос к DNS-серверу, спрашивая: какой IP-адрес у этого домена? Эти запросы можно перехватить, подменить или использовать для слежки. Чтобы защитить пользователей и инфраструктуру, появились две технологии: DNSSEC и DNS over HTTPS (DoH).
▪️ DNSSEC - подписи и верификация ответов. DNSSEC - это расширение классического DNS, добавляющее цифровую подпись к каждому ответу.
Задача DNSSEC гарантировать целостность и подлинность данных, а не шифровать трафик.
Принцип работы:
Каждый домен имеет криптографическую пару ключей (DNSKEY).
Ответ DNS подписывается приватным ключом.
Клиент или DNS-сервер-посредник проверяет подпись с помощью публичного ключа, опубликованного в зоне.
Если подпись не сходится - ответ считается поддельным.
Пример проверки DNSSEC с помощью dig:
dig linux.org +dnssec
Если в ответе есть флаг ad (Authenticated Data), значит, подпись проверена и валидна.
▪️ DNS over HTTPS (DoH) - шифрование DNS-запросов. DoH решает другую задачу, он шифрует сам трафик DNS. Запросы к DNS-серверу отправляются по HTTPS, то есть через порт 443 с TLS-шифрованием.
Преимущества:
Скрывает DNS-запросы от провайдера и промежуточных узлов.
Устойчив к подмене (например, от провайдерских фильтров).
Легко использовать в корпоративных и домашних сетях.
Пример настройки DoH в Linux с systemd-resolved. Для этого редактируем /etc/systemd/resolved.conf:
[Resolve]
DNS=1.1.1.1#cloudflare-dns.com
DNSOverTLS=yes
или используем dnscrypt-proxy, который поддерживает и DoH, и DoT (DNS over TLS).
▪️ Связка DNSSEC + DoH. DNSSEC проверяет, что данные настоящие, а DoH гарантирует, что запросы никто не подслушает.
Совместное использование этих технологий обеспечивает:
Проверку подлинности ответов DNS;
Защиту от MITM-атак и подмены записей;
Конфиденциальность и шифрование всех запросов.
Где это работает:
Cloudflare (1.1.1.1) - поддерживает DNSSEC и DoH;
Google Public DNS (8.8.8.8) - поддерживает DNSSEC;
Quad9 (9.9.9.9) - DoH + фильтрация вредоносных доменов.
Проверить поддержку DoH можно через:
curl -s https://cloudflare-dns.com/dns-query?name=example.com -H 'accept: application/dns-json'
#DNS #security
🧑💻 NetworkAdmin4 726
Repost from IT-KB 🤖
Как и обещали проводим следующий розыгрыш для наших подписчиков 🎉
В этот раз тоже всё очень просто:
1. ✅@ITKB_channel
2. Нажать "Участвовать"
7 декабря 2025 года 10 случайно выбранных системой подписчиков получат 1000 р.P.S. в следующий раз обязательно отметим 🪙 самых преданных подписчиков, которые на продолжительной основе находятся вместе с нами❤️ Всем удачи и огромное спасибо за то, что Вы с нами!🤗
4 726
🏠 Управление windows серверами как по SSH
PowerShell - это не просто консоль, а полноценная среда для удаленного администрирования. Один из ее инструментов - PowerShell Remoting, позволяющий выполнять команды и скрипты на других windows серверах (и даже на linux) почти так же, как по SSH.
PowerShell Remoting - это механизм, основанный на WinRM (Windows Remote Management), который реализует стандарт WS-Management. Он позволяет запускать команды, выполнять скрипты и даже открывать интерактивную сессию на удаленной машине. По сути, это SSH для windows, встроенный в систему начиная с windows 7 / server 2008 R2.⚙️ Настройка PowerShell Remoting. На целевом сервере достаточно выполнить одну команду:
Enable-PSRemoting -Force
Эта команда:
Включает службу WinRM,
Настраивает слушатель HTTP (порт 5985) и HTTPS (порт 5986),
Добавляет правила в брандмауэр.
Проверяем статус:
Get-Service WinRM
🌐 Подключение к удаленной системе
Подключиться можно тремя способами:
1. Выполнить одиночную команду:
Invoke-Command -ComputerName server01 -ScriptBlock { Get-Service }
2. Открыть интерактивную сессию:
Enter-PSSession -ComputerName server01
(аналог ssh user@server)
3. Создать постоянную сессию и использовать её повторно:
$session = New-PSSession -ComputerName server01
Invoke-Command -Session $session -ScriptBlock { Get-Process }
Remove-PSSession $session
🔓 PowerShell Remoting через HTTPS и SSH
Если хотите шифровать трафик, то настройте HTTPS-сессию (WinRM через TLS).
А начиная с PowerShell 7, можно использовать нативный SSH-транспорт:
Enter-PSSession -HostName server01 -UserName admin
Теперь PowerShell работает поверх SSH - удобно, безопасно и кроссплатформенно.
⚠️ Практические сценарии
Массовый перезапуск служб:
Invoke-Command -ComputerName (Get-Content servers.txt) -ScriptBlock { Restart-Service spooler }
Сбор информации о дисках или обновлениях на всех серверах:
Invoke-Command -ComputerName * -ScriptBlock { Get-HotFix }
Запуск скриптов администрирования без входа по RDP.
🆘 Советы
Для доменной инфраструктуры remoting работает из коробки.
Для рабочих групп используйте Enable-PSRemoting + Set-Item WSMan:\localhost\Client\TrustedHosts *.
На проде лучше ограничить доступ с помощью HTTPS, Kerberos или SSH.
#powershell #windows
🧑💻 NetworkAdmin4 726
Приглашаем на вебинар «Как упаковать инфраструктуру в сервис: vStack Cloud Panel»
Когда: 11 декабря в 11:00
Спикер: Евгений Карпов, генеральный директор vStack
На вебинаре мы покажем, как vStack Cloud Panel позволяет упаковать вычисления, хранилище и сеть в готовые облачные услуги с каталогом, тарифами и квотами - чтобы запускать и продавать их быстрее.
Вы узнаете, как self-service и автоматизация помогают:
🔹Снизить количество тикетов и нагрузку на поддержку.
🔹Ускорить получение выручки (time-to-revenue).
🔹Превратить IaaS в управляемый и предсказуемый бизнес.
Участие бесплатное, по предварительной регистрации.
🔗 Зарегистрироваться
#реклама
О рекламодателе
4 726
📱 Генератор конфигураций Nginx
Хочу напомнить о полезном сервисе для генерации конфигов nginx - https://nginxconfig.io/
▪️ Как работает
Вы просто заполняете форму: указываете домен, корневую директорию, нужные параметры HTTPS, настройки для WordPress, PHP-FPM, Node.js или Python. На выходе получаете полный набор конфигов, аккуратно разделённых на смысловые части:
основной конфиг Nginx;
настройки SSL и безопасности;
параметры для CMS (WordPress, Drupal и др.);
шаблон для Let’s Encrypt;
инструкции по установке и активации.
Сервис даже показывает пошаговую инструкцию, включая:
генерацию dhparam.pem для ssl_dhparam;
создание каталога /.well-known/acme-challenge для валидации сертификатов;
команду для настройки certbot.
▪️ Что полезного я подсмотрел
1️⃣
error_page 404 /custom_404.html;
Раньше я не всегда добавлял собственную страницу ошибок, а сервис по умолчанию предлагает аккуратную структуру с отдельным location для обработки 404 и 50x ошибок. Решил внедрить у себя - теперь логи чище, а пользователю отображается внятная страница.
2️⃣ add_header X-Frame-Options "SAMEORIGIN";
Мелочь, но важная - защита от clickjacking. Я добавил этот заголовок в общий конфиг, чтобы не прописывать вручную в каждом сайте.
3️⃣ ssl_protocols TLSv1.2 TLSv1.3;
Сервис сразу предлагает только современные протоколы.
4️⃣ location ~ /.(?!well-known)
Глобальная блокировка скрытых директорий, кроме .well-known для Let’s Encrypt - отличная идея.
Раньше я прописывал исключения вручную для каждого виртуального хоста, теперь вынес в общий файл security.conf.
Даже если вы уверенно настраиваете nginx вручную, такие инструменты полезны для проверки себя и актуализации шаблонов.
Сервис генерирует чистые, валидные и безопасные конфиги, которые можно использовать как основу для продакшн-настроек.
#nginx #webserver
🧑💻 NetworkAdmin4 726
🧑💻 Отладка контейнеров без инструментов
Иногда нужно что-то быстро продебажить внутри контейнера: посмотреть процессы, сделать ping, проверить DNS или снять tcpdump. Но чаще всего внутри контейнера нет вообще ничего, кроме самого приложения.
В таких случаях идеально подходит специальный контейнер: Network-Multitool
Его также часто используют и в кубере - для отладки сетей, проверки маршрутов и соединений между подами.
▪️ Пример использования. Создадим контейнер с Nginx, где нет даже ps:
docker run --name nginx -d -p 8080:80 nginx
docker exec -it nginx bash
ps axf
bash: ps: command not found
Теперь подключаем Network-Multitool к тому же namespace, где работает контейнер Nginx:
docker run --rm -it \
--network=container:nginx \
--pid container:nginx \
wbitt/network-multitool:alpine-extra bash
Проверим процессы:
ps axf
PID TTY STAT TIME COMMAND
47 pts/0 Ss 0:00 bash
60 pts/0 R+ 0:00 \_ ps axf
1 ? Ss 0:00 nginx: master process nginx -g daemon off;
29 ? S 0:00 nginx: worker process
30 ? S 0:00 nginx: worker process
Теперь у вас есть все необходимое: ping, dig, curl, tcpdump, netcat, iftop, mysql, git, tshark и многое другое.
▪️ Варианты сборок
alpine-extra - расширенная версия (максимум инструментов, включая tshark, ab, postgresql-client, git и др.).
alpine-minimal - легкая сборка, только базовые сетевые утилиты.
#docker #debug
🧑💻 NetworkAdmin4 726
Открытая конференция GetNet уже начинается — подключайтесь онлайн.
Конфа для сетевиков и сисадминов - говорим о сетях, делимся опытом, разбираем кейсы и отвечаем на вопросы
Что будет:
- Особенности дизайна Wi-Fi сетей для разных сценариев
- Планируем Wi-Fi. Руководство "Как обмануть заказчика"
- Wi-Fi. Вопросы безопасности. Защита периметра
- Как построить МОЩНЫЙ прод и что этому может помешать?
и др.
Подключайся. Начинаем в 11-00
4 726
🖥 Динамическая маршрутизация (OSPF/BGP)
Современные серверы и маршрутизаторы давно умеют не только работать с iptables и NAT, они вполне способны участвовать в динамической маршрутизации на уровне провайдерского оборудования. Два наиболее популярных решения для этого: BIRD и FRRouting (FRR).
Если вы используете статические маршруты (ip route add ...), то при изменении топологии сети приходится вручную обновлять таблицы маршрутов. Динамические протоколы решают это автоматически: маршрутизаторы обмениваются маршрутами между собой, выбирают оптимальные пути и обновляют таблицы без участия администратора. Основные протоколы: OSPF (Open Shortest Path First) - для внутренних сетей (IGP) BGP (Border Gateway Protocol) - для внешних соединений (межсетевые маршруты между организациями)▪️ BIRD - легкий и быстрый демон маршрутизации BIRD - это компактное и производительное решение, часто используемое в инфраструктуре провайдеров. Поддерживает IPv4, IPv6, OSPF, BGP, RIP и static. Установка:
apt install bird # debian или ubuntu
Пример конфигурации OSPF:
protocol ospf {
area 0 {
interface "eth0" {
cost 10;
};
};
}
Пример простого BGP сессии:
protocol bgp mypeer {
local as 65001;
neighbor 192.168.1.2 as 65002;
import all;
export all;
}
Файлы конфигурации находятся в /etc/bird/.
После изменения конфигурации не обязательно перезапускать демон, можно использовать:
birdc configure
▪️ FRRouting (FRR) - наследник Quagga. FRR - это более тяжелое решение, ориентированное на продакшн-маршрутизаторы и крупные сети. Поддерживает OSPF, BGP, IS-IS, RIP, PIM и даже LDP.
Установка:
apt install frr frr-pythontools # debian или ubuntu
Конфигурация BGP (пример):
router bgp 65001
bgp router-id 192.168.1.1
neighbor 192.168.1.2 remote-as 65002
network 10.0.0.0/24
Запуск FRR:
systemctl enable frr
systemctl start frr
Конфигурация хранится в /etc/frr/frr.conf. Для управления используется утилита vtysh, она похожа на CLI сетевых устройств cisco или mikrotik.
#linux #networking
🧑💻 NetworkAdmin4 726
Хотите развивать карьеру в сфере сетевого оборудования? Мы в поиске Network Engineer in Test 🚀
Участвуйте в SPRINT OFFER и получите оффер в YADRO за 3 дня. Команда KORNFELD тестирует сетевое оборудование YADRO — коммутаторы, протоколы и инфраструктуру уровня дата-центров.
Инженеры анализируют требования, создают сценарии верификации, проводят комплексное тестирование и ищут скрытые дефекты в сетевых системах.
⚙️ Как проходит SPRINT OFFER:
1️⃣ Оставьте заявку до 30 ноября и пройдите HR-скрининг.
2️⃣ Пройдите техническое и менеджерское интервью.
3️⃣ Получите оффер за 3 дня.
💡 Что важно:
• Опыт работы с сетевым оборудованием (Cisco, Huawei, Juniper и др).
• Глубокие знания сетевых протоколов (BGP, OSPF, VxLAN, MCLAG, VRRP).
• Навыки тестирования и траблшутинга.
💻 У нас:
• Удалённая работа (РФ/РБ) или офис в городах присутствия — Москве, Санкт-Петербурге, Нижнем Новгороде, Екатеринбурге, Минске.
• Амбициозные проекты в уникальной команде инженеров.
• Верткальный и горизонтальный карьерный рост.
• ДМС с первого дня, поддержка спортивных инициатив сотрудников и другие бенефиты.
💙 Отправляйте заявку до 30 ноября и становитесь частью команды YADRO, которая создает технологии будущего!
4 726
🔐 GnuPG: шифрование и управление ключами
GnuPG (GNU Privacy Guard) - это открытая реализация стандарта OpenPGP (RFC 4880). Она позволяет: шифровать и расшифровывать данные; подписывать файлы и сообщения; проверять подлинность данных; управлять ключами (создавать, экспортировать, отзывать и т.д.). Работает на всех системах - linux, macOS, windows, и не требует никаких внешних сервисов.▪️ Основные команды для работы 1️⃣ Создание пары ключей:
gpg --full-generate-key
Тут нужно указать тип ключа (обычно RSA), длину (2048–4096), срок действия и e-mail для идентификации. После этого ключ сохраняется в ~/.gnupg/.
2️⃣ Просмотр ключей:
gpg --list-keys
3️⃣ Экспорт публичного ключа:
gpg --export -a user@networkadmin.ru > public.key
4️⃣ Экспорт приватного ключа:
gpg --export-secret-keys -a user@networkadmin.ru > private.key
5️⃣ Импорт ключа:
gpg --import public.key
▪️ Шифрование и подпись
Шифрование файла:
gpg -e -r user@networkadmin.ru secret.txt
Создается файл secret.txt.gpg, который можно расшифровать только соответствующим приватным ключом.
Расшифровка:
gpg -d secret.txt.gpg > secret.txt
Подпись файла:
gpg -s file.txt
Проверка подписи:
gpg --verify file.txt.sig file.txt
▪️ Несколько полезных команд
Проверить, какой ключ используется по умолчанию:
gpg --list-secret-keys --keyid-format LONG
Удалить ключ:
gpg --delete-key user@networkadmin.ru
Создать зашифрованный архив с tar:
tar cz folder | gpg -c > archive.tar.gz.gpg
#gpg #security
🧑💻 NetworkAdmin4 726
📘 На Stepik вышел курс — «DevOps-инженер: От основ до продакшена»
Уже пишете код или администрируете серверы и хотите перейти на следующий уровень? Этот курс поможет уверенно войти в DevOps.
• Полный путь от Linux и сетей до Kubernetes: Docker, Git, GitLab CI/CD, Terraform, Ansible, Prometheus и Grafana
• Практика на реальных кейсах: настраиваем пайплайн, контейнеризацию и инфраструктуру кодом, выкатываем сервисы
• 180+ интерактивных заданий с автопроверкой — конфиги, манифесты прямо в браузере, в любое удобное время
• Итоговый pet-project: к финалу курса у вас будет рабочая инфраструктура с контейнерами, CI/CD и мониторингом
🎓 Сертификат по завершении — добавьте его в резюме или профиль LinkedIn
🚀 Прокачайте DevOps с пользой и удовольствием. Начните уже сегодня и получите скидку 25%, которая действительна в течение 48 часов
👉 Пройти курс на Stepik
4 726
🏃♂️ Сброс пароля root в linux через GRUB
Решил посмотреть, как на практике сбрасывается пароль root, и заодно поделиться с вами. Это классическая задача, которую часто дают на собеседованиях.
Цель - получить доступ к системе с правами root, даже если пароль неизвестен. Сделать это можно, изменив параметры загрузки ядра в GRUB.▪️ Как это делается 1. Включаем сервер и ждем появления меню загрузки GRUB. 2. Выбираем нужный пункт и нажимаем
e (латинскую).
3. В открывшемся редакторе ищем строку, начинающуюся с linux или linux16.
4. В самый конец этой строки добавляем:
rw init=/bin/bash
Это позволит запустить оболочку bash вместо стандартного systemd.
5. Нажимаем Ctrl+X или F10 для загрузки. После старта вы сразу окажетесь в консоли под пользователем root без пароля. Теперь можно просто задать новый пароль:
passwd
и перезагрузить систему:
exec /sbin/init
или
reboot -f
▪️ Как это работает
Параметр init= сообщает ядру, какой процесс нужно запустить первым.
Обычно это /sbin/init (или systemd), который отвечает за загрузку системы.
Когда мы подменяем его на /bin/bash, система вместо полноценной инициализации попадает прямо в консоль.
Фактически, вы оказываетесь в самой ранней стадии загрузки с полными правами root.
▪️ Для RHEL и производных
В системах вроде RHEL, CentOS, AlmaLinux, RockyLinux используется немного другой вариант:
rw rd.break enforcing=0
После загрузки окажетесь в emergency shell, где также сможете сбросить пароль через passwd.
#linux #security
🧑💻 NetworkAdmin4 726
⚡️ Быстрый HTTPS-сервер без сложных настроек
Иногда нужно быстро поделиться файлами между машинами - без nginx, apache и прочих решений. Для этого можно использовать встроенный веб-сервер python:
python3 -m http.server 8000
Он идеально подходит, когда нужно просто раздать файлы по HTTP: перешел в нужную директорию, запустил сервер, скачал - готово.
Но недавно понадобился HTTPS-сервер, так как приложение отказывалось работать по обычному HTTP. Настраивать nginx для этого не хотелось, и, как оказалось, все можно сделать тем же питоном, буквально в несколько строк.
▪️ Генерация самоподписанного сертификата. Создаем файл с ключом и сертификатом:
openssl req -new -x509 -keyout localhost.pem -out localhost.pem -days 365 -nodes
▪️ Минимальный HTTPS-сервер на python. Создаём файл webserver.py:
import http.server, ssl
server_address = ('172.20.0.210', 8000)
httpd = http.server.HTTPServer(server_address, http.server.SimpleHTTPRequestHandler)
httpd.socket = ssl.wrap_socket(
httpd.socket,
server_side=True,
certfile='localhost.pem',
ssl_version=ssl.PROTOCOL_TLSv1_2
)
httpd.serve_forever()
Запуск:
python3 webserver.py
После этого открываем в браузере:
https://172.20.0.210:8000
и видим содержимое директории (или сайт, если там есть index.html).
#python #https
🧑💻 NetworkAdmin4 726
🤠 Быстрый аудит безопасности
Бывает такое, что сервер уже настроен и работает, но не покидает ощущение - вдруг что-то упустил, оставил какую-то уязвимость - незащищенные параметры SSH, лишние службы, слабые настройки sysctl. Чтобы быстро проверить систему, удобно использовать Lynis, инструмент для аудита безопасности и оценки соответствия стандартам.
Lynis - это утилита с открытым исходным кодом, которая выполняет анализ конфигурации linux и unix подобных систем и выдает рекомендации по усилению безопасности. Она проверяет десятки аспектов системы: настройки ядра и PAM, файрвол и службы, права на файлы, SSH, cron, логирование, пакеты и обновления.▪️ Установка
apt install lynis #debian или ubuntu
yum install lynis #CentOS
▪️Проверка системы. Запустить аудит можно буквально одной командой:
lynis audit system
После выполнения вы получите подробный отчет с результатами и рекомендациями.
Файл отчета по умолчанию сохраняется в: /var/log/lynis.log
а краткий отчет в: /var/log/lynis-report.dat
▪️ Расшифровка результатов
В конце проверки Lynis показывает оценку безопасности - чем она выше, тем лучше.
Также будут даны рекомендации, например:
[WARNING] SSH root login is enabled
[SUGGESTION] Install a firewall management tool (ufw/firewalld)
Просто проходите по списку и исправляйте. После доработок можно снова запустить аудит и посмотреть, насколько улучшился индекс.
Официальный сайт 📌
#linux #security
🧑💻 NetworkAdmin
اکنون در دسترس! پژوهش تلگرام ۲۰۲۵ — مهمترین بینشهای سال 
