PDA

Visualizza Versione Completa : Configurazione manuale del firewall di OS X



notorious
06-09-05, 22:13
Salve a tutti. :D
Volendo utilizzare il firewall per poter filtrare indirizzi udp, sono costretto a configurare manualmente ipfw. Dopo aver cercato un po' sul web, l'ho configurato tramite il file /etc/ipfw.conf. Così veniva consigliato su quel sito (ogni riga a davanti il comando add):


00010 divert 8668 ip from any to any via ppp0
00900 allow ip from any to any via lo*
00901 deny log logamount 500 ip from 127.0.0.0/8 to any
00902 deny log logamount 500 ip from any to 127.0.0.0/8
01001 allow ip from any to any out
01002 allow tcp from any to any established
01003 allow ip from any to any frag
01004 allow icmp from any to any in icmptype 0,3,8,11,12,14,16,18
03000 allow udp from any 67 to any 68 in
03001 allow udp from any 123 to any 1024-65535 in
03003 allow udp from any 53 to any 1024-65535 in
04002 allow tcp from any to any 427,548 in
04003 allow tcp from any to any 139 in
04005 allow tcp from any to any 631 in
05012 allow tcp from any to any 4662 in
05013 allow udp from any to any 10929 in
53005 deny log logamount 500 ip from any to any
65535 allow ip from any to any

Con questa configurazione, edonkey2000 si connette con un id alto (almeno credo, si vede dal log sul programma stesso?), ma non riesco a condividere nulla in rete.
Allora, ho provato a fare in un'altra maniera: ho disattivato ipfw da terminale (ipfw flush), l'ho riattivato tramite Preferenze di sistema/Condivisione/firewall, tramite ipfw list ho ottenuto l'elenco delle regole del firewall, e da questo mi sono creato un ipfw.conf come viene riportato qui sotto:


# Impostazioni prese dal firewall preimpostato:
add 02000 allow ip from any to any via lo*
add 02010 deny ip from 127.0.0.0/8 to any in
add 02020 deny ip from any to 127.0.0.0/8 in
add 02030 deny ip from 224.0.0.0/3 to any in
add 02040 deny tcp from any to 224.0.0.0/3 in
add 02050 allow tcp from any to any out
add 02060 allow tcp from any to any established
add 02070 allow tcp from any to any 548 in
add 02080 allow tcp from any to any 427 in
add 02090 allow tcp from any to any 139 in
add 02100 allow tcp from any to any 3689 in
add 02110 allow tcp from any to any 631 in
add 02120 allow tcp from any to any 515 in
add 02130 allow tcp from any to any 4662 in

# Permettere connessioni edonkey2000 in entrata:
add 5012 allow tcp from any to any 4662 in
add 5013 allow udp from any to any 10929 in

add 12190 deny tcp from any to any
add 65535 allow ip from any to any
Usando queste regole, riesco a condividere i servizi normalmente (documenti, windows, stampa) ma non riesco ad ottenere un id alto, né a condividere la connessione. Inoltre, al lancio del firewall da terminale, ottengo il seguente errore:

MacMini:/etc andrearomagnoli$ sudo /Library/StartupItems/ipwf/ipwf net.inet.ip.fw.verbose: 1 -> 1
net.inet.ip.fw.verbose_limit: 500 -> 500
ipfw: getsockopt(IP_FW_ADD): Invalid argument

Quali regole dovrei aggiungere e dove? Considerate che voglio:
1) condividere i documenti e la stampante
2) condividere la connessione internet per la navigazione web, posta, skyppe e messenger verso altri computer della rete
ciao :)

PS: se c'è un modo + semplice, fatemi sapere 8)
PPS: senza firewall, funziona tutto :lol:

EDIT inserisco uno schema che descrive la configurazione della rete, per maggiore chiarezza; la nuvoletta è internet, il vecchio iMac è il mio mac mini, e al posto della airport ho uno switch ethernet :wink:
http://img321.imageshack.us/img321/7824/pastedgraphic46mh.jpg

avrobay
06-09-05, 23:10
Perdona la domanda ingenua, ma perché non si può fare tutto questo con la normale interfaccia in preferenze di sistema?

http://www.tuttologia.com/forumtutor/firewall.jpg

notorious
07-09-05, 00:39
Perdona la domanda ingenua, ma perché non si può fare tutto questo con la normale interfaccia in preferenze di sistema?
Scusami tu, effettivamente non ho premesso che ho panther, e mi manca proprio la casella dove inserire le porte udp tramite interfaccia :(

PS: Scusate comunque per la lunghezza e la tipologia del post, e se sono stato troppo "tecnico" (soprattutto perché di reti non ci capisco nulla! :P ); dovrei essere un pochetto + sintetico quando scrivo i messaggi?
PPS: lo regge bene tiger un mac mini con 256 MB di ram?

flashcream
07-09-05, 00:43
Scusami tu, effettivamente non ho premesso che ho panther, e mi manca proprio la casella dove inserire le porte udp tramite interfaccia :(


non vorrei sbagliare ma panther non fa differenza tra udp e tcp quindi quando apri una porta questa è aperta per ogni protocollo

non hai che da provare... :)

avrobay
07-09-05, 00:46
Perdona la domanda ingenua, ma perché non si può fare tutto questo con la normale interfaccia in preferenze di sistema?
Scusami tu, effettivamente non ho premesso che ho panther, e mi manca proprio la casella dove inserire le porte udp tramite interfaccia :(

PS: Scusate comunque per la lunghezza e la tipologia del post, e se sono stato troppo "tecnico" (soprattutto perché di reti non ci capisco nulla! :P ); dovrei essere un pochetto + sintetico quando scrivo i messaggi?
PPS: lo regge bene tiger un mac mini con 256 MB di ram?

:)
Il tuo è indubbiamente un post tecnico, ma che male c'è? Anzi!
Io purtroppo non so aiutarti ma nel forum ci sono persone con competenze diverse dalle mie!

256 di Ram è poco purtroppo. Tiger gira ovviamente, ma presto sentirai l'esigenza di acquistarne altra.

avrobay
07-09-05, 00:51
Scusami tu, effettivamente non ho premesso che ho panther, e mi manca proprio la casella dove inserire le porte udp tramite interfaccia :(


non vorrei sbagliare ma panther non fa differenza tra udp e tcp quindi quando apri una porta questa è aperta per ogni protocollo

non hai che da provare... :)

Segnalo questo articolo tecnico di Apple (è stato pubblicato "ai tempi" di Panther):
http://docs.info.apple.com/article.html?artnum=93208

macric
07-09-05, 01:17
prova questo shareware : http://www.macupdate.com/info.php/id/5996
alemeno non diventi scemo dietro terminale... di facile configurazione e gestione - qualcosa di freeware c'è ma al momento non ricordo...



Ric

flashcream
07-09-05, 07:31
ci sarebbe anche questo... è un pannello di preferenze di sistema (anche tiger compatibile) SunShield:

http://www.sunprotectingfactory.com/sunShield/shield_features.html

mi pare interessante... è un'interfaccia che gestisce proprio ipfw di mac os x :)

notorious
07-09-05, 13:25
Grazie mille per le risposte! :D

non vorrei sbagliare ma panther non fa differenza tra udp e tcp quindi quando apri una porta questa è aperta per ogni protocollo
Ho provato aprendo le porte tcp e udp per edonkey da interfaccia, ma continua a connettersi con id basso (però strano, dice che la 4662 non è raggiungibile, ma l'ho aperta); inoltre, ho listato da terminale tutte le regole:


MacMini:/Users/andrearomagnoli root# ipfw list
00010 divert 8668 ip from any to any via ppp0
...
02180 allow tcp from any to any 4662 in
02190 allow tcp from any to any 10929 in
...

come si vede, le porte immesse da interfaccia le considera tutte tcp.

256 di Ram è poco purtroppo. Tiger gira ovviamente, ma presto sentirai l'esigenza di acquistarne altra.
Mantenendo però lo stesso hardware (nel mio caso la ram), passando da panther a tiger avrei un miglioramento o un peggioramento (256 MB sono pochi anche qui, quando apro più applicazioni :( )?

per macric: l'avevo già provato, ma mi diceva che dopo un certo periodo non avrebbe più funzionato; cmq grazie lo stesso ;)

per flashcream: grazie della segnalazione, appena ho un po' di tempo lo provo :wink:

avrobay
07-09-05, 13:31
256 di Ram è poco purtroppo. Tiger gira ovviamente, ma presto sentirai l'esigenza di acquistarne altra.
Mantenendo però lo stesso hardware (nel mio caso la ram), passando da panther a tiger avrei un miglioramento o un peggioramento (256 MB sono pochi anche qui, quando apro più applicazioni :( )?

Mentre dopo il passaggio da Jaguar a Panther siamo stati tutti d'accordo nel sottolineare come il nuovo sistema operativo avesse portato miglioramenti nelle prestazioni generali, con il passaggio da Panther a Tiger ho letto di tutto e il contrario di tutto.
La mia impressione è che più o meno Tiger e Panther chiedano le stesse risorse al computer.

notorious
08-09-05, 23:26
Aiutandomi in parte col terminale, in parte con sunshield, sono riuscito ad ottenere quasi tutto quello che volevo. Unico neo, non riesco a trovare l'elenco di porte usate da msn messenger 7 per windows (che purtroppo i miei amici, quando si connettono da casa mia, vogliono usare, e io sono costretto a disattivare il firewall). Sapete qualcosa in proposito? Spedisco l'elenco delle regole attualmente impostate sul firewall:


00010 divert 8668 ip from any to any via ppp0
02000 allow ip from any to any via lo*
02010 deny ip from 127.0.0.0/8 to any in
02020 deny ip from any to 127.0.0.0/8 in
02030 deny ip from 224.0.0.0/3 to any in
02040 deny tcp from any to 224.0.0.0/3 in
02050 allow tcp from any to any out
02060 allow tcp from any to any established
02070 allow tcp from any to any 548 in
02080 allow tcp from any to any 427 in
02090 allow tcp from any to any 139 in
02100 allow tcp from any to any 3689 in
02110 allow tcp from any to any 631 in
02120 allow tcp from any to any 515 in
05012 allow tcp from any to any 4662 out
05013 allow udp from any to any 10929 out
05014 allow tcp from any to any 4662 in
05014 allow udp from any to any 10929 in
06000 allow tcp from any to any 80,8080 in
06001 allow tcp from any to any 110,25 in
06002 allow tcp from any to any 1863,6891,6892,6901,14300
06003 allow udp from any to any 6901,12352,7790
12190 deny tcp from any to any
65535 allow ip from any to any

Come si vede dalle ultime righe, ho aperto le porte di edonkey (4662tcp e 10929udp), ho abilitato la navigazione ai client connessi (80,8080) e la ricezione di email (110,25). Nelle due righe successive ho abillitato le porte per il messenger, come suggerito da diversi siti, ma i messenger sui client non si collegano. :(

avrobay
08-09-05, 23:44
Unico neo, non riesco a trovare l'elenco di porte usate da msn messenger 7 per windows (che purtroppo i miei amici, quando si connettono da casa mia, vogliono usare, e io sono costretto a disattivare il firewall). Sapete qualcosa in proposito?

I tuoi amici si connettono con il loro pc passando dal tuo Mac (condivisione internet)?

notorious
08-09-05, 23:48
sì, uso il mac come un router (oltre che come mio computer personale... tanto per mettergli addosso un po' di invidia :lol: )

flashcream
08-09-05, 23:52
messenger se ti può essere utile utilizza l'intervallo 6891-6900 TCP

macric
09-09-05, 00:08
le porte da aprire sono queste :


1863 TCP (base per lo scambio di messaggi)
Da 6891 a 6900 TCP (scambio file)
6901 TCP (per la voce)
6901 UDP (per la voce)
12352 UDP
14300 TCP
7790 UDP


Buona Fortuna :)


P.S. sò impazzito pure io... flask lo sà :)

notorious
09-09-05, 00:15
le porte da aprire sono queste :


1863 TCP (base per lo scambio di messaggi)
Da 6891 a 6900 TCP (scambio file)
6901 TCP (per la voce)
6901 UDP (per la voce)
12352 UDP
14300 TCP
7790 UDP


Buona Fortuna :)


P.S. sò impazzito pure io... flask lo sà :)

Il pacchetto (dal punto di vista del router) deve essere entrante o uscente?
Grazie dell'augurio... e in effetti sto diventando mezzo matto :cry:

flashcream
09-09-05, 00:20
le porte da aprire sono queste :


1863 TCP (base per lo scambio di messaggi)
Da 6891 a 6900 TCP (scambio file)
6901 TCP (per la voce)
6901 UDP (per la voce)
12352 UDP
14300 TCP
7790 UDP


Buona Fortuna :)


P.S. sò impazzito pure io... flask lo sà :)

le hai messe tutte, perfetto... come sempre :)

io ho messo solo l'intervallo (per lo scambio files) perchè non lo vedevo riportato nel suo post

se non funzia.... non rimane che impazzire effettivamente :D

notorious
09-09-05, 00:27
Ale', ora posso anche impazzire... :wink:
Non funziona neanche così... avevo letto in giro che per l'invio non era necessario abilitare tutte le porte, e così un po' ne ho lasciate chiuse.
Vabbè, vorrà dire che a casa mia il messenger non si usa :twisted: (per i computer connessi al mac; sul mac funziona benissimo :lol: ).
Se qualcuno di voi ha configurato il firewall e il messenger funziona, potreste inviare l'output di

sudo ipfw list
da Terminale?

Vi sarei eternamente grato ;)

flashcream
09-09-05, 00:31
uote]

Il pacchetto (dal punto di vista del router) deve essere entrante o uscente?
Grazie dell'augurio... e in effetti sto diventando mezzo matto :cry:

cosa intendi per pacchetto? di che router stiamo parlando?

il firewall di mac os x blocca le richieste di apertura porte in entrata
(in uscita no di certo)

cmq sul router (se c'è e è lui l'indiziato del problema) devi indirizzare le stesse porte viste sopra verso l'ip del mac
(il router riceve una richiesta in entrata e indirizza verso il mac)
tutto ciò si chiama port forwarding

flashcream
09-09-05, 00:39
questa è la mia configurazione di firewall attivo:

02000 allow ip from any to any via lo*
02010 deny ip from 127.0.0.0/8 to any in
02020 deny ip from any to 127.0.0.0/8 in
02030 deny ip from 224.0.0.0/3 to any in
02040 deny tcp from any to 224.0.0.0/3 in
02050 allow tcp from any to any out
02060 allow tcp from any to any established
02070 allow tcp from any to any dst-port 6881 in
02080 allow tcp from any to any dst-port 4000 in
12190 deny tcp from any to any
20000 deny icmp from any to me in icmptypes 8
65535 allow ip from any to any


ho aperto solo per azureus e icq
e messenger mi va alla perfezione senza settare nulla..... non ci crederai ma è cosi

notorious
09-09-05, 00:41
uote]

Il pacchetto (dal punto di vista del router) deve essere entrante o uscente?
Grazie dell'augurio... e in effetti sto diventando mezzo matto :cry:

cosa intendi per pacchetto? di che router stiamo parlando?

il firewall di mac os x blocca le richieste di apertura porte in entrata
(in uscita no di certo)

cmq sul router (se c'è e è lui l'indiziato del problema) devi indirizzare le stesse porte viste sopra verso l'ip del mac
(il router riceve una richiesta in entrata e indirizza verso il mac)
tutto ciò si chiama port forwarding
Scusa, mi sono espresso male parlando di router. La mia rete consiste semplicemente nel mac che è direttamente connesso ad internet (con router intendevo lui) e condivide la connessione ad altri computer della rete stessa. Parlavo di entrata / uscita perché sia sunshield che la configurazione manuale di ipfw permettono di aggiungere questa opzione nelle regole (l'in /out alla fine di ogni regola che ho precedentemente postato).

flashcream
09-09-05, 00:48
boh... non ti capisco tanto

perchè apri la porta 80 in entrata? hai un server web attivo? (la condivisione web)

navighi lo stesso.... safari apre tranquillamente la porta 80 in uscita
(perchè quel firewall si occupa solo delle porte in entrata)

come vedi le ns due configurazioni non sono proprio uguali e soprattutto non capisco la tua prima riga :???:

notorious
09-09-05, 00:49
questa è la mia configurazione di firewall attivo:

ho aperto solo per azureus e icq
e messenger mi va alla perfezione senza settare nulla..... non ci crederai ma è cosi
Ops!! ho letto questo messaggio solo ora, l'hai inviato mentre scrivevo, e il mio messaggio l'ha messo in una nuova pagina :D
Ma il messenger funziona anche con eventuali computer connessi in rete?

PS: sul mac mini, il messenger non mi da problemi

flashcream
09-09-05, 00:52
Ma il messenger funziona anche con eventuali computer connessi in rete?



eh la cosa triste è.... che non lo so

magari domani provo.... in effetti sembra proprio quello il vero problema di messenger
come per Ric che sta dietro un switch ethernet

notorious
09-09-05, 01:07
boh... non ti capisco tanto

Scusa, ma di reti e di firewall come ho già detto non sono un esperto... la configurazione del firewall che ne è uscita è frutto + che altro di prove...


perchè apri la porta 80 in entrata? hai un server web attivo? (la condivisione web)
No, ma se non la apro, i computer connessi al mac non riescono a connettersi ad internet (l'ho notato casualmente attivando la Condivisione Web da preferenze di sistema)


navighi lo stesso.... safari apre tranquillamente la porta 80 in uscita
(perchè quel firewall si occupa solo delle porte in entrata)

Infatti i problemi non ce l'ho sul mac mini (l'unico che si era presentato è che edonkey aveva un id basso; il messenger o adium sul mac funziona benissimo) ma sui computer che hanno come gateway e dns l'ip del mac mini stesso. Ho fatto proprio adesso una prova con gaim invece di messenger (sul mio portatile connesso al mac), ma non funziona ugualmente... :(




come vedi le ns due configurazioni non sono proprio uguali e soprattutto non capisco la tua prima riga :???:
Se intendi 00010 divert 8668 ip from any to any via ppp0, ho notato che compare nel listato delle regole quando attivo la condivisione della connessione a internet (ppp0 credo sia il modem usb)

flashcream
09-09-05, 01:25
mmm.... mi scuso io invece

effettivamente se condividi la connessione la porta 80 deve essere aperta.... sorry

ric dovrebbe postare qualcosa su messenger..... ne stiamo parlando in chat e sembra esista una soluzione (nel suo caso)

:)

domani mi rileggo tutto per bene.... ora sono cotto :?

notorious
09-09-05, 01:41
(adesso vado a letto anche io, tranquilli! :D )
Mi scuso per non essere stato chiaro riguardo la "configurazione" della rete (configurazione è una parola un po' grossa... in effetti è una stupidata! :oops: ); effettivamente, rileggendo i miei primi post, ho notato che non l'ho descritta.
Ho trovato (non ho più voglia di scrivere neanche io, comincio ad essere stanco) un'immagine che bene o male descrive la mia rete; la inserisco nel mio primo post, a pagina 1 :wink: