Повышение безопасности VPS на Ubuntu и Debian: практическая памятка
Эта памятка содержит минимальный набор шагов для улучшения безопасности вашего сервера на базе Ubuntu или Debian. Данные рекомендации особенно полезны для VPS, предназначенных для работы VPN.
Основные правила безопасности
Настройки безопасности сервера — не главная защита. Главное — это здравый смысл администратора. Вот базовые правила:
- Не храните пароль личного кабинета сервера в онлайн хранилищах паролей (много случаев сливов паролей) или в TXT файле на рабочем столе. Лучше всего хранить пароль только в своей голове и периодически обновлять его, в крайнем случае заведите бумажный блокнот. Также вы можете воспользоваться хранилищем паролей с открытым исходным кодом KeePassXC или Bitwarden, такой способ тоже относительно безопасен. Если же вы храните пароли в браузере и не хотите менять свои привычки, то обязательно пользуйтесь мастер паролем.
- Используйте сложные пароли с учётом регистра и использованием спецсимволов.
- Максимально усильте защиту Email к которому привязан личный кабинет панели управления сервером.
- Используйте двухфакторную верификацию для Email и личного кабинета администратора сервера. Желательно использовать не смс верификацию, а программы 2FA с использованием токенов по типу Aegis, 2FA, Яндекс ключ и т.д., так как смс могут перехватить злоумышленники с использованием клона вашей сим карты (редкий случай, но так бывает). Я в большинстве случаев использую Aegis
- Не сохраняйте пароли в FTP-клиентах — очень часто вирусы берут информацию из FTP-клиента.
- Никому не передавайте данные основной учетной записи администратора, и если есть необходимость в передаче доступа, создайте для этого новую учетную запись с ограниченными правами. Не забудьте потом удалить временную учетную запись.
Установка SSH-ключа: Безопасная авторизация без паролей
Использование SSH-ключей — это простой и надёжный способ обеспечить безопасность при подключении к серверу. Главное преимущество SSH-ключей перед паролем — это отсутствие необходимости передавать пароль по сети каждый раз при авторизации, что делает доступ к серверу более защищённым.
Генерация SSH-ключей
Чтобы настроить авторизацию по ключу, нужно сгенерировать два файла: секретный (private) и публичный (public) ключи. Вот как это сделать:
-
Введите следующую команду для генерации пары ключей RSA:
ssh-keygen -t rsa -b 2048 -
Программа запросит директорию для сохранения ключей и предложит ввести секретную фразу (passphrase) для дополнительной защиты. Этот пароль можно оставить пустым, но лучше ввести сложную фразу для большей безопасности. Если вы хотите использовать настройки по умолчанию, нажмите Enter — ключи будут сохранены в директорию
~/.ssh.
Просмотр сгенерированных файлов
После генерации ключей перейдите в директорию ~/.ssh, где они были сохранены:
cd ~/.ssh
В этом каталоге вы увидите два файла:
- id_rsa — это ваш секретный ключ, который должен храниться в безопасном месте на локальном компьютере и никогда не передаваться другим.
- id_rsa.pub — это публичный ключ, который нужно перенести на сервер.
Копирование публичного ключа на сервер
Чтобы авторизоваться на сервере по SSH-ключу, перенесите публичный ключ на сервер. Один из удобных способов копирования ключа — использовать программы, поддерживающие SFTP, такие как Filezilla, или другие менеджеры SFTP.
После копирования откройте файл authorized_keys на сервере, чтобы зарегистрировать свой публичный ключ:
-
Скопируйте содержимое
id_rsa.pubв файлauthorized_keys, добавив его в конец файла:cat id_rsa.pub >> ~/.ssh/authorized_keysЭтот файл
authorized_keysдолжен находиться в директории~/.sshна сервере.
Настройка конфигурации OpenSSH для авторизации по ключу
Теперь необходимо внести изменения в конфигурацию OpenSSH на сервере, чтобы включить авторизацию по ключу:
-
Откройте файл конфигурации OpenSSH:
nano /etc/ssh/sshd_config -
Найдите или добавьте следующие строки, чтобы активировать авторизацию по ключу и отключить нежелательные методы:
PubkeyAuthentication yes AuthorizedKeysFile %h/.ssh/authorized_keys RhostsRSAAuthentication no HostbasedAuthentication no PermitEmptyPasswords no -
Чтобы полностью отключить авторизацию по паролю, установите параметр
PasswordAuthenticationвno. Это также выполняется в файлеsshd_config:PasswordAuthentication noПримечание: В Ubuntu 24.04 этот параметр может быть переопределён в отдельном конфигурационном файле
/etc/ssh/sshd_config.d/50-cloud-init.conf. Внесите изменение там, если правкаsshd_configне работает. -
Дополнительно для Ubuntu 24.04 может потребоваться добавить следующее, чтобы гарантировать поддержку алгоритма RSA:
PubkeyAcceptedAlgorithms +ssh-rsa
Настройка прав доступа на файлы ключей
Обеспечьте правильные права доступа к директориям и файлам SSH, чтобы только текущий пользователь мог их читать:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
Перезапуск SSH-сервера
Чтобы применить все изменения, перезапустите SSH-сервер:
systemctl restart ssh
Теперь настройка SSH-авторизации по ключу завершена! Вы можете безопасно подключаться к серверу без пароля, используя только ваш секретный ключ.
Установка и настройка Fail2ban
Для избежания попыток подбора пароля по SSH используйте Fail2ban. После неправильных попыток ввода пароля, Fail2ban будет блокировать IP адрес с которого пытались подобрать пароль. Число возможных попыток ввода пароля и длительность блокировки вы можете определить самостоятельно. Например можно настроить блокировку на час после пяти неудачных попыток ввода пароля в SSH.
Установка Fail2ban в Ubuntu
apt update -y && apt upgrade -y
apt-get install fail2ban
Для запуска службы Fail2ban вводим следующие команды (для справки, т.к. fail2ban должен запуститься автоматически):
systemctl enable fail2ban
systemctl start fail2ban
Для проверки работоспособности службы Fail2ban:
systemctl status fail2ban
Основы настройки Fail2ban: Разбираем конфигурацию и ключевые параметры
Fail2ban — это инструмент, который защищает ваш сервер от атак путем блокировки IP-адресов, которые слишком часто совершают неудачные попытки доступа. Это особенно полезно для защиты SSH, FTP, HTTP и других сервисов. Настройка Fail2ban универсальна и не зависит от конкретного дистрибутива Linux.
Файлы конфигурации Fail2ban
Все конфигурационные файлы Fail2ban находятся в директории /etc/fail2ban. Основной файл конфигурации — jail.conf. Однако его не рекомендуется изменять напрямую: при обновлении Fail2ban этот файл может быть перезаписан, и внесенные изменения будут потеряны.
Для безопасного изменения конфигурации следует использовать дополнительные файлы, расположенные в /etc/fail2ban/jail.d. Они позволяют добавлять и изменять параметры для конкретных сервисов, при этом основные настройки останутся неизменными. Эти файлы используют секции, называемые тюрьмами или изоляторами (jails), — каждое правило отвечает за защиту определенного сервиса, например SSH, HTTP или FTP.
Пример простого включения защиты для SSH:
[sshd]
enabled = true
Основные параметры настройки Fail2ban
При настройке Fail2ban важны следующие параметры, которые можно задать для каждого изолята в конфигурационном файле:
-
ignoreip— список IP-адресов, которые никогда не должны блокироваться Fail2ban, вне зависимости от их активности. Это позволяет добавить свой IP-адрес, чтобы избежать случайной блокировки. Можно также указать подсеть или DNS-имя.ignoreip = 192.168.1.1 10.0.0.0/24 mytrustedhost.com -
bantime— продолжительность блокировки IP-адреса в секундах. Как только это время истечет, адрес автоматически будет удален из списка заблокированных.bantime = 3600 # Заблокировать на 1 час -
maxretry— количество неудачных попыток доступа перед блокировкой. Этот параметр определяет, сколько раз пользователь может неправильно ввести пароль или совершить другие подозрительные действия, прежде чем IP будет заблокирован.maxretry = 3 -
port— указывает, на каком порту или портах работает защищаемый сервис. Можно указать один или несколько портов.port = ssh -
filter— имя фильтра, который Fail2ban будет использовать для обнаружения подозрительных действий. Каждый фильтр ищет определенные шаблоны в лог-файлах. Например, для SSH используется фильтрsshd, который располагается в/etc/fail2ban/filter.d/sshd.conf.filter = sshd -
logpath— путь к файлу журнала, где Fail2ban будет отслеживать события. Обычно для SSH это/var/log/auth.log.logpath = /var/log/auth.log -
action— действия, которые выполняются, когда Fail2ban обнаруживает активность, соответствующую критериям поиска. Например, действие может включать блокировку IP с использованием iptables.action = %(action_)s
Порядок чтения файлов конфигурации Fail2ban
Fail2ban читает конфигурационные файлы в определенном порядке. Файлы .local имеют приоритет над .conf, что позволяет легко переопределить настройки без изменений в исходных файлах. Порядок чтения файлов:
/etc/fail2ban/jail.conf— базовые настройки, заданные по умолчанию./etc/fail2ban/jail.d/*.conf— настройки, добавленные администратором для дополнительных сервисов./etc/fail2ban/jail.local— пользовательские настройки./etc/fail2ban/jail.d/*.local— настройки администратора, которые имеют наивысший приоритет.
Дополнительные файлы конфигурации Fail2ban
Помимо jail.conf, Fail2ban использует и другие файлы для управления и настройки:
action.d/*.*— определяет, какие действия будут выполняться при обнаружении подозрительной активности.fail2ban.conf— основной конфигурационный файл для общих настроек.fail2ban.d/*.*— пользовательские настройки для Fail2ban.filter.d/*.*— шаблоны для поиска подозрительных действий в логах.paths-arch.conf,paths-common.conf,paths-debian.conf,paths-opensuse.conf— файлы для определения путей в зависимости от операционной системы.
Используя эти файлы и параметры, можно детально настроить защиту для различных сервисов, минимизируя риск взлома и повысив безопасность вашего сервера.
Настройка Fail2ban для SSH
SSH изолятор работает в Fail2Ban по умолчанию сразу после установки сервиса. Но если Вам необходимо внести изменения в его работу, необходимо создать новый jail файл. Для этого мы будем использовать редактор nano:
nano /etc/fail2ban/jail.d/ssh.conf
Добавляем в созданный файл следующие строки:
[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
findtime = 300
backend = systemd
sshd — название для правила;
enabled позволяет быстро включать (true) или отключать (false) правило;
port — порт целевого сервиса. Принимается буквенное или цифирное обозначение;
filter — фильтр (критерий поиска), который будет использоваться для поиска подозрительных действий. По сути, это имя файла из каталога /etc/fail2ban/filter.d без .conf на конце;
logpath — расположение лог-файла, в котором фильтр будет искать подозрительную активность на основе описанных критериев.
maxretry — количество действий, которые разрешено совершить до бана.
findtime — время в секундах, в течение которого учитывается maxretry;
Чтобы изменения вступили в силу, перезапускаем сервис:
systemctl restart fail2ban
Указанная нами конфигурация будет блокировать IP адреса после 3-х проваленных попыток логина на Ваш сервер через SSH. Блокировка действует 300 секунд, а все подозрительные действия будут записываться в файл журнала /var/log/auth.log.
Вы можете изменить параметры под Ваши нужды.
Изменение стандартного порта для SSH-подключения в Ubuntu и Debian
По умолчанию SSH-сервер принимает входящие подключения на TCP-порт 22. Этот порт хорошо известен, и злоумышленники часто атакуют его, пытаясь подобрать пароли (bruteforce). Изменение порта снижает риск таких атак, делая ваш сервер менее заметным для автоматизированных сканеров.
Как изменить SSH-порт
-
Подключение к серверу
Подключитесь к серверу через SSH, используя, например, PuTTY (на Windows) или стандартные SSH-команды на macOS и Linux. -
Установите необходимые утилиты
Убедитесь, что на вашем сервере установленыnet-toolsдля проверки доступных портов:sudo apt install net-tools -
Проверьте занятые порты
Узнайте, какие порты уже используются на сервере, чтобы выбрать свободный для SSH:sudo ss -tuln | grep LISTEN -
Изменение порта в конфигурации SSH
Для большинства версий Ubuntu и Debian откройте файлsshd_configи внесите изменения:sudo nano /etc/ssh/sshd_configНайдите строку
#Port 22, уберите#и замените22на выбранный вами порт, например:Port 2222Сохраните файл и перезапустите SSH:
sudo systemctl restart ssh -
Настройка брандмауэра
Убедитесь, что новый порт открыт в брандмауэре (если используется UFW):sudo ufw allow 2222/tcpЕсли используется
iptables, добавьте правило для нового порта:sudo iptables -I INPUT -p tcp --dport 2222 -j ACCEPT -
Проверка подключения
Теперь SSH-сервер будет принимать подключения на новом порту. Подключитесь по новому порту, чтобы проверить доступ, и завершите настройку.
Дополнительные шаги для Ubuntu 24.04
В Ubuntu 24.04 настройка порта требует изменений в двух местах: в основном файле sshd_config и в файле конфигурации сокета SSH.
-
Изменение порта в
sshd_config
Откройте основной файл конфигурации:sudo nano /etc/ssh/sshd_configНайдите строку
#Port 22, уберите#и укажите новый порт, например:Port 2222 -
Изменение порта в файле сокета
Откройте файл конфигурации сокета SSH:sudo nano /lib/systemd/system/ssh.socketНайдите параметр
ListenStream=22и замените его на ваш новый порт:ListenStream=2222 -
Сохранение и перезапуск
Сохраните изменения и выполните перезагрузку:sudo systemctl daemon-reload sudo systemctl restart ssh.socket sudo systemctl restart ssh
Для Ubuntu 24.04 выполнять настройки брандмауэра тоже обязательно!
Подключение к серверу через новый порт
Теперь для подключения к серверу по SSH используйте указанный порт. Например, для подключения через терминал можно указать порт с помощью флага -p:
ssh -p 2222 username@server_ip
Важно: Не забудьте записать новый порт и обновить настройки брандмауэра, чтобы не потерять доступ к серверу.
Скрипт автоматизации:
Для всех кто прочитал до этого пункта, бонус.
Скрипт автоматизации для смены порта SSH:
bash <(wget -qO- https://dignezzz.github.io/server/ssh-port.sh)
После запуска скрипта будет предложено ввести новый порт, и скрипт сам все поменяет. И даже добавит в UFW/iptables соответствующую запись.
Настройка правил брандмауэра UFW для защиты сервера
Использование Uncomplicated Firewall (UFW) — удобный способ настроить защиту сервера. UFW — это надстройка над iptables, которая значительно упрощает управление правилами брандмауэра.
Основные команды и настройки UFW для защиты сервера
Uncomplicated Firewall (UFW) – удобный инструмент для управления брандмауэром на Ubuntu и Debian. Он позволяет легко настраивать и контролировать доступ к вашему серверу, обеспечивая защиту от несанкционированного доступа. Вот основные команды и пояснения для работы с UFW.
Установка UFW
Если UFW еще не установлен, его можно установить с помощью следующей команды:
sudo apt install ufw
Включение и отключение UFW
Перед активацией UFW важно настроить правила для доступа, особенно если сервер подключен через SSH. Включить UFW можно следующей командой:
sudo ufw enable
Чтобы временно отключить UFW (например, для тестирования), используйте команду:
sudo ufw disable
Внимание: Отключение UFW временно убирает все ограничения, поэтому убедитесь, что вы знаете, зачем это делаете.
Проверка текущего состояния и правил UFW
Для проверки статуса UFW и всех активных правил используйте команду:
sudo ufw status verbose
Эта команда покажет, какие порты разрешены или заблокированы, и другие настройки.
Настройка базовых правил
UFW позволяет задать базовые правила для входящего и исходящего трафика. Рекомендуется запретить все входящие соединения, кроме тех, которые вы явно разрешите, и разрешить все исходящие соединения:
sudo ufw default deny incoming
sudo ufw default allow outgoing
Разрешение и блокировка портов
Чтобы открыть порт для определенного сервиса, например, для SSH, можно использовать команду:
sudo ufw allow 22/tcp
Примечание: Если вы изменили порт SSH, укажите нужный номер вместо
22. Например,sudo ufw allow 2222/tcp.
Для веб-сервера вам могут понадобиться следующие команды для разрешения HTTP и HTTPS:
sudo ufw allow 80/tcp # Открытие порта для HTTP
sudo ufw allow 443/tcp # Открытие порта для HTTPS
Чтобы заблокировать доступ к порту, используйте:
sudo ufw deny 25/tcp
Это, например, заблокирует порт 25, который обычно используется для почтовых сервисов (SMTP).
Разрешение доступа по IP-адресу
Иногда требуется разрешить доступ к серверу только с определенного IP-адреса. Для этого можно использовать следующую команду:
sudo ufw allow from 192.168.1.100
Это разрешит подключение с IP 192.168.1.100 ко всем сервисам. Вы также можете указать конкретный порт, добавив to any port 22 в команду:
sudo ufw allow from 192.168.1.100 to any port 22
Удаление правил
Чтобы удалить ранее установленное правило, используйте ту же команду с флагом delete. Например, для удаления правила доступа к порту 22:
sudo ufw delete allow 22/tcp
Лимитирование подключений
Для предотвращения атак brute-force на определенные сервисы, UFW позволяет ограничить количество подключений. Например, для ограничения подключений к SSH можно использовать следующую команду:
sudo ufw limit 22/tcp
Эта команда разрешает до 6 попыток подключения за 30 секунд с одного IP-адреса. Если лимит превышен, IP временно блокируется.
Перезапуск UFW
Если вы хотите перезапустить UFW и применить все новые правила, используйте:
sudo ufw reload
Сброс настроек UFW
Если вам нужно сбросить все настройки UFW и начать настройку заново, выполните:
sudo ufw reset
Важно: Эта команда удаляет все текущие правила, поэтому используйте ее осторожно.
Теперь UFW настроен и активен, блокируя все ненужные входящие соединения и открывая только необходимые порты.
Усиленная версия защиты и безопасности - SSH-Audit
Давно существует такой сайт: https://www.ssh-audit.com/
Что он позволяет делать?
- Он позволяет протестировать безопасность вашего SSH соединения на основе выработанной жесткой политики безопасности.
- На сайте вы найдете все самые необходимые и важные пункты для настройки вашего сервера.
Полный набор команд для безопасности вы найдете на этой странице: SSH Hardening Guides
Рассмотрим пример, для Ubuntu 24.04:
1. Повторная генерация RSA и ED25519 ключей
-
Удаляем существующие ключи SSH:
rm /etc/ssh/ssh_host_*Описание: Эта команда удаляет все существующие ключи SSH в
/etc/ssh/, чтобы обеспечить чистый процесс генерации новых ключей. -
Генерируем новый RSA ключ:
ssh-keygen -t rsa -b 4096 -f /etc/ssh/ssh_host_rsa_key -N ""Описание: Создает новый RSA ключ с длиной 4096 бит, который будет храниться по пути
/etc/ssh/ssh_host_rsa_key. Параметр-N ""устанавливает пустую парольную фразу. -
Генерируем новый ED25519 ключ:
ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key -N ""Описание: Создает новый ключ ED25519, хранящийся в
/etc/ssh/ssh_host_ed25519_key. ED25519 ключи обеспечивают более быструю и безопасную альтернативу RSA.
2. Удаление малых модулей Диффи-Хеллмана
Малые модули Диффи-Хеллмана — это наборы чисел, используемые для безопасного обмена ключами в алгоритме Диффи-Хеллмана, которые имеют недостаточную длину и, следовательно, недостаточный уровень безопасности.
Что такое модуль Диффи-Хеллмана?
Диффи-Хеллман (DH) — это метод безопасного обмена криптографическими ключами, который позволяет двум сторонам установить общий секретный ключ даже при передаче данных через незащищенное соединение. В основе этого метода лежит сложная математическая операция — вычисление модуля (остатка от деления) от очень больших чисел, известных как модули Диффи-Хеллмана. Эти модули представляют собой простые числа, необходимые для выполнения алгоритма.
Почему малые модули небезопасны?
Чем больше размер модуля, тем сложнее его взломать. Малые модули (например, с длиной менее 3072 бит) считаются небезопасными, потому что с увеличением вычислительных мощностей они становятся уязвимыми для атак. Малый модуль может позволить злоумышленникам быстрее подобрать ключ, что делает соединение уязвимым для взлома и позволяет получить доступ к передаваемым данным.
Как это влияет на безопасность?
Если используются малые модули, это повышает риск взлома. Поэтому, при настройке SSH-соединения, рекомендуется отфильтровать и удалить модули, длина которых меньше, чем 3072 бита, чтобы снизить вероятность атаки и повысить общую безопасность соединения.
В контексте команды
awk '$5 >= 3071' /etc/ssh/moduli > /etc/ssh/moduli.safe
Описание: Эта команда использует awk, чтобы отфильтровать и сохранить модули Диффи-Хеллмана с размером не менее 3071 бита в файл /etc/ssh/moduli.safe. Маленькие модули считаются уязвимыми.
mv /etc/ssh/moduli.safe /etc/ssh/moduli
Описание: Перемещает отфильтрованные и безопасные модули обратно в файл /etc/ssh/moduli.
3. Включение RSA и ED25519 ключей
- Включаем директивы HostKey для RSA и ED25519:
Описание: Используетsed -i 's/^\#HostKey \/etc\/ssh\/ssh_host_\(rsa\|ed25519\)_key$/HostKey \/etc\/ssh\/ssh_host_\1_key/g' /etc/ssh/sshd_configsedдля редактирования файла конфигурации SSH, раскомментируя строки, связанные с HostKey для RSA и ED25519 ключей, чтобы OpenSSH знал, какие ключи использовать.
4. Ограничение поддерживаемых алгоритмов
- Добавляем строгие ограничения для алгоритмов обмена ключами, шифрования и MAC:
Описание: Создает новый файлecho -e "\n# Restrict key exchange, cipher, and MAC algorithms, as per sshaudit.com\n# hardening guide.\nKexAlgorithms curve25519-sha256,curve25519-sha256@libssh.org,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group-exchange-sha256\nCiphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr\nMACs hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,umac-128-etm@openssh.com\nHostKeyAlgorithms ssh-ed25519,ssh-ed25519-cert-v01@openssh.com,sk-ssh-ed25519@openssh.com,sk-ssh-ed25519-cert-v01@openssh.com,rsa-sha2-256,rsa-sha2-512,rsa-sha2-256-cert-v01@openssh.com,rsa-sha2-512-cert-v01@openssh.com" > /etc/ssh/sshd_config.d/ssh-audit_hardening.conf/etc/ssh/sshd_config.d/ssh-audit_hardening.conf, который добавляет ограничения на поддерживаемые алгоритмы обмена ключами, шифрования и MAC для повышения безопасности. Эти настройки соответствуют рекомендациям по безопасности SSH.
5. Перезапуск SSH сервера
- Перезапускаем службу OpenSSH:
Описание: Перезапускает SSH сервер для применения всех сделанных изменений.service ssh restart
6. Внедрение ограничения на частоту соединений
-
Включаем ограничение на частоту подключений с помощью iptables для IPv4:
iptables -I INPUT -p tcp --dport 22 -m state --state NEW -m recent --set iptables -I INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 10 --hitcount 10 -j DROPОписание: Эти команды настраивают iptables для ограничения входящих подключений на порт 22 (SSH), позволяя только 10 новых соединений за 10 секунд от одного источника. Это предотвращает атаки DDoS на SSH сервер.
-
Включаем то же ограничение для IPv6:
ip6tables -I INPUT -p tcp --dport 22 -m state --state NEW -m recent --set ip6tables -I INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 10 --hitcount 10 -j DROPОписание: Аналогичная настройка для IPv6, обеспечивающая такую же защиту.
7. Обеспечение сохранения правил iptables после перезагрузки
-
Устанавливаем пакеты
netfilter-persistentиiptables-persistent:DEBIAN_FRONTEND=noninteractive apt install -q -y netfilter-persistent iptables-persistentОписание: Устанавливает утилиты для сохранения и восстановления правил iptables при перезагрузке системы.
-
Сохраняем правила iptables:
service netfilter-persistent saveОписание: Сохраняет текущие правила iptables, чтобы они автоматически применялись после перезагрузки.
Итого
Выполнение команд представленных на странице SSH Hardening Guides рекомендуется ко всем продуктивным серверам. Не бойтесь, ничего не сломается.
Вывод
Следуя этим рекомендациям, вы значительно повысите безопасность вашего VPS. Эти шаги защитят сервер от большинства атак и помогут поддерживать безопасность на высоком уровне.