Назад | Перейти на главную страницу

Можно себе представить более безопасный сценарий iptables. Есть ли такой?

Планирую в ближайшее время купить сервер. Я бы хотел, чтобы сервер был максимально безопасным, только с открытыми POP3, SMTP, SSH и HTTP. Я знаю, как написать сценарий iptables, чтобы разрешать только эти соединения и отключать все остальное, но я не знаю, как предотвратить атаки.

Есть ли какие-либо примеры сценариев, которые обслуживают как можно больше различных атак (блокировать и, возможно, регистрировать)? Скрипт, который остановит DDoS-атаки (SYN-флуд, ICMP-флуд и т. Д.), Сканирование портов, атаки методом грубой силы и т. Д. Все (или как можно ближе к этому)

Безопасность подобна луку, она многослойна. Перечислю вам пару полезных компонентов.

fail2ban помогает блокировать и регистрировать различные виды атак, от атак грубой силы ssh до атак Apache и спамеров.

Mod_security в Apache - это мощное дополнение безопасности для Apache. Он может отклонять запросы с известных IP-адресов, внесенных в черный список, он может обнаруживать попытки SQL-инъекций и многие другие атаки.

Сухосин немного помогает защитить PHP.

SELinux или grsecurity может предоставить вам дополнительную защиту за счет повышения уровня безопасности ОС. С помощью этих структур безопасности уязвимость в некоторых приложениях может ограничить ущерб или даже помешать кому-либо получить root-доступ.

В дополнение к предыдущим предложениям предлагаю вам взглянуть на OSSEC, это довольно хорошая IDS. Он блокирует попытки людей взломать ваш сервер и отправляет вам электронное письмо, когда произошел инцидент. Он также отслеживает хэши определенных файлов, чтобы вы могли видеть, редактировалось ли что-то подозрительное. Я также написал руководство о том, как использовать в мой блог.

Примерно так можно ответить на ваш первый вопрос:

iptables -p INPUT DROP
iptables -p OUTPUT DROP
iptables -p FORWARD DROP

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 110 -j ACCEPT
iptables -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT

iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Если вы также хотите использовать IMAP и их безопасные (SSL / TLS) версии, также добавьте эти правила:

iptables -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -p tcp --dport 143 -j ACCEPT
iptables -A INPUT -p tcp --dport 993 -j ACCEPT
iptables -A INPUT -p tcp --dport 995 -j ACCEPT
iptables -A INPUT -p tcp --dport 465 -j ACCEPT

Начни где-нибудь вот так http://wiki.centos.org/HowTos/OS_Protection и закончить где-то вот так https://help.ubuntu.com/community/Security