Firestarter, la sicurezza su Linux

Firestarter è una semplice interfaccia grafica a iptables. Quest’ultimo è il firewall integrato che ogni kernel Linux contiene al suo interno. Ovviamente i comandi per gestire questo potente strumento integrato in ogni distribuzione richiedono una non proprio intuitiva conoscenza di una “grammatica” che potrebbe spaventare gli utenti appena approdati al pinguino.

Firestarter Logo

Naturalmente esiste già appositamente compilato e impacchettato nei repository predefiniti di Ubuntu.

sudo apt-get install firestarter

e con il download di qualche centinaia di Kb avremo il nostro firewall installato e pronto per essere configurato. Al primo avvio ci sarà un breve wizard che vi chiederà alcune cosette su come volete configurare il vostro firewall. Ad esempio su quale device vorrete attivare la vostra protezione, oppure se state condividendo la connessione a internet con altri pc.

La semplice interfaccia di Firestarter

L’interfaccia principale si suddivide in 3 tab rispettivamente Status (dove c’è appunto lo stato del firewall), Events dove vengono riportati sottoforma di un log, tutti i vari filtraggi di connessioni indesiderate (o meglio bloccate), ed infine Policy dove possiamo settare le regole del firewall nel caso di connessioni in entrata o in uscita tramite i tab Inbound e Outbound rispettivamente. E’ importante applicare le modifiche tramite il tasto Apply Policy per dare modo al firewall di impostare le regole.

Tips and Tricks

Apertura delle porte in Firestarter

Una volta abilitato il nostro firewall, noterete subito una massiccia schermatura delle connessioni. Non riuscirete nemmeno a navigare col vostro Firefox proprio perchè Firestarter sta già eseguendo il suo lavoro. Per ovviare a ciò dovremo posizionarci nel tab Outband Policy, spuntare Restrictive by Deafault, whitelist traffic, ovvero chiudere tutte le connessioni tranne quelle inserite manualmente. A questo punto cliccare su Add Rule e vi comparirà una sottofinestra nella quale potremo selezionare il tipo di service.

Policy Firestarter

A noi in particolare interesserà quindi aprire quelli di HTTP, HTTPS per poter navigare. Penserà Firestarter a proporre automaticamente le porte che sono utilizzate di default per i servizi più comuni. Questo procedimento è lo stesso per aprire le porte “custom”, ad esempio per aMule o Azureus, i noti e già discussi programmi p2p, che necessitano di alcune porte aperte per poter lavorare al meglio.

Per dare un’idea questa è la mia “whitelist”

Whitelist Firestarter

La mia whitelist su Firestarter

Avviare Firestarter all’avvio [thanks to informatica.wordpress.com]

Per poter fare in modo che ad ogni avvio Firestarter si avvii automaticamente la procedura richiede alcuni passi. Infatti è un software che richiede i permessi di root e quindi dovremo fare in modo che all’avvio il sistema operativo non ce la richieda ogni volta.

Cominciamo editando il file che contiene i permessi per il funzionamento di sudo, il comando tramite il quale si acquisiscono temporaneamente i privilegi di amministratore su Ubuntu (ma anche su altre distribuzioni). Apriamo il nostro fido terminale e digitiamo

sudo visudo

Scorriamo la schermata verso il basso con le freccette e posizioniamoci alla fine del file, per intenderci dopo le righe

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL.

E’ in quest’area che dobbiamo scrivere

nomeutente ALL=NOPASSWD:/usr/sbin/firestarter

dove per “nomeutente” si intende il vostro username, quello che usate normalmente per fare il login. Salvate premendo Ctrl+O ed uscite poi con la combinazione di tasti Ctrl+X. Adesso non rimane altro da fare che dire al sistema di far partire Firestarter all’avvio, andando sul menu di Ubuntu ( in questo caso la versione con Gnome)

Sistema->Preferenze->Sessioni

e cliccare sulla scheda Programmi d’avvio. Qui premendo sul bottone Aggiungi dovremo digitare

sudo firestarter –start-hidden

Al riavvio Firestarter partirà posizionandosi nella tray icon senza disturbare.

30 Risposte a “Firestarter, la sicurezza su Linux”

  1. Axiel Dice:

    Se posso contribuire, dato che ci ho smanettato con Firestarter, ci sono cose che bisogna aggiungere alla esauriente guida che abbiamo letto :D
    Prima di tutto per essere diciamo sicuri e non avere problemi bisogna sia aprire le porte in Outbound che in Inbound.

    Io in Outbound ho messo queste(giusto per le mie esigenze ;) )

    Per aprire le porte ai BROWSER inserire:

    Name: HTTP
    Porta: 80
    When the source is: spuntare ANYONE

    Name: HTTPS
    Porta: 443
    When the source is: spuntare ANYONE

    Per aprire le porte all’FTP inserire:

    Name: FTP
    Porta: 21
    When the source is: spuntare ANYONE

    Per aprire le porte a AMULE:
    Nel mio client ho impostato per la porta TCP:4662 e per la UDP:4665, quindi:

    Name: TCP AMULE
    Porta: 4662
    When the source is: spuntare ANYONE

    Name: UDP AMULE
    Porta: 4665
    When the source is: spuntare ANYONE

    Bisogna poi aprire anche la porta per la rete KAD e la porta per il server (Donkeyserver 1-2-3-4-5-6 usano la porta 4242, ma in base a quale server si usa si può modificare)

    Name: KAD AMULE
    Porta: 4672
    When the source is: spuntare ANYONE

    Name: SERVER AMULE
    Porta: 4242
    When the source is: spuntare ANYONE

    Per l’Inbound ho messo queste:

    Per aprire le porte a AMULE:
    Nel mio client ho impostato per la porta TCP:4662 e per la UDP:4665, quindi:

    Name: TCP AMULE
    Porta: 4662
    When the source is: spuntare ANYONE

    Name: UDP AMULE
    Porta: 4665
    When the source is: spuntare ANYONE

    Bisogna poi aprire anche la porta per la rete KAD e la porta per il server (Donkeyserver 1-2-3-4-5-6 usano la porta 4242, ma in base a quale server si usa si può modificare)

    Name: KAD AMULE
    Porta: 4672
    When the source is: spuntare ANYONE

    Name: SERVER AMULE
    Porta: 4242
    When the source is: spuntare ANYONE

    Come vedete, la porta 80 (Http), 443 (Https) e 21(Ftp) le ho messe SOLO in Outboud, sennò risultano Chiuse invece che Invisibili (che per me è la miglior sicurezza)

    Poi cliccando su PREFERENZE e nella finestra che si apre, cliccare su -Filtro ICMP-, flaggate la casella -Enable ICMP filtering- e alla fine applicate. Questo toglierà la possibilità di essere pingati da persone che rompono :D

    Il tutto alla fine può essere testato seguendo questi test a questo indirizzo: ShieldsUp – https://www.grc.com/x/ne.dll?bh0bkyd2

    Spero che questo vi sia gradito :)

  2. lordneo Dice:

    grazie Axiel delle tue precisazioni. Se il tuo commento fosse stato sotto altri, l’avrei ricopiato nel post principale. Quindi me la prendo un po’ comoda, e appena ho tempo aggiungo e aggiorno tutto. ;)

  3. Rodolfo Dice:

    Non so se il problema e solo mio ma Firestarter non mi fà il routing DNS come avviene invece in Winzoz. Ovvio direte voi e facilmente risolvibile indicando direttamente gli IP del nostro provider o di opendns.com per esempio. Complicandosi un po’ la vita credo si potrebbe installare il server DNS direttamente sulla macchina che funge da router.

  4. lordneo Dice:

    ciao Rodolfo.. non ho capito se le porte sono aperte in Firestarter..
    In caso prova ad aggiungere la regola, abilitando il servizio DNS (è già inserito di default con la sua porta).

    Ah, assicurati poi che nel tuo

    sudo gedit /etc/resolv.conf

    vi sia una stringa del genere

    nameserver “indirizzo ip”

    Nella mia macchina è impostato l’inidirizzo interno del router. Si occupa lui dei DNS e non ho mai avuto problemi.

  5. Raffaello Dice:

    Ciao Lord_neo, sono passato da Win a Ubuntu da una settimana e sono riuscito a settare credo tutto quanto grazie alle indicazioni di questa fantastica rete. Ieri ho installato aMule e oggi ho tentato di configurare Firestarter seguendo le indicazioni di questa pagina. Tutto sembra funzionare ma non riesco più a scaricare la posta. Non ho indicato quali sono le porte da aprire per il programma di posta. Saresti così gentile da indicarmi che tipo di dati devo inserire? Ho due indirizzi posta su Thunderbird e per entrambi non ho la connessione sicura. Spero di aver dato informazioni sufficienti. Ti pregherei se possibile di essere altrettanto chiaro che nel blog perché sono del tutto nuovo al linguaggio di Linux.
    Grazie
    Raffaello

  6. lordneo Dice:

    Il procedimento dovrebbe essere semplice…

    Apri il tuo firestarter. Posizionati nel tab policy e seleziona inbound traffic. Nella sezione Allow Service clicca col destro e poi dai Add Rule. A questo punto nella nuova finestrella che ti si apre seleziona il servizio che nel tuo caso, come nel caso comune, dovrebbe essere “POP3″ e seleziona when the source in “anyone”…Ora aggiungi.

    Ripeti l’operazione selezionando questa volta il servizio “SMTP”.

    A questo punto seleziona Outbound Traffic e ripeti l’operazione per entrambi i service.

    Una volta aggiunte tutte le dovute regole, clicca su Apply Policy. E il gioco è fatto… dovrebbe funzionare così e fammi sapere…

    Ciao

  7. Raffaello Dice:

    Grazie Lord_neo, tutto è a posto. Buon lavoro!

  8. Sharaazad Dice:

    Potresti approfondire il discorso
    “Come vedete, la porta 80 (Http), 443 (Https) e 21(Ftp) le ho messe SOLO in Outboud, sennò risultano Chiuse invece che Invisibili (che per me è la miglior sicurezza)” ?

    Quali porte conviene mettere in questo modo? perkè le porte di amule,messe in entrambi non risultano chiuse? ecc ecc

    thx

  9. Luca Dice:

    Ho seguito con attenzione tutta la guida di installazione e settaggio el programma, purtroppo non riesco ad uscire su internet
    pur avendo settato come descritto la porta 80, come da guida ,qualcuno mi puo’ essere d’aiuto. Sono un utente alle prime armi, ringrazio chiunque possa darmi qualche dritta.
    Luca.

  10. lordneo Dice:

    @ luca

    fai delle prove settandole prima solo in outbound, poi solo in inbound… poi prova in entrabe e vedi come ti funzionano :)

    facci sapere…

    @sharaazad

    teoricamene con i settaggi nel post di axiel, l’apertura della porta c’è solo in uscita….

  11. Sharaazad Dice:

    Ho letto il manuale che c’è sul sito,ecco la spiegazione:
    con quel settaggio l’apertura della porta è solo in uscita però firestarter usa questo metodo: manda un pacchetto in uscita sulla porta 80 e sa che deve arrivare un pacchetto di risposta,allora anche se la porta 80 è chiusa in ingresso questo pacchetto verrà fatto passare :)
    Con lo stesso settaggio riesco a giocare a ultima online senza aver abilitato la porta usata in ingresso =)
    Così facendo,come diceva axiel, si è invisibili :)

  12. vin Dice:

    ringrazio per la guida..vorrei pero far presente che spesso facendo i vari copia e incolla si fa sempre l’errore tra “–” due trattini e uno “–” comando non valido..

    sudo firestarter –start-hidden (riga errata..non vi parte piu il firewall)
    sudo firestarter –start-hidden (giusta)

    questo errore purtroppo si ripete spesso perchè chi posta le guide GIUSTAMENTE non ha pazienza di correggerlo..e tutti i neofiti impazziscono piu del dovuto

  13. lordneo Dice:

    ciao vin la tua segnalazione è corretta.. :) ma come puoi notare anche il tuo post è sbagliato.. :) non ti preoccupare… si tratta di un bug di wordpress.. ;)

  14. Bicio Dice:

    Ciao lordneo
    Ho appena installato firestarter perchè sono un meganiubbo di Linux ma ho l’esigenza di condividere la connessione ad internet con dei PC in giro per casa, ti spiego il problema:

    Ho settato le rules
    -prima in outbound (http e https)
    -poi in inbound (come sopra)

    1) Se FS è attivo non riesco a navigare neanche con l’host
    2) la condivisione non funzia… e i PC sono collegati in questo modo:
    ROUTER 192.168.1.1
    UBUNTU [eth0] 192.168.1.250 – 255.255.255.0 – GW 192.168.1.1
    UBUNTU [eth1] 192.168.0.251 – 255.255.255.0 – GW nessuno
    XP 192.168.0.XXX – 255.255.255.0 – GW 192.168.0.251 con DNS copiati dal file resolv.conf

    Schema di collegamento:

    WEB–Router–[UBUNTU ETH0-UBUNTU ETH1]–XPpro

    PROVE EFFETTUATE:
    **DA XP
    ——–Ping 192.168.0.251 —– OK
    ——–Ping 192.168.1.250 —– OK
    ——–Ping 192.168.1.1 ——– RICHIESTA SCADUTA

    **Da UBUNTU
    (ah! non so come fare il ping da una scheda ben precisa visto che XP è comunque collegato con la ETH1 immagino che ubuntu usi quella giusto?)

    ——–Ping 192.168.0.XXX —– OK

    Che altre prove devo fare?
    Penso che sia ovvio che se non pingo il router mi posso anche scordare il web su XP.

    Non sono un fenomeno con l’inglese e tradurmi tutto l’HOWTO sull’IP MASQUERADE mi sembra una roba improba….

    Ah!! dimenticavo se stoppo Firestarter la connessione riprende a vivere tranquillamente.
    Non so più dove sbattere la testa.
    Grazie per l’eventuale aiuto anche in PRV e scusami per il commento troppo lungo
    Bicio

  15. lordneo Dice:

    nn credo di avere capito bene il tuo problema per questo ti ho contattato via mail e ti ho linkato un forum dove credo possano aiutarti meglio di me. Purtroppo il forwarding non sono mai riuscito a settarlo nemmeno io.. Ho risolto con un router wireless

  16. kantor Dice:

    nasce un bel problema… se cerco di lanciare come hai spiegato tu il firestarter senza inserire la psswd… allora ho questo in risposta:
    Xlib: connection to ":0.0" refused by server
    Xlib: No protocol specified

    (firestarter:6640): Gtk-WARNING **: cannot open display:

    come se il server x avesse bisogno della psswd per far funzionare firestarter… idee?

  17. Lord_neo Dice:

    kantor nn mi è mai capitato questo errore…

    proverò a documentarmi…

  18. Alberto Dice:

    ciao

    ho letto la tua guida su firestarter. La trovo ben fatta…sintetica e molto chiara. Sto lavorando ad un wiki su firestarter per ubuntu (sito ufficiale di ubuntu). Potrei riutillizzare la tua guida…vorrei prenderla come base e riadattare alcune parti in base alle esigenze della guida.

    fammi sapere…se puoi magari per mail.

    grazie
    Alberto

  19. Web UI, Interfaccia Web con Deluge 0.5.5 « Lord_neo Dice:

    [...] Firestarter, la sicurezza su Linux [...]

  20. Dynamic DNS gratuito con NO-IP « Lord_neo Dice:

    [...] Firestarter, la sicurezza su Linux [...]

  21. michele Dice:

    domandina già fatta altrove ma ancora senza risposta:firestarter che uso da tempo con soddisfazione,è incompatibile con gutsy?parlo di ubuntu e kubuntu gutsy su due pc diversi,firestarter parte solo manualmente e dopo qualche minuto si disattiva da solo,se riattivato,riscompare poco dopo!grazie

  22. Lord_neo Dice:

    mi sembra molto strano visto che si basa su iptables che e’ imprescindibile da linux qualsiasi distro sia… appena arrivo a casa provo a testare…

  23. Lord_neo Dice:

    ho riscontrato pure io queste terminazioni improvvise di Firestarter.. mi documento meglio :)

  24. cucumiaoblog Dice:

    ciao io volevo sapere le porte da configurare per accedere con amsn e con ktorrent

  25. Lord_neo Dice:

    consulta questo documento http://wiki.ubuntu-it.org/Sicurezza/Firestarter
    guarda alla voce Regole Standart.. trovi delle tabelle con i valori standart delle porte da aprire…

  26. daniel Dice:

    Ho eseguito tutte le istruzioni per far avviare firestart in automatico ad ogni avvio di Ubuntu, soltanto che non vedo l’icona sulla tray icon.
    Come faccio a sapere se firestart è in esecuzione?
    Grazie

  27. daniel Dice:

    Inoltre a sessione avviata non riesco più ad aprire firestart per modificarne le impostazioni

  28. mikowen6 Dice:

    volevo avviare firestarter senza passwd come descritto sopra ma non mi si apre piu’ ho disistallato e ristallato ma non mi si accende piu

  29. polonio Dice:

    avevo anchio questo problema dopo aver seguito questa guida…. ho risolto togliendo la riga aggiunta dal comando “sudo visudo”…..

  30. harrykar Dice:

    Grazie mille ci voleva rompeva parecchio avviarlo manualmente.
    Noto che Firestarter si attiva prima che parta la connessione wireless e quindi “arrossisce” temporaneamente aspettando che si instauri la connessione col router.
    Esiste un modo per farlo aspettare ad avviarsi fino ache non si instauri prima la connessione(cmq questa e’ un’ inezia tanto per…) ?

    Tnx


Lascia un commento