settare firewall

Sicurezza del sistema: firewall, antispam, antivirus, ssh, patch, bug, eccetera.
Daven72
Prode Principiante
Messaggi: 84
Iscrizione: venerdì 30 marzo 2007, 10:35

Re: settare firewall

Messaggio da Daven72 »

questo è il procedimento e il feedback

Codice: Seleziona tutto

dave@dave-desktop:~$ sudo chmod 755 /home/dave/Desktop/firewall.sh
dave@dave-desktop:~$ sudo cp /home/dave/Desktop/firewall.sh /etc/init.d/
dave@dave-desktop:~$ sudo ls -l /etc/init.d/fire*
-rwxr-xr-x 1 root root 3325 2007-04-01 22:07 /etc/init.d/firewall
-rwxr-xr-x 1 root root 3325 2007-04-02 14:26 /etc/init.d/firewall.sh
dave@dave-desktop:~$ sudo /etc/init.d/firewall.sh start
sudo: unable to execute /etc/init.d/firewall.sh: No such file or directory
dave@dave-desktop:~$ 
:(

grazie ancora per i consigli.
Avatar utente
Stealth
Tenace Tecnocrate
Tenace Tecnocrate
Messaggi: 17364
Iscrizione: martedì 31 gennaio 2006, 22:55
Desktop: Gnome
Distribuzione: Ubuntu 22.04 LTS

Re: settare firewall

Messaggio da Stealth »

Mah..intanto ne vedo 2, uno con sh finale e uno senza....prova un po' così:

Codice: Seleziona tutto

sudo /etc/init.d/firewall start
e, se non funziona, prova a guardare dentro i files (tutti e 2) con il comando cat nome_file, e vedi qual'è quello giusto
ciao
Daven72
Prode Principiante
Messaggi: 84
Iscrizione: venerdì 30 marzo 2007, 10:35

Re: settare firewall

Messaggio da Daven72 »

haimè sono uguali (nel senso che il primo firewall l'avevo messo ieri sera).
Io in ufficio non ho Ubuntu ma stamattina, ho scaricato il file fresco fresco, l'ho rinominato *.sh e poi il resto lo vedi al prompt. (l'ho fatto in pausa pranzo).

non sono affatto pratico di script sotto linux ma non mi sembra ci siano comandi all'interno che il sistema non debba riconoscere. Se può servire, tieni conto che io uso uin modem 56K in seriale e ho quindi modificato lo script con

Codice: Seleziona tutto

IFEXT="ppp0"	
può essere quello ?

ps. il comando  "iptables -L" funziona.
Avatar utente
BarryLyndon
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 384
Iscrizione: domenica 1 aprile 2007, 9:16

Re: settare firewall

Messaggio da BarryLyndon »

come faccio a dare al firewall i permessi 755?
Linux user number 446022
Ubuntu User number is # 32680
Daven72
Prode Principiante
Messaggi: 84
Iscrizione: venerdì 30 marzo 2007, 10:35

Re: settare firewall

Messaggio da Daven72 »

BerryLyndon ha scritto: come faccio a dare al firewall i permessi 755?
sono emozionato, questa la so ;)

Codice: Seleziona tutto

sudo chmod 755 /etc/init.d/firewall* 
ciao.
Daven72
Prode Principiante
Messaggi: 84
Iscrizione: venerdì 30 marzo 2007, 10:35

Re: settare firewall

Messaggio da Daven72 »

Daven72 ha scritto: haimè sono uguali (nel senso che il primo firewall l'avevo messo ieri sera).
Io in ufficio non ho Ubuntu ma stamattina, ho scaricato il file fresco fresco, l'ho rinominato *.sh e poi il resto lo vedi al prompt. (l'ho fatto in pausa pranzo).

non sono affatto pratico di script sotto linux ma non mi sembra ci siano comandi all'interno che il sistema non debba riconoscere. Se può servire, tieni conto che io uso uin modem 56K in seriale e ho quindi modificato lo script con

Codice: Seleziona tutto

IFEXT="ppp0"	
può essere quello ?

ps. il comando  "iptables -L" funziona.

se potesse servire, questo è il file

Codice: Seleziona tutto

root@dave-desktop:~# cat /etc/init.d/firewall.sh
#!/bin/bash
#
# Firewall personale by Benjamin (Mizar)
############################################

#########################
# Definizione Variabili #
#########################
IPTABLES="/sbin/iptables"
IFLO="lo"
IFEXT="ppp0"                    # Da sostituire con la propria interfaccia: eth0, eth1, ppp0, etc

case "$1" in
  start)
        ########################
        # Attivazione Firewall #
        ########################
        echo -n "Attivazione Firewall:    "

        #################################
        # Caricamento Moduli del Kernel #
        #################################
        modprobe ip_tables
        modprobe iptable_nat
        modprobe ip_conntrack
        modprobe ip_conntrack_ftp
        modprobe ip_nat_ftp
        modprobe ipt_LOG
        modprobe ipt_MARK
        modprobe ipt_MASQUERADE
        modprobe ipt_REDIRECT
        modprobe ipt_REJECT
        modprobe ipt_TOS
        modprobe ipt_limit
        modprobe ipt_mac
        modprobe ipt_mark
        modprobe ipt_multiport
        modprobe ipt_state
        modprobe ipt_tos
        modprobe iptable_mangle

        ############################
        # Reset delle impostazioni #
        ############################
        $IPTABLES -F
        $IPTABLES -F -t nat
        $IPTABLES -F -t mangle
        $IPTABLES -X
        $IPTABLES -X -t nat
        $IPTABLES -X -t mangle

        ################################
        # Impostazione Policy standard #
        ################################
        $IPTABLES -P INPUT   DROP
        $IPTABLES -P FORWARD DROP
        $IPTABLES -P OUTPUT  ACCEPT

        #################################
        # Abilitazione traffico interno #
        #################################
        $IPTABLES -A INPUT  -i $IFLO -j ACCEPT
        $IPTABLES -A OUTPUT -o $IFLO -j ACCEPT

        #############################################################################
        # Abilitazione traffico in entrata solo se relativo a pacchetti in risposta #
        #############################################################################
        $IPTABLES -A INPUT -p  tcp -i $IFEXT -m state -s 0/0 --state ESTABLISHED,RELATED -j ACCEPT
        $IPTABLES -A INPUT -p icmp -i $IFEXT -m state -s 0/0 --state ESTABLISHED,RELATED -j ACCEPT
        $IPTABLES -A INPUT -p  udp -i $IFEXT -m state -s 0/0 --state ESTABLISHED,RELATED -j ACCEPT

        ########################
        # Apertura porte aMule #
        ########################
        iptables -A INPUT -p tcp --dport 4662 -j ACCEPT
        iptables -A INPUT -p udp --dport 4665 -j ACCEPT
        iptables -A INPUT -p udp --dport 4672 -j ACCEPT 

        echo "ok"
        ;;

  stop)
        ###########################
        # Disattivazione Firewall #
        ###########################
        echo -n "Disattivazione Firewall: "

        $IPTABLES -F
        $IPTABLES -F -t nat
        $IPTABLES -F -t mangle
        $IPTABLES -X
        $IPTABLES -X -t nat
        $IPTABLES -X -t mangle

        $IPTABLES -P INPUT   ACCEPT
        $IPTABLES -P FORWARD ACCEPT
        $IPTABLES -P OUTPUT  ACCEPT

        echo "ok"
        ;;

  status)
        ##############################
        # Display stato del Firewall #
        ##############################
        echo -n "Regole attuali nel Firewall: "

        $IPTABLES -L
        ;;

  restart|reload)
        $0 stop
        $0 start
        ;;

  *)
        echo "Utilizzo: firewall {start|stop|restart|reload|status}" >&2
        exit 1
        ;;

esac

exit 0
ecc.. ecc.. 
ed adesso, ho rifatto alcune prove, e mi da un errore più significativo (secondo me)

Codice: Seleziona tutto

root@dave-desktop:~# /etc/init.d/firewall.sh start
-bash: /etc/init.d/firewall.sh: /bin/bash^M: bad interpreter: No such file or directory
root@dave-desktop:~# 
sembrerebbe non riuscire ad interpretare i comandi dello scrip. Però ho fatto uno script banale con

Codice: Seleziona tutto

echo -n "hello"
e funziona.
Aiuto...
???  >:(
Avatar utente
BarryLyndon
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 384
Iscrizione: domenica 1 aprile 2007, 9:16

Re: settare firewall

Messaggio da BarryLyndon »

come faccio ad attivere lo script tramite bum?
Linux user number 446022
Ubuntu User number is # 32680
Daven72
Prode Principiante
Messaggi: 84
Iscrizione: venerdì 30 marzo 2007, 10:35

Re: settare firewall

Messaggio da Daven72 »

Ho risolto, mi sono ricopiato in un file nuovo con gedit il testo dello script e tutto funziona.

il file txt lo avevo scaricato da internet in windows e poi su una chiavetta l'avevo inserito in ubuntu. Vorra dire qualcosa?

cmq grazie per le risposte.
Avatar utente
Stealth
Tenace Tecnocrate
Tenace Tecnocrate
Messaggi: 17364
Iscrizione: martedì 31 gennaio 2006, 22:55
Desktop: Gnome
Distribuzione: Ubuntu 22.04 LTS

Re: settare firewall

Messaggio da Stealth »

@ Daven72:  ;D

@ BerryLyndon: dopo che l'hai copiato (in /etc/init.d) e reso eseguibile, apri bum, ci clicchi col destro e lo attivi/avvii.....fine!  ;)
ciao
dav2dev
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 2068
Iscrizione: martedì 3 ottobre 2006, 16:16

Re: settare firewall

Messaggio da dav2dev »

Stealth ha scritto: dopo che l'hai copiato (in /etc/init.d) e reso eseguibile, apri bum, ci clicchi col destro e lo attivi/avvii.....fine!  ;)
ciao
piccolo ot
questa cosa non l'ho ancora capita...perchè io metto lo script in /etc/init.d correttamente, ma poi non mi compare in bum?thanx
«Dice fai così e così e vedi se c'è da qualche parte (!) la riga... se non c'è aggiungila... A chi? Ma se mi sono presentato come "meno che neofita"!  Scusa dav2dev, ma tu così spaventi la gente!»
Avatar utente
yves
Rampante Reduce
Rampante Reduce
Messaggi: 5422
Iscrizione: domenica 25 dicembre 2005, 2:23
Località: Argentina - BsAs
Contatti:

Re: settare firewall

Messaggio da yves »

Uffi, finalmente sono capitato su sto 3D, firestarter mi stava facendo dare i numeri..

Ho installato lo script di Mizard e modificato per le mie due interfacce di rete, lo posto qui:

Codice: Seleziona tutto

#!/bin/bash
#
# Firewall personale by Benjamin (Mizar)
############################################

######################################################
# Indirizzo web di origine                           #
# http://forum.ubuntu-it.org/viewtopic.php?t=12833 #
######################################################

#########################
# Definizione Variabili #
#########################
IPTABLES="/sbin/iptables"
IFLO="lo"
IFEXT1="eth0"			# Da sostituire con la propria interfaccia: eth0, eth1, ppp0, etc
IFEXT2="eth1"			# Da sostituire con la propria interfaccia: eth0, eth1, ppp0, etc

case "$1" in
  start)
	########################
	# Attivazione Firewall #
	########################
        echo -n "Attivazione Firewall:    "

	#################################
	# Caricamento Moduli del Kernel #
	#################################
	modprobe ip_tables
	modprobe iptable_nat
	modprobe ip_conntrack
	modprobe ip_conntrack_ftp
	modprobe ip_nat_ftp
	modprobe ipt_LOG
	modprobe ipt_MARK
	modprobe ipt_MASQUERADE
	modprobe ipt_REDIRECT
	modprobe ipt_REJECT
	modprobe ipt_TOS
	modprobe ipt_limit
	modprobe ipt_mac
	modprobe ipt_mark
	modprobe ipt_multiport
	modprobe ipt_state
	modprobe ipt_tos
	modprobe iptable_mangle

	############################
        # Reset delle impostazioni #
	############################
        $IPTABLES -F
        $IPTABLES -F -t nat
        $IPTABLES -F -t mangle
        $IPTABLES -X
        $IPTABLES -X -t nat
        $IPTABLES -X -t mangle

	################################
        # Impostazione Policy standard #
	################################
        $IPTABLES -P INPUT   DROP
        $IPTABLES -P FORWARD DROP
        $IPTABLES -P OUTPUT  ACCEPT

	#################################
	# Abilitazione traffico interno #
	#################################
	$IPTABLES -A INPUT  -i $IFLO -j ACCEPT
	$IPTABLES -A OUTPUT -o $IFLO -j ACCEPT

	#############################################################################
        # Abilitazione traffico in entrata solo se relativo a pacchetti in risposta #
	#############################################################################
        $IPTABLES -A INPUT -p  tcp -i $IFEXT1 -m state -s 0/0 --state ESTABLISHED,RELATED -j ACCEPT
        $IPTABLES -A INPUT -p icmp -i $IFEXT1 -m state -s 0/0 --state ESTABLISHED,RELATED -j ACCEPT
        $IPTABLES -A INPUT -p  udp -i $IFEXT1 -m state -s 0/0 --state ESTABLISHED,RELATED -j ACCEPT
        $IPTABLES -A INPUT -p  tcp -i $IFEXT2 -m state -s 0/0 --state ESTABLISHED,RELATED -j ACCEPT
        $IPTABLES -A INPUT -p icmp -i $IFEXT2 -m state -s 0/0 --state ESTABLISHED,RELATED -j ACCEPT
        $IPTABLES -A INPUT -p  udp -i $IFEXT2 -m state -s 0/0 --state ESTABLISHED,RELATED -j ACCEPT

        #########
        # samba #
        #########
        $IPTABLES -A INPUT -p udp -m udp -s 192.168.0.0/24 --dport 137 -j ACCEPT
        $IPTABLES -A INPUT -p udp -m udp -s 192.168.0.0/24 --dport 138 -j ACCEPT
        $IPTABLES -A INPUT -m state --state NEW -m tcp -p tcp -s 192.168.0.0/24 --dport 139 -j ACCEPT
        $IPTABLES -A INPUT -m state --state NEW -m tcp -p tcp -s 192.168.0.0/24 --dport 445 -j ACCEPT

        ########################
        # Apertura porte aMule #
        ########################
        iptables -A INPUT -p tcp --dport 4662 -j ACCEPT
        iptables -A INPUT -p udp --dport 4665 -j ACCEPT
        iptables -A INPUT -p udp --dport 4672 -j ACCEPT 

        ##########################
        # Apertura porte Azureus #
        ##########################
        iptables -A INPUT -p tcp --dport 6881 -j ACCEPT

        echo "ok"
	;;

  stop)
	###########################
        # Disattivazione Firewall #
	###########################
        echo -n "Disattivazione Firewall: "

        $IPTABLES -F
        $IPTABLES -F -t nat
        $IPTABLES -F -t mangle
        $IPTABLES -X
        $IPTABLES -X -t nat
        $IPTABLES -X -t mangle

        $IPTABLES -P INPUT   ACCEPT
        $IPTABLES -P FORWARD ACCEPT
        $IPTABLES -P OUTPUT  ACCEPT

        echo "ok"
	;;

  status)
	##############################
        # Display stato del Firewall #
	##############################
        echo -n "Regole attuali nel Firewall: "

        $IPTABLES -L
	;;

  restart|reload)
        $0 stop
        $0 start
	;;

  *)
	echo "Utilizzo: firewall {start|stop|restart|reload|status}" >&2
	exit 1
	;;

esac

exit 0
Cosi comè mi va tutto a meraviglia con le due interfacce, quindi ok, ma un pò per gioco ed un pò per curiosità ho provato ad usare il secondo script postato da Ptah, direi piuttosto paranoico dalle descrizioni, ma testato e funziona pure lui, salvo che con lui il mio PC diventa "invisibile", anche cercando di inserire le regole aggiuntive (ho provato quella con l'ip mac del secondo PC) ma niente, c'è un sistema per far passare aMule, Samba, Cups, ecc? se si qual'è?:

Codice: Seleziona tutto


#!/bin/bash
#
# Firewall personale by Benjamin (Mizar)
# Modifyed by Ptah 16 Dec 2006
############################################

#########################
# Definizione Variabili #
#########################
IPTABLES="/sbin/iptables"
IFLO="lo"
IFEXT1="eth0"			# interfaccia rj45
IFEXT2="eth1"			# WiFi

case "$1" in
  start)
	########################
	# Attivazione Firewall #
	########################
        echo -n "Attivazione Firewall:    "

	#################################
	# Caricamento Moduli del Kernel #
	#################################
	modprobe ip_tables
	modprobe iptable_nat
	modprobe ip_conntrack
	modprobe ip_conntrack_ftp
	modprobe ip_nat_ftp
	modprobe ipt_LOG
	modprobe ipt_MARK
	modprobe ipt_MASQUERADE
	modprobe ipt_REDIRECT
	modprobe ipt_REJECT
	modprobe ipt_TOS
	modprobe ipt_limit
	modprobe ipt_mac
	modprobe ipt_mark
	modprobe ipt_multiport
	modprobe ipt_state
	modprobe ipt_tos
	modprobe iptable_mangle
        #modprobe ipt_psd

	############################
        # Reset delle impostazioni #
	############################
        $IPTABLES -F
        $IPTABLES -F -t nat
        $IPTABLES -F -t mangle
        $IPTABLES -X
        $IPTABLES -X -t nat
        $IPTABLES -X -t mangle

	################################
        # Impostazione Policy standard #
	################################
        $IPTABLES -P INPUT   DROP
        $IPTABLES -P FORWARD DROP
        $IPTABLES -P OUTPUT  ACCEPT

	#################################
	# Abilitazione traffico interno #
	#################################
	$IPTABLES -A INPUT  -i $IFLO -j ACCEPT
	$IPTABLES -A OUTPUT -o $IFLO -j ACCEPT


	############################
	# creo una catena per ICMP #
	############################
	$IPTABLES -N icmp_in 

	########################################################
	# se il pacchetto icmp non è un ping allora lo accetta #
	# altrimenti (4-5 riga) logga e droppa                 #
	########################################################
	$IPTABLES -A icmp_in -i $IFEXT1 -p icmp -m icmp --icmp-type 0 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT1 -p icmp -m icmp --icmp-type 8 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT1 -p icmp -m icmp --icmp-type 3 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT1 -p icmp -m icmp --icmp-type 5 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT1 -p icmp -m icmp --icmp-type 11 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT2 -p icmp -m icmp --icmp-type 0 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT2 -p icmp -m icmp --icmp-type 8 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT2 -p icmp -m icmp --icmp-type 3 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT2 -p icmp -m icmp --icmp-type 5 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT2 -p icmp -m icmp --icmp-type 11 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -p icmp -j LOG --log-prefix "ICMP drop:"
	$IPTABLES -A icmp_in -p icmp -j DROP

	#######################################
	# Istruisco iptable a usare la catena #
	# creata precedentemente              #
	#######################################
	$IPTABLES -A INPUT -i $IFEXT1 -p icmp -j icmp_in
	$IPTABLES -A INPUT -i $IFEXT2 -p icmp -j icmp_in

	###########################
	# creo una catena per TCP #
	# pacchetti pericolosi    #
	###########################
	$IPTABLES -N bad_tcp

	######################################
	# Regole di controllo PORTSCAN TCP   #
	# sono commentate perchè non         #
	# ho il modulo psd disponibile. Se   #
	# lo avete potete abilitarle. Sono   #
	# regole aggiuntive per gli attacchi #
	# di tipo PORTSCAN                   #
	######################################
	#$IPTABLES -A bad_tcp -p tcp -m psd -j LOG --log-prefix "PORTSCAN TCP: "
	#$IPTABLES -A bad_tcp -p tcp -m psd -j REJECT --reject-with icmp-net-unreachable

	###########################################
	# Regole di controllo su alcune porte TCP #
	# Servizi che voglio rendere disponibili  #
	# solo ai computer della rete interna     #
	###########################################
        $IPTABLES -A bad_tcp -p tcp -m multiport --dports 80,21,22,10000 -i $IFEXT1 -m state -s ! 192.168.0.0/24 --state NEW -j REJECT --reject-with icmp-net-unreachable
        $IPTABLES -A bad_tcp -p tcp -m multiport --dports 445,3306 -i $IFEXT1 -m state -s ! 192.168.0.0/24 --state NEW -j REJECT --reject-with icmp-net-unreachable
        $IPTABLES -A bad_tcp -p tcp -m multiport --dports 80,21,22,10000 -i $IFEXT2 -m state -s ! 192.168.0.0/24 --state NEW -j REJECT --reject-with icmp-net-unreachable
        $IPTABLES -A bad_tcp -p tcp -m multiport --dports 445,3306 -i $IFEXT2 -m state -s ! 192.168.0.0/24 --state NEW -j REJECT --reject-with icmp-net-unreachable

	####################################
	# Regole di controllo sui flag TCP #
	####################################
	$IPTABLES -A bad_tcp -p tcp -m tcp ! --tcp-flags SYN,RST,ACK SYN -m state --state NEW -j LOG --log-prefix "Nuova non syn:"
	$IPTABLES -A bad_tcp -p tcp -m tcp ! --tcp-flags SYN,RST,ACK SYN -m state --state NEW -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m state --state INVALID -j LOG --log-prefix "Invalida:"
	$IPTABLES -A bad_tcp -p tcp -m state --state INVALID -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,PSH,URG -m limit --limit 5/min -j LOG --log-prefix "NMAP-XMAS:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,PSH,URG -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -m limit --limit 5/min -j LOG --log-prefix "SYN/RST:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --tcp-flags FIN,SYN FIN,SYN -m limit --limit 5/min -j LOG --log-prefix "SYN/FIN:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --tcp-flags FIN,SYN FIN,SYN -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --dport 137:139 -m limit --limit 5/min -j LOG --log-prefix "NO SMB:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --sport 137:139 -m limit --limit 5/min -j LOG --log-prefix "NO SMB:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --dport 137:139 -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --sport 137:139 -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --dport 2049 -m limit --limit 5/min -j LOG --log-prefix "NO NFS:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --sport 2049 -m limit --limit 5/min -j LOG --log-prefix "NO NFS:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --dport 2049 -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --sport 2049 -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --dport 6000:6063 -m limit --limit 5/min -j LOG --log-prefix "NO X:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --sport 6000:6063 -m limit --limit 5/min -j LOG --log-prefix "NO X:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --dport 6000:6063 -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --sport 6000:6063 -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --dport 20034 -m limit --limit 5/min -j LOG --log-prefix "NO NetBus2:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --sport 20034 -m limit --limit 5/min -j LOG --log-prefix "NO NetBus2:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --dport 20034 -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --sport 20034 -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --dport 12345:12346 -m limit --limit 5/min -j LOG --log-prefix "NO NetBus:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --sport 12345:12346 -m limit --limit 5/min -j LOG --log-prefix "NO NetBus:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --dport 12345:12346 -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --sport 12345:12346 -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --dport 27374 -m limit --limit 5/min -j LOG --log-prefix "NO SubSeven:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --sport 27374 -m limit --limit 5/min -j LOG --log-prefix "NO SubSeven:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --dport 27374 -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --sport 27374 -j REJECT --reject-with icmp-net-unreachable

	########################################
	# Istruisco iptable a usare la catena  #
	# per il TCP maligno                   #
	########################################
	$IPTABLES -A INPUT -i $IFEXT1 -p tcp -j bad_tcp
	$IPTABLES -A INPUT -i $IFEXT2 -p tcp -j bad_tcp

	###########################
	# creo una catena per TCP #
	# pacchetti validi        #
	###########################
	$IPTABLES -N ok_tcp

	#############################################################################
	# Abilitazione traffico in entrata solo se relativo a pacchetti in risposta #
	#############################################################################
        $IPTABLES -A ok_tcp -p tcp -m multiport --dports 80,21,22,10000 -i $IFEXT1 -m state -s 192.168.0.0/24 --state NEW -j ACCEPT
        $IPTABLES -A ok_tcp -p tcp -m multiport --dports 80,21,22,10000 -i $IFEXT2 -m state -s 192.168.0.0/24 --state NEW -j ACCEPT
	$IPTABLES -A ok_tcp -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j ACCEPT
	$IPTABLES -A ok_tcp -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
	$IPTABLES -A ok_tcp -i $IFEXT1 -p tcp -j LOG --log-prefix "ok_tcp drop:"
	$IPTABLES -A ok_tcp -i $IFEXT2 -p tcp -j LOG --log-prefix "ok_tcp drop:"
	$IPTABLES -A ok_tcp -p tcp -j REJECT --reject-with icmp-net-unreachable

	###########################
	# creo una catena per UDP #
	# pacchetti pericolosi    #
	###########################
	$IPTABLES -N bad_udp

	######################################
	# Regole di controllo PORTSCAN       #
	# sono commentate perchè non         #
	# ho il modulo psd disponibile. Se   #
	# lo avete potete abilitarle. Sono   #
	# regole aggiuntive per gli attacchi #
	# di tipo PORTSCAN                   #
	######################################
	#$IPTABLES -A bad_udp -p udp -m psd -j LOG --log-prefix "PORTSCAN UDP: "
	#$IPTABLES -A bad_udp -p udp -m psd -j REJECT --reject-with icmp-net-unreachable

	########################################
	# Istruisco iptable a usare la catena  #
	# per il UDP maligno                   #
	########################################
	$IPTABLES -A INPUT -i $IFEXT1 -p udp -j bad_udp
	$IPTABLES -A INPUT -i $IFEXT2 -p udp -j bad_udp

	###########################
	# creo una catena per UDP #
	# pacchetti validi        #
	###########################
	$IPTABLES -N ok_udp

	#############################################################################
	# Abilitazione traffico in entrata solo se relativo a pacchetti in risposta #
	#############################################################################
	$IPTABLES -A ok_udp -p udp -m state --state RELATED,ESTABLISHED -j ACCEPT
	$IPTABLES -A ok_udp -i $IFEXT1 -p udp -j LOG --log-prefix "ok_udp drop:"
	$IPTABLES -A ok_udp -i $IFEXT2 -p udp -j LOG --log-prefix "ok_udp drop:"
	$IPTABLES -A ok_udp -p udp -j REJECT --reject-with icmp-net-unreachable


	#####################################
	# Aggiungo le catene personalizzate #
	#####################################
	$IPTABLES -A INPUT -i $IFEXT1 -p tcp -j ok_tcp
	$IPTABLES -A INPUT -i $IFEXT1 -p udp -j ok_udp
	$IPTABLES -A INPUT -i $IFEXT2 -p tcp -j ok_tcp
	$IPTABLES -A INPUT -i $IFEXT2 -p udp -j ok_udp

	################################
	# Regole finali di paranoia ;) #
	################################
	$IPTABLES -A INPUT -i $IFEXT1 -j LOG --log-prefix "Default drop:"
	$IPTABLES -A INPUT -i $IFEXT1 -j DROP
	$IPTABLES -A INPUT -i $IFEXT2 -j LOG --log-prefix "Default drop:"
	$IPTABLES -A INPUT -i $IFEXT2 -j DROP

        echo "ok"
	;;

  stop)
	###########################
        # Disattivazione Firewall #
	###########################
        echo -n "Disattivazione Firewall: "

        $IPTABLES -F
        $IPTABLES -F -t nat
        $IPTABLES -F -t mangle
        $IPTABLES -X
        $IPTABLES -X -t nat
        $IPTABLES -X -t mangle

        $IPTABLES -P INPUT   ACCEPT
        $IPTABLES -P FORWARD ACCEPT
        $IPTABLES -P OUTPUT  ACCEPT

        echo "ok"
	;;

  status)
	##############################
        # Display stato del Firewall #
	##############################
        echo -n "Regole attuali nel Firewall: "

        $IPTABLES -L
	;;

  restart|reload)
        $0 stop
        $0 start
	;;

  *)
	echo "Utilizzo: firewall {start|stop|restart|reload|status}" >&2
	exit 1
	;;

esac

exit 0
Io ho provato a modificare lo script inserendo questo:

Codice: Seleziona tutto

$IPTABLES -A INPUT -i eth0 -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT
$IPTABLES -A INPUT -i eth1 -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT
e poi "pingarlo" dalla macchima "autorizzata" (la proprieteria dell'ip mac), ma non passa nemmeno uno spiraglio di richiesta:

Codice: Seleziona tutto

yves@Edgy:~$ ping 192.168.0.25
PING 192.168.0.24 (192.168.0.25) 56(84) bytes of data.
From 192.168.0.176 icmp_seq=1 Destination Host Unreachable
...
...
figuriamoci Samba & co..

C'è un sistema?

Grazie e complimenti ad entrambi.
Al giorno d'oggi i cani di razza muovono la coda solo per interesse. Ma io sono un bastardo... Tuxliberty
Riscopri il PC, installa ed usa Linux ;-) - Linux != Windows Linux User # 16486 - Jabber: yvesBsAs@jabber.org
Ptah
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1269
Iscrizione: mercoledì 13 dicembre 2006, 13:19
Contatti:

Re: settare firewall

Messaggio da Ptah »

Grazie per il complimento...
Lo scopo delle mie modifiche era proprio quello di rendere il piccì virtualmente invisibile, anche se non è poi così vero ;)
Il problema che pingando non ti risponde sta tutto nelle regole del protocollo ICMP del mio script:

Codice: Seleziona tutto

	########################################################
	# se il pacchetto icmp non è un ping allora lo accetta #
	# altrimenti (4-5 riga) logga e droppa                 #
	########################################################
	$IPTABLES -A icmp_in -i $IFEXT1 -p icmp -m icmp --icmp-type 0 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT1 -p icmp -m icmp --icmp-type 8 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT1 -p icmp -m icmp --icmp-type 3 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT1 -p icmp -m icmp --icmp-type 5 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT1 -p icmp -m icmp --icmp-type 11 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT2 -p icmp -m icmp --icmp-type 0 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT2 -p icmp -m icmp --icmp-type 8 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT2 -p icmp -m icmp --icmp-type 3 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT2 -p icmp -m icmp --icmp-type 5 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -i $IFEXT2 -p icmp -m icmp --icmp-type 11 -j REJECT --reject-with icmp-host-unreachable
	$IPTABLES -A icmp_in -p icmp -j LOG --log-prefix "ICMP drop:"
	$IPTABLES -A icmp_in -p icmp -j DROP
Queste regole impediscono OGNI traffico ICMP e quindi anche il ping...
Dovresti modificare QUI le regole per accettare il pign dal tal IP o dal tal Mac-Address :-)

Idem per Samba...

Codice: Seleziona tutto

	$IPTABLES -A bad_tcp -p tcp -m tcp --dport 137:139 -m limit --limit 5/min -j LOG --log-prefix "NO SMB:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --sport 137:139 -m limit --limit 5/min -j LOG --log-prefix "NO SMB:"
	$IPTABLES -A bad_tcp -p tcp -m tcp --dport 137:139 -j REJECT --reject-with icmp-net-unreachable
	$IPTABLES -A bad_tcp -p tcp -m tcp --sport 137:139 -j REJECT --reject-with icmp-net-unreachable
Vanno modificate queste righe (quelle sopra) adattandole alle tue esigenze....
In generale la regola che rende virtualmente invisibile il pc è questo tipo di risposta:

Codice: Seleziona tutto

REJECT --reject-with icmp-net-unreachable
che appunto indica "rispondi con Network irrangiungibile, cioè come se il PC non fosse connesso :)

Spero di esserti stato d'aiuto, alla prossima
Ultima modifica di Ptah il martedì 3 aprile 2007, 14:23, modificato 1 volta in totale.
Non sono chi dico di essere ;) || Problema risolto?Metti [RISOLTO] nel titolo ;)
Script per Firewall Iptables
Guida Php ufficiale (in inglese)
Avatar utente
BarryLyndon
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 384
Iscrizione: domenica 1 aprile 2007, 9:16

Re: settare firewall

Messaggio da BarryLyndon »

l problema grosso è che io non so dove è Bum :(
Linux user number 446022
Ubuntu User number is # 32680
Ptah
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1269
Iscrizione: mercoledì 13 dicembre 2006, 13:19
Contatti:

Re: settare firewall

Messaggio da Ptah »

Lo scarichi dai repo Universe se ricordo bene :)
Abilitali nel tuo source.list, poi apt-get update e poi apt-get install bum

Ciaooooooooo
Non sono chi dico di essere ;) || Problema risolto?Metti [RISOLTO] nel titolo ;)
Script per Firewall Iptables
Guida Php ufficiale (in inglese)
Avatar utente
thaypan
Prode Principiante
Messaggi: 163
Iscrizione: mercoledì 28 febbraio 2007, 22:23

Re: settare firewall

Messaggio da thaypan »

Se non lo trovi devi prima riempire il source.list con i perositories, poi agiorna apt o synaptic e lo installi.
Do you really want to pay the Bill?
Avatar utente
yves
Rampante Reduce
Rampante Reduce
Messaggi: 5422
Iscrizione: domenica 25 dicembre 2005, 2:23
Località: Argentina - BsAs
Contatti:

Re: settare firewall

Messaggio da yves »

Grazie Ptah per la preziosa spiegazione, ma forse ho avuto un idea migliore... conservo i due con due nomi diversi, le necessità di rete le ho a casa e in ufficio, fuori mi è inutile, quindi il tuo scipt è perfetto cosi com'è, basta rinominarlo ed usarlo in caso di connessione ad internet in zone poco sicure, il primo sarà "firewall" ed il secondo "paranoia"  ;D.

Il "firewall" è inserito in avvio automatico (e funzia a dovere con le sue regole semplici), in caso di bisogno fermo quello ed avvio l'altro da icone apposite,  mi sa che sia la miglior cosa, visto che il tuo è molto specializzato nel "non lasciar passar niente" (e la prova del "ping" mi ha stupito non poco..) inutile comprometterlo, meglio "indurire" un poco il primo, e mi ci metto subito  (good).

Un salutone a tutta la comunità e Buona Pasqua.
Al giorno d'oggi i cani di razza muovono la coda solo per interesse. Ma io sono un bastardo... Tuxliberty
Riscopri il PC, installa ed usa Linux ;-) - Linux != Windows Linux User # 16486 - Jabber: yvesBsAs@jabber.org
Avatar utente
thaypan
Prode Principiante
Messaggi: 163
Iscrizione: mercoledì 28 febbraio 2007, 22:23

Re: settare firewall

Messaggio da thaypan »

Salve, mi rivolgo a chi usa questo tool per chiedergli se loro hanno avuto problemi tipo Errore NAT" coi torrent?
Do you really want to pay the Bill?
Avatar utente
BarryLyndon
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 384
Iscrizione: domenica 1 aprile 2007, 9:16

Re: settare firewall

Messaggio da BarryLyndon »

e coem si fa ad attivare qualcosa tramite Bum?
Linux user number 446022
Ubuntu User number is # 32680
Avatar utente
thaypan
Prode Principiante
Messaggi: 163
Iscrizione: mercoledì 28 febbraio 2007, 22:23

Re: settare firewall

Messaggio da thaypan »

BerryLyndon ha scritto: e coem si fa ad attivare qualcosa tramite Bum?
Berry cerca un pò nel forum, fai prima che postare!
Do you really want to pay the Bill?
Avatar utente
thaypan
Prode Principiante
Messaggi: 163
Iscrizione: mercoledì 28 febbraio 2007, 22:23

Re: settare firewall

Messaggio da thaypan »

thaypan ha scritto: Salve, mi rivolgo a chi usa questo tool per chiedergli se loro hanno avuto problemi tipo Errore NAT" coi torrent?
Mi spiace se quoto me stesso ma è urgente.  :'(
Do you really want to pay the Bill?
Scrivi risposta

Ritorna a “Sicurezza”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 1 ospite