Buondi' a tutti, a tre giorni di distanza e un po' meno fuso di sabato sera riposto il messaggio con le regole pero' ci risiamo mi pareva di saperlo che mi impelagavo in una rogna mondiale a cambiare il firewall da ipchains a iptable comunque sia dato che e' da stamane alle 7.30 che ci smanetto su' che ho cercato tutti gli esempi che sono riuscito a trovare che ci ragiono e non riesco a venirne fuori mi arrendo(parzialmente e che cacchio almeno il tempo di un panino e di una birra) e chiedo un'altra volta. il problema e' il seguente: la lan interna ha una macchina su cui e' installato l'antivirus e che provvede al login ad aggiornare i file dat sui client se variati. la macchina ha ip 192.168.2.1 e deve fare ogni 15 gg verifica pressoil sito ftp.cai.com se ci sono variazioni e' il classico lavoro che fa' di notte senza disturbare, ovviamente non va! e da qui la priam raffica di bestemmie. Ho provato ad inserire delle regole che mi accettassero ftp ma evidentemetne sbaglio di seguito pasto lo script che ho fatto o meglio che ho copiato un pezzo qui e uno la integrandolo con le mie idee infatti alcune regole sono molto simili e ci devo studiare su un poco per eliminare le eventuali duplicazioni inutili tenete presente che e' la mia prima realizzazione , ho inserito nel kernel il modulo ip_conntrack_ftp e ip_nat_ftp durante il setup della macchina mi potete dare una dritta? grazie #!/bin/sh # #test di script masquerading scritto in linux by jclark 020103 # ###DEBUGGING### set -x ###ALIAS### ###IPTABLES iptables=/sbin/iptables ### External Interface EXTIF="eth0" ### Internal Interface INTIF="eth1" ### Host Public IP EGO="xxx.xxx.xxx.xxx" ### Internal Lan IP LANIN="192.168.2.0/24" ###FLUSHING CHAIN### iptables -F iptables -F -t nat iptables -X iptables -Z ### DEFAULT CHAIN### iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT DROP iptables -t nat -P POSTROUTING ACCEPT iptables -t nat -P PREROUTING ACCEPT ###SETTING IPFORWARDING### /bin/echo "1" > /proc/sys/net/ipv4/ip_forward ### DISABLE RESPOND TO BROADCAST ### /bin/echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts ### ENABLE BAD ERROR MESSAGE PROTECTION ### /bin/echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses ### DISABLE ICMP REDIRECT ACCEPTANCE ### /bin/echo "0" > /proc/sys/net/ipv4/conf/all/accept_redirects ### SETTING ANTISPOOFING PROTECTION ### /bin/echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter ### DON'T RESPOND TO BROADCAST PINGS ### /bin/echo "1" > /proc/sys/net/ipv4/conf/all/log_martians ### Traceroute ports TR_SRC_PORTS="32769:65535" TR_DEST_PORTS="33494:33523" ### DNS servers DNS1="xxx.xxx.xxx.xxx" DNS2="xxx.xxx.xxx.xxx" DNS3="xxx.xxx.xxx.xxx" ### RFC IPs LOOPBACK="127.0.0.0/8" CLASS_A="10.0.0.0/8" CLASS_B="172.16.0.0/12" CLASS_C="192.168.0.0/16" CLASS_D_MULTICAST="224.0.0.0/24" CLASS_E_RESERVED_NET="240.0.0.0/5" ### RULES #### #===================NAT PREROUTING============= iptables -t nat -A PREROUTING -i $EXTIF -s $LOOPBACK -j DROP iptables -t nat -A PREROUTING -i $EXTIF -s $CLASS_C -j DROP iptables -t nat -A PREROUTING -i $EXTIF -d ! $EGO -j DROP #============================SPOOFING========== iptables -A INPUT -i $EXTIF -s $EGO -j DROP iptables -A INPUT -i $EXTIF -s $CLASS_A -j DROP iptables -A INPUT -i $EXTIF -s $CLASS_B -j DROP iptables -A INPUT -i $EXTIF -s $CLASS_C -j DROP iptables -A INPUT -i $EXTIF -s $CLASS_D_MULTICAST -j DROP iptables -A INPUT -i $EXTIF -s $CLASS_E_RESERVED_NET -j DROP iptables -A INPUT -i $EXTIF -d $LOOPBACK -j DROP #=================SYN-FLODDING PROTECTION========== iptables -N syn-flood iptables -A INPUT -i $EXTIF -p tcp --syn -j syn-flood iptables -A syn-flood -m limit --limit 1/s --limit-burst4 -j return iptables -A syn-flood -j DROP iptables -A INPUT -i $EXTIF -p tcp ! --syn -m state --state NEW -j DROP #=================FRAGMENT DENY================== iptables -A INPUT -i $EXTIF -f -j DROP #============================LOOP RULE=========== iptables -A INPUT -s $LOOPBACK -j ACCEPT iptables -A OUTPUT -d $LOOPBACK -j ACCEPT #============================TRACEROUTE=============== iptables -A OUTPUT -o $EXTIF -p udp --sport $TR_SRC_PORTS --dport $TR_DEST_PORTS \ -m state --state NEW -j ACCEPT #============================LAN IN OUT============== iptables -A INPUT -i $INTIF -s $LANIN -j ACCEPT iptables -A OUTPUT -o $INTIF -d $LANIN -j ACCEPT iptables -A FORWARD -s $LANIN -d 0/0 -j ACCEPT iptables -A FORWARD -s 0/0 -d $LANIN -p tcp --syn -j DROP iptables -A FORWARD -s 0/0 -d $LANIN -j ACCEPT #============================SERVICES================== #DNS iptables -A INPUT -i $EXTIF -p udp -s $DNS1 --sport 53 -j ACCEPT iptables -A INPUT -i $EXTIF -p udp -s $DNS2 --sport 53 -j ACCEPT iptables -A INPUT -i $EXTIF -p udp -s $DNS3 --sport 53 -j ACCEPT #SSH iptables -A INPUT -i $EXTIF -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT iptables -A OUTPUT -o $EXTIF -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT #============================RULE====================== iptables -A INPUT -i ! $EXTIF -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT iptables -A FORWARD -i ! $EXTIF -m state --state NEW -j DROP iptables -A FORWARD -i ! $EXTIF -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A OUTPUT -o ! $EXTIF -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -p tcp -m state --state ESTABLISHED -j ACCEPT iptables -A OUTPUT -p tcp -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -i $EXTIF -p udp -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p udp -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A OUTPUT -p icmp -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -i $EXTIF -p tcp --sport 21 -m state --state ESTABLISHED -j ACCEPT iptables -A OUTPUT -o $EXTIF -p tcp --dport 21 -m state --state NEW,ESTABLISHED-j ACCEPT iptables -A INPUT -i $EXTIF -p tcp --sport 20 -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A OUTPUT -o $EXTIF -p tcp --dport 20 -m state --state ESTABLISHED -j ACCEPT iptables -A INPUT -i $EXTIF -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT iptables -A OUTPUT -o $EXTIF -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT #==========================POSTROUTING CHAIN=================== iptables -t nat -A POSTROUTING -o $EXTIF -s $LANIN -j MASQUERADE # #===========================LOGGING========================== #iptables -A INPUT -j LOG --log-prefix "DENY INPUT:" #iptables -A INPUT -i $EXTIF -m state --state NEW,INVALID -j DROP #iptables -A FORWARD -j LOG --log-prefix "DENY FW:" #iptables -A OUTPUT -j LOG --log-prefix "DENY OUT:" ## il bastardo logga tutto a schermo e non si vede un cavolo quando si lavora #=========================ALLOW ALL TRAFFIC ON ETH1========== iptables -N rete iptables -A INPUT -i $INTIF -p all -j rete iptables -A OUTPUT -o $INTIF -p all -j rete iptables -A FORWARD -o $INTIF -p all -j rete iptables -A FORWARD -i $INTIF -p all -j rete iptables -A rete -i $INTIF -j ACCEPT iptables -A rete -o $INTIF -j ACCEPT -- Mario Vittorio Guenzi Zincometal S.p.A. c.so Europa Str.prov 34 20010-Inveruno (MI) tel: 02-979661 fax: 02-97966351 E-mail jclark@xxxxxxxxxxxxx http://www.zincometal.com Si vis pacem, para bellum -- Per iscriversi (o disiscriversi), basta spedire un messaggio con SOGGETTO "subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxx