|
Dimensione: 445
Commento:
|
Dimensione: 4441
Commento:
|
| Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
| Linea 1: | Linea 1: |
| Inserisci una descrizione per Paolo''''''Visnoviz/Prove1 | ## page was renamed from Paolo''''''Visnoviz/Prove1 ## page was renamed from Paolo''''''Visnoviz/Prove0 ## page was renamed from Paolo''''''Visnoviz/prove0 #format wiki #LANGUAGE it [[BR]] [[Indice()]] [[VersioniSupportate(hardy intrepid)]] |
| Linea 3: | Linea 10: |
| ## Please edit system and help pages ONLY in the moinmaster wiki! For more ## information, please see MoinMaster:MoinPagesEditorGroup. ##master-page:Unknown-Page ##master-date:Unknown-Date #acl MoinPagesEditorGroup:read,write,delete,revert All:read #format wiki #language it == Modello di pagina di Aiuto == Testo. |
= Introduzione = |
| Linea 13: | Linea 12: |
| === Esempio === {{{ xxx }}} |
Le tecniche di '''Port knocking''' permettono di aumentare considerevolmente la sicurezza di un server che deve garantire alcuni servizi non permanenti attraverso IP pubblici. Se s'inviano dei pacchetti a delle porte prestabilite sulle quali un demone è in ascolto e nel caso la sequenza sia corretta, questi attiverà un comando che potrà eseguire delle regole di [:Sicurezza/Iptables:iptables] che apriranno le porte necessarie alla connessione. Il vantaggio è notevole in quanto il server potrebbe rimanere sempre in ''stealth'' e aprire le porte per un determinato servizio solo in caso di necessità. |
| Linea 18: | Linea 15: |
| === Risultato === xxx |
= Preparativi = È necessario che il firewall [:Sicurezza/Iptables: iptables] sia configurato e attivo. = Installazione = Per utilizzare le tecniche di '''Port knocking''' è necessario [:AmministrazioneSistema/InstallareProgrammi:installare] il pacchetto ''knockd'', reperibile dal [:Repository/Componenti:componente] '''universe''' dei [:Repository:repository ufficiali]. = Configurazione = 0. Per fare in modo che il demone parta all'avvio del computer modificare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/default/knockd` in questo modo:{{{ START_KNOCKD=1 }}} 0. Sempre nel medesimo file `/etc/default/knockd` modificare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] impostando su quale interfaccia il demone dovrà rimanere in ascolto:{{{ KNOCKD_OPTS="-i eth0" }}} 0. Modificare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/knockd.conf` impostandolo come segue:{{{ [options] logfile = /var/log/knockd.log [openSSH] sequence = 7000,8000,9000 # Questa è la sequenza delle porte sulle quali knockd rimarrà in ascolto. Di default il protocollo è TCP. # Quali e quante porte usare è discrezionale. # sequence = 7000:udp,8000:tcp,9000:udp # Esempio con sequenza con porte miste udp/tcp seq_timeout = 30 #Tempo di attesa massimo per completare la sequenza. command = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT # Quando la sequenza verrà accettata verrà inserita una regola che aprirà la porta SSH standard. tcpflags = syn # Ulteriore filtro, sul tipo di flag del pacchetto iviato alla sequenza di porte. [closeSSH] sequence = 9000,8000,7000 # Questa è un'altra sequenza di porte sulle quali knockd rimarrà in ascolto. seq_timeout = 30 command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT # Quando la sequenza verrà accettata verrà inserita una regola che cancellerà quella creata in precedenza. tcpflags = syn }}} = Client = In realtà potrebbe essere sufficiente telnet o netcat ma sono comodi i client che si trovano sul sito di zeroflux (vedere sezione riferimenti) = Note = Si consiglia vivamente di non mantenere le porte di default. Queste possono essere a scelta tra 0 e 65535, preferibilmente non usare porte occupate. La sequenza può essere di numero superiore ai tre dell'esempio e si possono usare porte UDP e TCP. Si può configurare anche una chiusura a tempo delle porte, per questi ed altri parametri controllare il wiki che si trova nei riferimenti. La sezione "command" non è detto debba essere un comando iptables, potrebbe essere qualsiasi cosa, p.es.: "init 6", per un riavvio remoto del server, oppure un comando "sh" che lancia uno script complesso. Esistono altre soluzioni alle tecniche di port knocking, vedere la sezione riferimenti. = Ulteriori risorse = Port knocking in perl: [http://www.portknocking.org/] Wiki del progetto trattato in questa sede e vari client: [http://www.zeroflux.org/cgi-bin/cvstrac.cgi/knock/wiki] The PortKnockO Project [http://portknocko.berlios.de/] TCP Flags http://www.openskill.info/infobox.php?ID=694 ---- CategoryHomepage |
BR Indice() VersioniSupportate(hardy intrepid)
Introduzione
Le tecniche di Port knocking permettono di aumentare considerevolmente la sicurezza di un server che deve garantire alcuni servizi non permanenti attraverso IP pubblici. Se s'inviano dei pacchetti a delle porte prestabilite sulle quali un demone è in ascolto e nel caso la sequenza sia corretta, questi attiverà un comando che potrà eseguire delle regole di [:Sicurezza/Iptables:iptables] che apriranno le porte necessarie alla connessione. Il vantaggio è notevole in quanto il server potrebbe rimanere sempre in stealth e aprire le porte per un determinato servizio solo in caso di necessità.
Preparativi
È necessario che il firewall [:Sicurezza/Iptables: iptables] sia configurato e attivo.
Installazione
Per utilizzare le tecniche di Port knocking è necessario [:AmministrazioneSistema/InstallareProgrammi:installare] il pacchetto knockd, reperibile dal [:Repository/Componenti:componente] universe dei [:Repository:repository ufficiali].
Configurazione
Per fare in modo che il demone parta all'avvio del computer modificare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file /etc/default/knockd in questo modo:
START_KNOCKD=1
Sempre nel medesimo file /etc/default/knockd modificare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] impostando su quale interfaccia il demone dovrà rimanere in ascolto:
KNOCKD_OPTS="-i eth0"
Modificare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file /etc/knockd.conf impostandolo come segue:
[options] logfile = /var/log/knockd.log [openSSH] sequence = 7000,8000,9000 # Questa è la sequenza delle porte sulle quali knockd rimarrà in ascolto. Di default il protocollo è TCP. # Quali e quante porte usare è discrezionale. # sequence = 7000:udp,8000:tcp,9000:udp # Esempio con sequenza con porte miste udp/tcp seq_timeout = 30 #Tempo di attesa massimo per completare la sequenza. command = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT # Quando la sequenza verrà accettata verrà inserita una regola che aprirà la porta SSH standard. tcpflags = syn # Ulteriore filtro, sul tipo di flag del pacchetto iviato alla sequenza di porte. [closeSSH] sequence = 9000,8000,7000 # Questa è un'altra sequenza di porte sulle quali knockd rimarrà in ascolto. seq_timeout = 30 command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT # Quando la sequenza verrà accettata verrà inserita una regola che cancellerà quella creata in precedenza. tcpflags = syn
Client
In realtà potrebbe essere sufficiente telnet o netcat ma sono comodi i client che si trovano sul sito di zeroflux (vedere sezione riferimenti)
Note
Si consiglia vivamente di non mantenere le porte di default. Queste possono essere a scelta tra 0 e 65535, preferibilmente non usare porte occupate. La sequenza può essere di numero superiore ai tre dell'esempio e si possono usare porte UDP e TCP. Si può configurare anche una chiusura a tempo delle porte, per questi ed altri parametri controllare il wiki che si trova nei riferimenti. La sezione "command" non è detto debba essere un comando iptables, potrebbe essere qualsiasi cosa, p.es.: "init 6", per un riavvio remoto del server, oppure un comando "sh" che lancia uno script complesso. Esistono altre soluzioni alle tecniche di port knocking, vedere la sezione riferimenti.
Ulteriori risorse
Port knocking in perl:
[http://www.portknocking.org/]
Wiki del progetto trattato in questa sede e vari client:
[http://www.zeroflux.org/cgi-bin/cvstrac.cgi/knock/wiki]
The PortKnockO Project
[http://portknocko.berlios.de/]
TCP Flags
http://www.openskill.info/infobox.php?ID=694
