| verzia 1.1, 2003/10/11 15:35:03 |
verzia 1.2, 2005/01/27 16:17:40 |
|
|
| #!/bin/sh |
#!/bin/sh |
| |
|
| # $Platon: $ |
# $Platon: scripts/shell/firewall/fw-on-single.sh,v 1.1 2003/10/11 15:35:03 nepto Exp $ |
| |
|
| |
cmd=`/etc/firewall/ifconfig-parse.sh`; |
| |
eval "$cmd"; |
| |
|
| # Vaše IP adresa a vnější rozhraní |
# Vaše IP adresa a vnější rozhraní |
| INET_IP="10.122.24.140/32" |
#INET_IP="10.122.24.140/32" |
| |
INET_IP="$IP_eth0/$Mask_eth0"; |
| |
#echo "**** $INET_IP"; |
| INET_IFACE="eth0" |
INET_IFACE="eth0" |
| |
|
| # Lokální loopback rozhraní |
# Lokální loopback rozhraní |
| Riadok 28 for interface in /proc/sys/net/ipv4/conf |
|
| Riadok 33 for interface in /proc/sys/net/ipv4/conf |
|
| echo "1" > ${interface} |
echo "1" > ${interface} |
| done |
done |
| |
|
| |
for table in filter nat mangle; do |
| |
$IPTABLES -t $table -F # clear all chains |
| |
$IPTABLES -t $table -X # remove all chains |
| |
$IPTABLES -t $table -Z # zero counts |
| |
done |
| |
|
| # Implicitní politikou je zahazovat nepovolené pakety |
# Implicitní politikou je zahazovat nepovolené pakety |
| $IPTABLES -P INPUT DROP |
$IPTABLES -P INPUT DROP |
| $IPTABLES -P OUTPUT DROP |
$IPTABLES -P OUTPUT DROP |
| Riadok 79 $IPTABLES -A INPUT -i $INET_IFACE -p tcp |
|
| Riadok 90 $IPTABLES -A INPUT -i $INET_IFACE -p tcp |
|
| # Pravidla pro povolené služby |
# Pravidla pro povolené služby |
| #$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 21 -j ACCEPT #FTP server |
#$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 21 -j ACCEPT #FTP server |
| $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 22 -j ACCEPT #SSH server |
$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 22 -j ACCEPT #SSH server |
| $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 139 -j ACCEPT |
#$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 139 -j ACCEPT |
| #$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 25 -j ACCEPT #SMTP server |
$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 25 -j ACCEPT #SMTP server |
| #$IPTABLES -A INPUT -i $INET_IFACE -p UDP --dport 53 -j ACCEPT #DNS server |
$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 2525 -j ACCEPT # alternative SMTP server |
| #$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 53 -j ACCEPT #DNS server nad TCP |
$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 465 -j ACCEPT #SMTP server |
| |
$IPTABLES -A INPUT -i $INET_IFACE -p UDP --dport 53 -j ACCEPT #DNS server |
| |
$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 53 -j ACCEPT #DNS server nad TCP |
| #$IPTABLES -A INPUT -i $INET_IFACE -p UDP --sport 53 -j ACCEPT #DNS klient |
#$IPTABLES -A INPUT -i $INET_IFACE -p UDP --sport 53 -j ACCEPT #DNS klient |
| #$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 80 -j ACCEPT #WWW server |
$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 80 -j ACCEPT #WWW server |
| |
$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 2401 -j ACCEPT # CVS server |
| #$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 110 -j ACCEPT #POP3 server |
#$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 110 -j ACCEPT #POP3 server |
| #$IPTABLES -A INPUT -i $INET_IFACE -p UDP --sport 123 -j ACCEPT #NTP klient |
#$IPTABLES -A INPUT -i $INET_IFACE -p UDP --sport 123 -j ACCEPT #NTP klient |
| #$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 143 -j ACCEPT #IMAP server |
#$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 143 -j ACCEPT #IMAP server |
| #$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 443 -j ACCEPT #HTTPS server |
$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 443 -j ACCEPT #HTTPS server |
| #$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 873 -j ACCEPT #rsync server |
#$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 873 -j ACCEPT #rsync server |
| #$IPTABLES -A INPUT -i $INET_IFACE -p UDP --dport 517 -j ACCEPT # talk |
#$IPTABLES -A INPUT -i $INET_IFACE -p UDP --dport 517 -j ACCEPT # talk |
| #$IPTABLES -A INPUT -i $INET_IFACE -p UDP --dport 518 -j ACCEPT # ntalk |
#$IPTABLES -A INPUT -i $INET_IFACE -p UDP --dport 518 -j ACCEPT # ntalk |
| |
$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 993 -j ACCEPT # IMAPS server |
| |
|
| # Službu AUTH není dobré filtrovat pomocí DROP, protože to může |
# Službu AUTH není dobré filtrovat pomocí DROP, protože to může |
| # vést k prodlevám při navazování některých spojení. Proto jej |
# vést k prodlevám při navazování některých spojení. Proto jej |