Настройки Iptables для сервера
Re: Настройки Iptables для сервера
В этом нет необходимостинужны ли вообще правила:
- Exim mail server
- Dovecot IMAP and POP3 server
- MySQL database server
Re: Настройки Iptables для сервера
Понял, спасибо.
А для DNS как прописать?
А для DNS как прописать?
Re: Настройки Iptables для сервера
Это тоже не нужно.
Самое главное чтобы к вам не ломились по 21 и 22 портам.
Самое главное чтобы к вам не ломились по 21 и 22 портам.
Re: Настройки Iptables для сервера
Просто когда я запускаю Iptables с правилами что уже писал чуть раньше, домены/сайты становятся недоступны.
А днс у меня свои через сервер идут, вот я и подумал что в них проблема... Или другая ошибка в правилах у меня.
А днс у меня свои через сервер идут, вот я и подумал что в них проблема... Или другая ошибка в правилах у меня.
Re: Настройки Iptables для сервера
Укажите пожалуйста ещё раз точные правила, которые вы добавляете в iptables
Re: Настройки Iptables для сервера
Code: Select all
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [16807:31509796]
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -s 00.00.00.00 -m comment --comment "Exception text 1" -j ACCEPT
-A INPUT -p tcp -m tcp --dport 21 -m state --state NEW -m recent --rcheck --seconds 6000 --name BLOCK --rsource -j DROP
-A INPUT -p tcp -m tcp --dport 21 -m state --state NEW -m hashlimit --hashlimit-above 2/min --hashlimit-burst 2 --hashlimit-mode srcip --hashlimit-name BLOCK -m recent --set --name BLOCK --rsource -j DROP
-A INPUT -p tcp -m tcp --dport 22 -m state --state NEW -m recent --rcheck --seconds 6000 --name BLOCK --rsource -j DROP
-A INPUT -p tcp -m tcp --dport 22 -m state --state NEW -m hashlimit --hashlimit-above 2/min --hashlimit-burst 2 --hashlimit-mode srcip --hashlimit-name BLOCK -m recent --set --name BLOCK --rsource -j DROP
-A INPUT -p tcp -m tcp --dport 22 --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -m state --state NEW -m limit --limit 600/min --limit-burst 100 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -m state --state NEW -m limit --limit 600/min --limit-burst 100 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 8083 -m state --state NEW -m recent --rcheck --seconds 600 --name BLOCK --rsource -j DROP
-A INPUT -p tcp -m tcp --dport 8083 -m state --state NEW -m hashlimit --hashlimit-above 5/min --hashlimit-burst 5 --hashlimit-mode srcip --hashlimit-name BLOCK -m recent --set --name BLOCK --rsource -j DROP
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 1/sec -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j DROP
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK RST -m limit --limit 1/sec -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK RST -j DROP
-A INPUT -p icmp -m icmp --icmp-type 8 -m limit --limit 1/sec -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j DROP
-A INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT
Re: Настройки Iptables для сервера
Добрый день, судя по этим правилам
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 1/sec -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j DROP
почтовые соединения pop3,imap,smtp будут приниматься только раз в секунду, не чаще.
Правило --limit 600/min начнет отбрасывать новые соединения на вэб сервис, если начнется совсем небольшая ddos атака. Может стоит забуматься о hashlimit, который умеет ограничивать соединения по адресу отправителя? Вот пример:
-A INPUT -m tcp -p tcp --dport 80 -m hashlimit --hashlimit-upto 400/min --hashlimit-burst 500 --hashlimit-mode srcip --hashlimit-name ratelimit -j ACCEPT
Ниже приведу простой минимальный конфиг файервола:
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport ftp -m comment --comment "FTP" -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport ssh -m comment --comment "SSH" -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport http -m comment --comment "HTTP" -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport https -m comment --comment "HTTPS" -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8083 -m comment --comment "Vesta" -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp -m multiport --dports pop3,pop3s,imap,imaps -m comment --comment "Dovecot" -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp -m multiport --dports smtp,smtps,submission -m comment --comment "Exim" -j ACCEPT
-A INPUT -j DROP
-A FORWARD -j DROP
COMMIT
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 1/sec -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j DROP
почтовые соединения pop3,imap,smtp будут приниматься только раз в секунду, не чаще.
Правило --limit 600/min начнет отбрасывать новые соединения на вэб сервис, если начнется совсем небольшая ddos атака. Может стоит забуматься о hashlimit, который умеет ограничивать соединения по адресу отправителя? Вот пример:
-A INPUT -m tcp -p tcp --dport 80 -m hashlimit --hashlimit-upto 400/min --hashlimit-burst 500 --hashlimit-mode srcip --hashlimit-name ratelimit -j ACCEPT
Ниже приведу простой минимальный конфиг файервола:
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport ftp -m comment --comment "FTP" -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport ssh -m comment --comment "SSH" -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport http -m comment --comment "HTTP" -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport https -m comment --comment "HTTPS" -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8083 -m comment --comment "Vesta" -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp -m multiport --dports pop3,pop3s,imap,imaps -m comment --comment "Dovecot" -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp -m multiport --dports smtp,smtps,submission -m comment --comment "Exim" -j ACCEPT
-A INPUT -j DROP
-A FORWARD -j DROP
COMMIT
Last edited by Deeryo on Thu Mar 06, 2014 10:51 am, edited 1 time in total.
Re: Настройки Iptables для сервера
В некоторых случаях разумно открывать доступ к ssh и адмике только с определенных ip адресов, а с остальных блокировать. Судя по последним новостям про вирус Ebury, стоит только зайти на свой сервер с зараженного сервера, как пароль будет украден.
В моем случае я также ограничиваю UDP пакеты на OUTPUT, оставляя только пакеты на провайдерский dns и ntp сервер. Это помогает бороться в исходящим наружу флудом , который иногда создают вирусы, поразивщие сайты на Wormpress, Foomla и т.д. Такой флуд - это атаки на жертвы в сети. Кроме того известно, что вирус Ebury пересылает украденные пароли по протоколу udp на порт 53.
Еще один очень важный момент, который используется на Cpanel, позволяет ограничить исходящий спам с сервера и контролировать, кто из клиентов на сервере шлет этот спам. В файервол добавляются правила, которые перенаправляют весь исходящий smtp трафик на локальный smtp exim. Любой smtp трафик шлется exim-ом и логируется, а также ограничивается по частоте писем в час, ограничивая количество высланного наружу спама. Всё это защищает сервер от попадания в черный списки спама. Ниже приведу правила iptables для перенаправления smtp трафика:
*nat
:PREROUTING ACCEPT [1:48]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A OUTPUT -p tcp -m multiport --dports 25,465,587 -m owner --gid-owner mailman -j RETURN
-A OUTPUT -p tcp -m multiport --dports 25,465,587 -m owner --gid-owner mail -j RETURN
-A OUTPUT -d 127.0.0.1/32 -p tcp -m multiport --dports 25,465,587 -m owner --uid-owner cpanel -j RETURN
-A OUTPUT -p tcp -m multiport --dports 25,465,587 -m owner --uid-owner root -j RETURN
-A OUTPUT -p tcp -m multiport --dports 25,465,587 -j REDIRECT
COMMIT
В моем случае я также ограничиваю UDP пакеты на OUTPUT, оставляя только пакеты на провайдерский dns и ntp сервер. Это помогает бороться в исходящим наружу флудом , который иногда создают вирусы, поразивщие сайты на Wormpress, Foomla и т.д. Такой флуд - это атаки на жертвы в сети. Кроме того известно, что вирус Ebury пересылает украденные пароли по протоколу udp на порт 53.
Еще один очень важный момент, который используется на Cpanel, позволяет ограничить исходящий спам с сервера и контролировать, кто из клиентов на сервере шлет этот спам. В файервол добавляются правила, которые перенаправляют весь исходящий smtp трафик на локальный smtp exim. Любой smtp трафик шлется exim-ом и логируется, а также ограничивается по частоте писем в час, ограничивая количество высланного наружу спама. Всё это защищает сервер от попадания в черный списки спама. Ниже приведу правила iptables для перенаправления smtp трафика:
*nat
:PREROUTING ACCEPT [1:48]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A OUTPUT -p tcp -m multiport --dports 25,465,587 -m owner --gid-owner mailman -j RETURN
-A OUTPUT -p tcp -m multiport --dports 25,465,587 -m owner --gid-owner mail -j RETURN
-A OUTPUT -d 127.0.0.1/32 -p tcp -m multiport --dports 25,465,587 -m owner --uid-owner cpanel -j RETURN
-A OUTPUT -p tcp -m multiport --dports 25,465,587 -m owner --uid-owner root -j RETURN
-A OUTPUT -p tcp -m multiport --dports 25,465,587 -j REDIRECT
COMMIT
Re: Настройки Iptables для сервера
1. зачем нам больше коннектов с одного ip на порты сервера? - sync flood однако --> обработка запросов службой --> увеличение потребления памяти службой --> свал сервера в swap(если он есть) --> потеря контроля над сервером
2. правило не отбрасывает соединения, а лишь тормозит их... по вашему примеру... они будут блокироваться почти на 10 минут + при действительно ddos атаке получится stack owerflow(не увеличить системные лимиты ip стека), а тогда поможет только reset
3. в ваших простых правилах вообще нет ограничений....т.о. весь траф пойдет на службы.... так и так заваливая их
2. правило не отбрасывает соединения, а лишь тормозит их... по вашему примеру... они будут блокироваться почти на 10 минут + при действительно ddos атаке получится stack owerflow(не увеличить системные лимиты ip стека), а тогда поможет только reset
3. в ваших простых правилах вообще нет ограничений....т.о. весь траф пойдет на службы.... так и так заваливая их
Re: Настройки Iptables для сервера
Ebury не имеет ничего нового...
pinch он и в Африке pinch...
1. не конектится по паролю к серверам.
2. не использовать пародии на OS от микровософта.
3. защищать серверы на входе в dmz программно-аппаратными комплексами - Cisco, Juniper, Huawei, 3Com, linux+snort
и будет счастье...
pinch он и в Африке pinch...
1. не конектится по паролю к серверам.
2. не использовать пародии на OS от микровософта.
3. защищать серверы на входе в dmz программно-аппаратными комплексами - Cisco, Juniper, Huawei, 3Com, linux+snort
и будет счастье...