Myślę, że prawie mam ukończoną konfigurację iptables w moim systemie CentOS 5.3. Oto mój skrypt ...
# Establish a clean slate
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -F # Flush all rules
iptables -X # Delete all chains
# Disable routing. Drop packets if they reach the end of the chain.
iptables -P FORWARD DROP
# Drop all packets with a bad state
iptables -A INPUT -m state --state INVALID -j DROP
# Accept any packets that have something to do with ones we've sent on outbound
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# Accept any packets coming or going on localhost (this can be very important)
iptables -A INPUT -i lo -j ACCEPT
# Accept ICMP
iptables -A INPUT -p icmp -j ACCEPT
# Allow ssh
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# Allow httpd
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# Allow SSL
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
# Block all other traffic
iptables -A INPUT -j DROP
W kontekście ten komputer jest hostem aplikacji wirtualnego serwera prywatnego.
W poprzednim pytaniu Lee B powiedział, że powinienem „trochę zablokować ICMP”. Dlaczego nie po prostu całkowicie go zablokować? Co by się stało, gdybym to zrobił (co złego by się stało)?
Jeśli muszę nie blokować ICMP, jak mogę bardziej go zablokować?