Как сделать безопасный сервер Linux с брандмауэром

627
Nullpointer

Я установил ufwбрандмауэр на Linux сервере и разрешить необходимые порты с помощью UFW, но есть ли другие правила должны сделать безопасный сервер, как DOS, Syncили любым другие (я не имею ни малейшего представления об этом), или всех необходимых безопасных правилах предопределенных в UFW ? Как предотвратить любую атаку и должен ли какой-либо сайт проверять уровень безопасности моего сервера?

Пожалуйста, дайте мне предложение сделать безопасный сервер Linux.

1

1 ответ на вопрос

2
vera

Я не знаю базовую конфигурацию ufw, однако, поскольку вы упомянули о разрешении портов, вот несколько соображений:

  • блокировка портов для входящего трафика не означает повышения безопасности. Я имею в виду, что если вы блокируете порт, который не открыт (т. Е. Ни один сервис не прослушивает этот порт), то это в основном безопасность по незаметности;
  • блокировка портов для исходящего трафика может иногда блокировать. Вы не можете заблокировать порты> 1024, так как вы заблокируете все исходящие соединения, инициированные вашим сервером (ssh-клиент, http-клиент, DNS-запросы с вашего сервера, ...);
  • Затем вы можете заблокировать трафик, инициируемый вашим сервером через порты <1024 (например, трафик TCP с флагом SYN, исходный IP которого является вашим сервером), чтобы не дать злоумышленнику, который уже имеет доступ к вашему серверу, обмениваться данными с вашего сервера. Но это было бы не очень полезно, поскольку (как видно из предыдущего пункта) исходящая связь может осуществляться через более широкий диапазон портов.

Но на самом деле вы можете уменьшить поверхность атаки:

  • ограничить минимальное количество служб, которые работает на вашем сервере (даже если он не является общедоступным). Например, закройте ваш http-сервер (nginx, apache, ..), если вы его не используете;
  • избегать установки неустановленного программного обеспечения;
  • всегда обновлять программное обеспечение (и любые компоненты, например, ядро ​​WordPress и плагины)
  • безопасный ssh ​​(посмотрите на https://www.debian.org/doc/manuals/securing-debian-howto/ch-sec-services.fr.html )
    • используйте ключи ssh вместо паролей. Вы также можете настроить 2FA
    • пользователи из белого списка, которым предоставлен доступ к вашему серверу
  • вы можете настроить стук портов на слушающих портах (например, ssh)
  • Вы можете использовать другие инструменты, чтобы помочь вам повысить безопасность (fail2ban, ...)

Сообщество может дать вам много других советов, но не забывайте, что безопасность - это не одноразовое действие, а безопасность - это постоянное действие (обновления, мониторинг журналов, ...).