Torna indietro   Hardware Upgrade Forum > Software > Linux, Unix, OS alternativi

Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione
Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione
Abbiamo provato il nuovo Galaxy S25 Edge, uno smartphone unico per il suo spessore di soli 5,8 mm e un peso super piuma. Parliamo di un device che ha pro e contro, ma sicuramente si differenzia dalla massa per la sua portabilità, ma non senza qualche compromesso. Ecco la nostra prova completa.
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto
Pensato per il professionista sempre in movimento, HP Elitebook Ultra G1i 14 abbina una piattaforma Intel Core Ultra 7 ad una costruzione robusta, riuscendo a mantenere un peso contenuto e una facile trasportabilità. Ottime prestazioni per gli ambiti di produttività personale con un'autonomia lontano dalla presa di corrente che permette di lavorare per tutta la giornata
Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso
Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso
Basato su piattaforma Qualcomm Snapdragon X Plus a 8 core, il nuovo Microsoft Surface Pro 12 è un notebook 2 in 1 molto compatto che punta sulla facilità di trasporto, sulla flessibilità d'uso nelle differenti configurazioni, sul funzionamento senza ventola e sull'ampia autonomia lontano dalla presa di corrente
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 04-04-2003, 11:24   #1
_Jc_
Senior Member
 
L'Avatar di _Jc_
 
Iscritto dal: Jul 2000
Città: Trana (Torino)
Messaggi: 141
Firewall con iptables... chi ci coregge il compitino ?

Io e miei amici abbiamo cercato di creare uno script per farci un piccolo firewall casalingo con una macchina dedicata ad esso, e prendendo spunto da varie guide abbiamo realizzato questo piccolo script che pubblichiamo qui per farlo correggere e sperando che possa servire anche ad altri.
ilsensine che dici mi correggi il compitino ?

Codice:
#!/bin/sh
#
## ========== IMPOSTAZIONE VARIABILI ========== ##
#
ipt="/sbin/iptables"
echo="/bin/echo"
lan=192.168.0.0/24
red=eth1
green=eth0
#
## ========== PULIZIA DELLE CATENE ========== ##
#
 # RESET DELLE REGOLE INPUT, OUTPUT, FORWARD
$ipt -F
 # 
 # DELETE DELLE CATENE CREATE DALL'UTENTE 
$ipt -X
 # 
 # RESET DEI CONTATORI
$ipt -Z
 #
 # RESET DELLE TABELLE DI MANGLE E DI NAT
$ipt -t mangle -F
$ipt -t nat -F
#
## ========== SETTAGGI DELLE REGOLE DI DEFAULT ========== ##
#
$ipt -P INPUT DROP
$ipt -P OUTPUT DROP
$ipt -P FORWARD DROP
#
## ========== SETTAGGI DI IPFORWARDING ========== ##
# 
 # DISABILITA L'IP FORWARDING
$echo "0" > /proc/sys/net/ipv4/ip_forward
 #
 # DISABILITA TUTTI GLI ECHO ICMP
$echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
 #
 # DISABILITA GLI ECHO BROADCAST ICMP
$echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
 # 
 # IMPOSTA LA PROTEZIONE CONTRO ATTACCHI SPOOFING
$echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
$echo "1" > /proc/sys/net/ipv4/tcp_syncookies
$echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter
 #
 # ABILITA IL LOG IN /var/log/messages DEI PACCHETTI MALFORMATI E LI SCARTA AUTOMATICAMENTE
$echo "1" > /proc/sys/net/ipv4/conf/all/log_martians
$echo "0" > /proc/sys/net/ipv4/conf/all/accept_source_route
$echo "0" > /proc/sys/net/ipv4/conf/all/accept_redirects
#
## ========== SETTAGGI NAT ========== ##
# 
 # ABILITA IL MASCHERAMENTO DEGLI INDIRIZZI LAN
$ipt -t nat -A POSTROUTING -s $lan -j MASQUERADE
#
## ========== SETTAGGI PERSONALIZZAZIONE FIREWALL ==========  ##
#
 # SCARTO DEI PACCHETTI MALFORMATI
$ipt -A INPUT -m unclean -j DROP
 # 
 # ABILITA LA CONNESSIONE SSH LATO LAN
$ipt -A INPUT -s $lan -i $green -p tcp --dport 22 -j ACCEPT
$ipt -A OUTPUT -d $lan -o $green -p tcp --sport 22 -j ACCEPT
 #
 # SCARTA I PACCHETTI DESTINATI AL FIREWALL PROVENIENTI DALLA WAN
$ipt -A INPUT -i $red -j DROP
 #
 # BLOCCA I PACCHETTI IN USCITA DAL FIREWALL LATO WAN
$ipt -A OUTPUT -o $red -j DROP
 #
 # ABILITA DNS (53)
$ipt -A FORWARD -s $lan -p tcp --dport 53 -j ACCEPT
$ipt -A FORWARD -s $lan -p udp --dport 53 -j ACCEPT
$ipt -A FORWARD -d $lan -p tcp --sport 53 -j ACCEPT
$ipt -A FORWARD -d $lan -p udp --sport 53 -j ACCEPT
 #
 # ABILITA HTTP (80), HTTPS (443), PROXY (8080)
$ipt -A FORWARD -s $lan -p tcp --dport 80 -j ACCEPT
$ipt -A FORWARD -d $lan -p tcp --sport 80 -j ACCEPT
$ipt -A FORWARD -s $lan -p tcp --dport 8080 -j ACCEPT
$ipt -A FORWARD -d $lan -p tcp --sport 8080 -j ACCEPT
$ipt -A FORWARD -s $lan -p tcp --sport 443 -j ACCEPT
$ipt -A FORWARD -d $lan -p tcp --sport 443 -j ACCEPT
 #
 # ABILITA SMTP (25)
$ipt -A FORWARD -s $lan -p tcp --dport 25 -j ACCEPT
$ipt -A FORWARD -d $lan -p tcp --sport 25 -j ACCEPT
 #
 # ABILITA POP3 (110)
$ipt -A FORWARD -s $lan -p tcp --dport 110 -j ACCEPT
$ipt -A FORWARD -d $lan -p tcp --sport 110 -j ACCEPT
 #
 # BLOCCA TUTTI I PACCHETTI IN TRANSITO CHE NON SODDISFANO LE REGOLE 
 $ipt -A FORWARD -j DROP
 #
 # ABILITO L'IP FORWARD
$echo "1" > /proc/sys/net/ipv4/ip_forward
 # 
#
#
## ========== REGOLE DA VERIFICARE ========== ##
# 
# $ipt -A FORWARD -d $lan -p icmp ! --icmp-type echo-request -j ACCEPT
# $ipt -A FORWARD -d $lan -p icmp ! --icmp-type time-exceeded -j ACCEPT
#iptables -N syn-flood
#iptables -A INPUT -i $red -p tcp syn -j syn-flood
#iptables -A syn-flood -m limit limit 1/s limit-burst 4 -j RETURN
#iptables -A syn-flood -j DROP
#iptables -A FORWARD -d $lan -p icmp -j ACCEPT
_Jc_ è offline   Rispondi citando il messaggio o parte di esso
Old 04-04-2003, 11:36   #2
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Giusto un esempio, vale anche per gli altri casi:
Quote:
$ipt -A FORWARD -d $lan -p tcp --sport 443 -j ACCEPT
Ottimo, quindi chiunque da fuori può mandare pacchetti a suo piacimento dentro la tua lan, purché i pacchetti abbiano come porta sorgente la 443
Aspè, qual'è l'indirizzo pubblico della tua lan che la hackko?

Usa questa regola, vale per _tutte_ le situazioni nelle quali ricevi pacchetti di risposta (la puoi usare sia nella catenda di forward che di input, con le dovute modifiche):
$ipt -A FORWARD -d $lan -m state --state ESTABLISHED,RELATED -j ACCEPT
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 04-04-2003, 13:52   #3
_Jc_
Senior Member
 
L'Avatar di _Jc_
 
Iscritto dal: Jul 2000
Città: Trana (Torino)
Messaggi: 141
Inanzitutto grazie per la risposta

Se vuoi bombarci il nostro ip è 207.46.249.27 (www.microsoft.com )

Quote:
Ottimo, quindi chiunque da fuori può mandare pacchetti a suo piacimento dentro la tua lan, purché i pacchetti abbiano come porta sorgente la 443


Quindi la stessa cosa vale anche per la porta 80, 110 ect... allora dovrei scrivere le regole così ?

Codice:
$ipt -A FORWARD -s $lan -p tcp --dport 80 -j ACCEPT
$ipt -A FORWARD -d $lan -m state --state ESTABLISHED,RELATED -j ACCEPT
in modo da poter far stabilire la connessione dalla mia lan verso la porta scelta e poi la seconda regola serve per poter ottenere le risposte su quella determinata porta ?

Non è che mi spiegheresti gentilmente l'utilità delle ultime regole dato che non sapevamo se utilizzarle o meno

Grazie per le risposte, e speriamo che questo script non serva solo a noi ma anche ad altri utenti sul forum [/code]
_Jc_ è offline   Rispondi citando il messaggio o parte di esso
Old 04-04-2003, 14:20   #4
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Basta che abiliti in ingresso una sola volta i pacchetti con stato established o related, e vale per tutte le situazioni.

Quote:
# $ipt -A FORWARD -d $lan -p icmp ! --icmp-type echo-request -j ACCEPT
# $ipt -A FORWARD -d $lan -p icmp ! --icmp-type time-exceeded -j ACCEPT
Accetta tutti i pacchetti icmp tranne echo e timeout.
nb la documentazione dice che "!" va dopo --icmp-type...boh...

Quote:
#iptables -N syn-flood
#iptables -A INPUT -i $red -p tcp syn -j syn-flood
#iptables -A syn-flood -m limit limit 1/s limit-burst 4 -j RETURN
#iptables -A syn-flood -j DROP
Una piccola protezione per i DoS. Blocca i pacchetti tcp di tipo syn troppo frequenti.
Nella seconda riga occorrerebbe scrivere "--syn", non "syn"
Guarda man iptables per altre informazioni sui pacchetti syn; probabilmente nel tuo caso devi bloccare i pacchetti syn del tutto.

Quote:
#iptables -A FORWARD -d $lan -p icmp -j ACCEPT
Accetta tutti i pacchetti icmp destinati alla lan. Se è questo che vuoi, le righe su echo-request e time-exceeded non hanno senso.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 04-04-2003, 14:45   #5
_Jc_
Senior Member
 
L'Avatar di _Jc_
 
Iscritto dal: Jul 2000
Città: Trana (Torino)
Messaggi: 141
[color=red][color]
Dovremmo offrirti una cena per l'aiuto che ci stai dando

Secondo te ha senso specificare le due regole :
Codice:
$ipt -A FORWARD -d $lan -p icmp ! --icmp-type echo-request -j ACCEPT
$ipt -A FORWARD -d $lan -p icmp ! --icmp-type time-exceeded -j ACCEPT
anche se all'inizio abbiamo inserito :
Codice:
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
E quella "piccola" protezione contro i DoS secondo te è utile , necessaria o perfezionabile ?
Scusa la valanga di domande ma ne ho ancora una "Le sai tutte ?" [/code]
_Jc_ è offline   Rispondi citando il messaggio o parte di esso
Old 04-04-2003, 14:49   #6
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Quote:
Originally posted by "_Jc_"


Secondo te ha senso specificare le due regole :
Codice:
$ipt -A FORWARD -d $lan -p icmp ! --icmp-type echo-request -j ACCEPT
$ipt -A FORWARD -d $lan -p icmp ! --icmp-type time-exceeded -j ACCEPT
anche se all'inizio abbiamo inserito :
Codice:
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
Bè credo proprio di no

Quote:
E quella "piccola" protezione contro i DoS secondo te è utile , necessaria o perfezionabile ?
Scusa la valanga di domande ma ne ho ancora una "Le sai tutte ?"
Inutile, se non hai servizi accessibili dall'esterno, tipo un server web o simili.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 04-04-2003, 17:59   #7
DaRkBoDoM
Senior Member
 
L'Avatar di DaRkBoDoM
 
Iscritto dal: Aug 2002
Messaggi: 400
Codice:
$ipt -t mangle -F
Io non resetterei la catena di mangle, in quanto nello script non ne fai utilizzo e, così facendo, potresti invece cancellare impostazioni messe da altri script (X es io su mangle ho il filtro dei pacchetti QOS su ppp0 che e' gestito da uno script a parte)

Codice:
 # ABILITA IL LOG IN /var/log/messages DEI PACCHETTI MALFORMATI E LI SCARTA AUTOMATICAMENTE
Si dice LOGGING :P

Codice:
 # BLOCCA TUTTI I PACCHETTI IN TRANSITO CHE NON SODDISFANO LE REGOLE
$ipt -A FORWARD -j DROP
Visto che la policy di default e' DROP, questo e' abbastqanza inutile

Codice:
# $ipt -A FORWARD -d $lan -p icmp ! --icmp-type echo-request -j ACCEPT
# $ipt -A FORWARD -d $lan -p icmp ! --icmp-type time-exceeded -j ACCEPT
Così i timeout riescono a passare in quanto matchano la prima regola... io farei qualcosa tipo:
$ipt -A FORWARD -d $lan -p icmp --icmp.type echo-request -J DROP
$ipt -A FORWARD -d $lan -p icmp --icmp.type time-exceeded -J DROP
$ipt -A FORWARD -d $lan -p icmp -J ACCEPT

Inoltre non includerei la LAN nelle limitazioni del Syn Flood almeno che tu non abbia motivi particolari per considerarla insicura.

Ciao
__________________
-=( Trust No One )=-
DaRkBoDoM è offline   Rispondi citando il messaggio o parte di esso
Old 04-04-2003, 20:04   #8
Daniele
Senior Member
 
L'Avatar di Daniele
 
Iscritto dal: Jul 1999
Città: Fermo (FINALMENTE FM!!!)
Messaggi: 828
io non ne capisco quasi niente, ma se lo ripubblichi con tutte le correzioni mi fai un piacere...
__________________
- Visita il mio blog
Daniele è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione Samsung Galaxy S25 Edge: il top di gamma ultraso...
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto HP Elitebook Ultra G1i 14 è il notebook c...
Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso Microsoft Surface Pro 12 è il 2 in 1 pi&u...
Recensione REDMAGIC Astra Gaming Tablet: che spettacolo di tablet! Recensione REDMAGIC Astra Gaming Tablet: che spe...
Dopo un mese, e 50 foto, cosa abbiamo capito della nuova Nintendo Switch 2 Dopo un mese, e 50 foto, cosa abbiamo capito del...
Alchimia? No, scienza: ecco come produrr...
Il CISPE chiede di annullare l'acquisizi...
La Now Bar supporterà il doppio d...
Vecchi Bitcoin, guadagno mostruoso: bale...
Nel 2018 Samsung snobbò NVIDIA: u...
Provare i vestiti senza mai uscire di ca...
SanDisk High Bandwidth Flash (HBF): un c...
Panasonic presenta Aquarea DHW, pompa di...
Il bracciale Meta leggerà i gesti...
iOS e Android sotto attacco: per l'antit...
A Verona dopo i monopattini ecco le e-bi...
Itch.io come Steam: al bando i giochi pe...
Digitalizzazione, identità e AI: ...
Kindle Colorsoft: arriva la versione da ...
Electra ottiene altri 433 milioni di eur...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 02:26.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v