Gdzieś znalazłem taką regółkę iptables, ale po włączeniu firewalla nie jestem w stanie ściągnąć poczty przez outlooka z serwera. Co poprawić? Serwer poczty z SSL, TLS
Kod: Zaznacz cały
### BEGIN INIT INFO
# Provides: firewall
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start firewall daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO
IPTABLES="/sbin/iptables"
MODPROBE="/sbin/modprobe"
# Ladujemy mozliwosc sledzenia polaczen (potrzebne dla ftp etc.)
$MODPROBE ip_conntrack # sledzienie polaczen -> cat /proc/net/ip_conntrack
#$MODPROBE ip_conntrack_ftp# odhashowac aby miec aktywne ftp
# interface
LAN="eth0"
INT_NET="adres IP serwera pocztowego"
# adresy IP z dostępem do SSH, podajemy oddzielone spacjami
ADM="adres ip zewnętrzy mojego nootebooka"
# odblokowane porty INPUT
# podawac po przecinku np. "21,22,123"
# 80 - WWW
# 21 - FTP
I_TCP="25,110,465,587,995"
I_UDP="25,110,465,587,995"
# Porty wychodzace z serwera OUTPUT
# 123 - NTP
O_TCP="25,110,465,587,995"
O_UDP="25,110,465,587,995"
case "$1" in
start|restart)
echo "Czyszczenie firewall'a..."
#czyszczenie regul
$IPTABLES -F
$IPTABLES -X
echo "Start firewall'a..."
#Odrzucamy domyslnie wszystie pakiety przychodzace
$IPTABLES -P INPUT ACCEPT
$IPTABLES -P FORWARD ACCEPT
$IPTABLES -P OUTPUT ACCEPT
# pozwalamy na ruch na interfejsie lokalnym
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
# akceptujemy polaczenia zainicjowane przez serwer
$IPTABLES -A INPUT -m state --state INVALID -j LOG --log-prefix "DROP_INVALID: " --log-ip-options --log-tcp-options
$IPTABLES -A INPUT -m state --state INVALID -j DROP
$IPTABLES -A INPUT -i $LAN -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT -m state --state INVALID -j LOG --log-prefix "DROP_INVALID: " --log-ip-options --log-tcp-options
$IPTABLES -A OUTPUT -m state --state INVALID -j DROP
$IPTABLES -A OUTPUT -o $LAN -m state --state ESTABLISHED,RELATED -j ACCEPT
### anti-spoofing rules
$IPTABLES -A INPUT -i eth0 ! -s $INT_NET -j LOG --log-prefix "SPOOFED_PKT: "
$IPTABLES -A INPUT -i eth0 ! -s $INT_NET -j DROP
# Ping
$IPTABLES -A INPUT -p icmp --icmp-type echo-request -j LOG --log-prefix "Ping: " --log-ip-options --log-tcp-options
$IPTABLES -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
$IPTABLES -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
# SSH
if [ -n "$ADM" ] ; then
for IP in $ADM ; do
$IPTABLES -A INPUT -i $LAN -s $IP -p tcp --dport 22 --syn -m state --state NEW -j ACCEPT
done
fi
# Porty wychodzšce
if [ -n "$O_TCP" ] ; then
$IPTABLES -A OUTPUT -o $LAN -m multiport -p tcp --dports $O_TCP --syn -m state --state NEW -j ACCEPT
fi
if [ -n "$O_UDP" ] ; then
$IPTABLES -A OUTPUT -o $LAN -m multiport -p udp --dports $O_UDP -m state --state NEW -j ACCEPT
fi
# odblokwanie portow TCP i UDP
if [ -n "$I_TCP" ] ; then
$IPTABLES -A INPUT -i $LAN -m multiport -p tcp --dports $I_TCP --syn -m state --state NEW -j ACCEPT
fi
if [ -n "$I_UDP" ] ; then
$IPTABLES -A INPUT -i $LAN -m multiport -p udp --dports $I_UDP -m state --state NEW -j ACCEPT
fi
# logowanie pakietow odrzuconych /var/log/messages
$IPTABLES -A INPUT ! -i lo -j LOG --log-prefix "DROP_INPUT: " --log-ip-options --log-tcp-options
$IPTABLES -A OUTPUT ! -o lo -j LOG --log-prefix "DROP_OUTPUT: " --log-ip-options --log-tcp-options
;;
stop)
echo "Zatrzymanie firewall'a..."
$IPTABLES -F
$IPTABLES -X
;;
clear)
echo "Czyszczenie firewall'a..., UWAGA! wszystko na ACCEPT!"
$IPTABLES -F
$IPTABLES -X
$IPTABLES -P INPUT ACCEPT
$IPTABLES -P FORWARD ACCEPT
$IPTABLES -P OUTPUT ACCEPT
;;
*)
N=/etc/init.d/$NAME
echo "Usage: $N {start|stop}" >&2
exit 1
;;
esac
exit 0