IPTABLES: блокировка самых распространенных атак
Прошлые посты мы посвятили лимитированию количества параллельных соединений к серверу для одного IP и ограничению доступа по SSH. Теперь же пришло время разобраться, как защитить свой VPS от различных атак.
Зачастую хостеры отдают в распоряжение пользователей не настроенные серверы. Тем не менее, не будет лишним сбросить все правила фаервола при помощи следующей команды:
iptables -F |
Кроме того, существует несколько простых команды, которые способны “отразить” некоторые виды атак. Во-первых, заблокируйте нулевые пакеты:
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP |
Данная мера необходима для того, чтобы фаервол не принимал входящие пакеты с tcp-флагами. По большому счету нулевые пакеты используются для выяснения настроек сервера и выявления его уязвимостей.
Команда для отражения атак syn-flood:
iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP |
В ходе атаки syn-flood создается новое соединение без каких-либо флагов (SYN, ACK и пр.). Делается это лишь с одной целью 一 отнять ресурсы сервера.
Команда для защиты от разведывательных пакетов XMAS:
iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP |
Для того, чтобы правила были доступны и после перезагрузки IPTABLES или httpd, выполните следующую команду:
service iptables save |