Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "PaoloVisnoviz/Prove1"
Differenze tra le versioni 1 e 14 (in 13 versioni)
Versione 1 del 11/12/2008 14.24.37
Dimensione: 445
Commento:
Versione 14 del 11/12/2008 21.08.17
Dimensione: 3218
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/Prove0
## page was renamed from Paolo''''''Visnoviz/prove0
#format wiki
#LANGUAGE it
## Port Knoking
[[BR]]
[[Indice()]]
Linea 3: Linea 9:
## 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 11:
=== Esempio === Le tecniche di port knocking permettono di aumentare considerevolmente la sicurezza di un server del quale si ha la necessità di erogare servizi attraverso IP Pubblici. In sintesi, si 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 iptables che apriranno le porte prestabilite. Il vantaggio è notevole in quanto il server potrebbe rimanere sempre in "stealth" ed aprire la porta per il servizio SSH solo quando se ne ha bisogno.

= Requisiti =

1 Ubuntu Server 8.04 LTS oppure 8.10.

2 Knockd.

3 Iptables.

= Installazione =

Knockd è presente nei repository, quindi basterà digitare:
Linea 15: Linea 25:
xxx
}}}
sudo apt-get install knockd
}}}
Il demone non partirà in automatico, all'avvio del server, fino a quando non si modificherà il file: `/etc/default/knockd`.
{{{
START_KNOCKD=1
}}}
Linea 18: Linea 32:
=== Risultato ===
xxx
La riga seguente controlla su quale interfaccia il demone dovrà rimanere in ascolto:
{{{
KNOCKD_OPTS="-i eth0"
}}}

L'altro file che bisogna modificare è `/etc/knockd.conf`:
{{{
[options]
        logfile = /var/log/knockd.log

[openSSH]
        sequence = 7000,8000,9000
        seq_timeout = 30
        command = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
        tcpflags = syn

[closeSSH]
        sequence = 9000,8000,7000
        seq_timeout = 30
        command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
        tcpflags = syn
}}}

Come si potrà notare è estremamente semplice ed efficace. Quando il demone riconosce la giusta sequenza effettuata entro 30 secondi eseguirà il "command" realtivo, che in questo caso eseguirà una regola di iptables che aprirà la porta SSH filtrando l'ip di chi ha "bussato" correttamente. Quando il client uscirà dalla sessione, effettuando la seconda sequenza [closeSSH] la regola verrà cancellata.

= Client =

In realtà potrebbe essere sufficiente telnet o netcat ma se il tempo a disposizione dovesse essere troppo basso è comodo usare il client per Linux, OsX o Windows che si trova sul sito di zeroflux.

= 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. 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 0", oppure un comando "sh" che lancia uno script complesso.
Esistono altre soluzioni alle tecniche di port knocking, vedere la sezione riferimenti.

= Riferimenti =

Port knocking in perl:

[http://www.portknocking.org/]


Wiki del progetto ufficiale e vari client:

[http://www.zeroflux.org/cgi-bin/cvstrac.cgi/knock/wiki]

----
CategoryHomepage

BR Indice()

Introduzione

Le tecniche di port knocking permettono di aumentare considerevolmente la sicurezza di un server del quale si ha la necessità di erogare servizi attraverso IP Pubblici. In sintesi, si 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 iptables che apriranno le porte prestabilite. Il vantaggio è notevole in quanto il server potrebbe rimanere sempre in "stealth" ed aprire la porta per il servizio SSH solo quando se ne ha bisogno.

Requisiti

1 Ubuntu Server 8.04 LTS oppure 8.10.

2 Knockd.

3 Iptables.

Installazione

Knockd è presente nei repository, quindi basterà digitare:

sudo apt-get install knockd

Il demone non partirà in automatico, all'avvio del server, fino a quando non si modificherà il file: /etc/default/knockd.

START_KNOCKD=1

La riga seguente controlla su quale interfaccia il demone dovrà rimanere in ascolto:

KNOCKD_OPTS="-i eth0"

L'altro file che bisogna modificare è /etc/knockd.conf:

[options]
        logfile = /var/log/knockd.log

[openSSH]
        sequence    = 7000,8000,9000
        seq_timeout = 30
        command     = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
        tcpflags    = syn

[closeSSH]
        sequence    = 9000,8000,7000
        seq_timeout = 30
        command     = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
        tcpflags    = syn

Come si potrà notare è estremamente semplice ed efficace. Quando il demone riconosce la giusta sequenza effettuata entro 30 secondi eseguirà il "command" realtivo, che in questo caso eseguirà una regola di iptables che aprirà la porta SSH filtrando l'ip di chi ha "bussato" correttamente. Quando il client uscirà dalla sessione, effettuando la seconda sequenza [closeSSH] la regola verrà cancellata.

Client

In realtà potrebbe essere sufficiente telnet o netcat ma se il tempo a disposizione dovesse essere troppo basso è comodo usare il client per Linux, OsX o Windows che si trova sul sito di zeroflux.

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. 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 0", oppure un comando "sh" che lancia uno script complesso. Esistono altre soluzioni alle tecniche di port knocking, vedere la sezione riferimenti.

Riferimenti

Port knocking in perl:

[http://www.portknocking.org/]

Wiki del progetto ufficiale e vari client:

[http://www.zeroflux.org/cgi-bin/cvstrac.cgi/knock/wiki]


CategoryHomepage