?

Log in

No account? Create an account

Previous Entry Share Next Entry
iptables + Debian
Linux
sanmai
Настраиваем iptables в Debian, выжимка из этого документа.
# cat > /etc/iptables.up.rules
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -d 127.0.0.0/8 ! -i lo -j DROP
-A INPUT -p tcp -m tcp --dport www -j ACCEPT
-A INPUT -p tcp -m tcp --dport https -j ACCEPT
-A INPUT -p tcp -m tcp --dport ssh -j ACCEPT
-A INPUT -p udp -m udp --dport ssh -j ACCEPT
-A INPUT -p tcp -m tcp --dport domain -j ACCEPT
-A INPUT -p udp -m udp --dport domain -j ACCEPT
-A INPUT -p tcp -m tcp --dport ftp-data -j ACCEPT
-A INPUT -p tcp -m tcp --dport ftp -j ACCEPT
-A INPUT -p tcp -m tcp --dport smtp -m state --state NEW -m recent --update --seconds 10 --hitcount 1 --name DEFAULT --rsource -j REJECT --reject-with tcp-reset 
-A INPUT -p tcp -m tcp --dport smtp -m state --state NEW -m recent --set --name DEFAULT --rsource 
-A INPUT -p tcp -m tcp --dport smtp -j ACCEPT
-A INPUT -p tcp -m tcp --dport pop3 -j ACCEPT
-A INPUT -p tcp -m tcp --dport submission -j ACCEPT
-A INPUT -p tcp -m tcp --dport ssmtp -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -m limit --limit 1/sec -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -m owner ! --uid-owner postfix -m multiport --dports 25,465 -j DROP
-A OUTPUT -p udp -m owner ! --uid-owner postfix -m multiport --dports 25,465 -j DROP
COMMIT
Перед тем как идти дальше, правила следует проверить и, если каких-то модулей на конкретном сервере/VPS нет, исправить:
# /sbin/iptables-restore < /etc/iptables.up.rules
Проверку следует считать успешной если на сервер удается зайти по SSH после применения правил.
# mkdir -p /etc/network/if-pre-up.d/     
# cat > /etc/network/if-pre-up.d/iptables
#!/bin/sh
/sbin/iptables-restore < /etc/iptables.up.rules

^D
# chmod +x /etc/network/if-pre-up.d/iptables
# /etc/network/if-pre-up.d/iptables