14 Linux Network Tenet Ssh Ecc
-
Upload
luupuxall -
Category
Technology
-
view
443 -
download
2
Transcript of 14 Linux Network Tenet Ssh Ecc
Protocollo Telnet
L'obiettivo del protocollo TELNET è fornire un supporto per le comunicazioni sufficientemente generalizzato, bidirezionale ed orientato ai byte (otto bit).
È solitamente utilizzato per fornire all'utente sessioni di login remoto di tipo linea di comando tra host su internet.
Protocollo Telnet Sicurezza
Ci sono tre problemi principali legati a Telnet, che lo rendono una brutta scelta per sistemi moderni dal punto di vista della sicurezza:
* Nei daemon Telnet comunemente usati sono state trovate nel corso degli anni molte vulnerabilità, e probabilmente altre esistono tuttora. * Telnet non cripta i dati inviati tramite la connessione (nemmeno le password) ed è quindi banale catturare i dati scambiati ed usare la password per scopi malevoli. * A Telnet manca uno schema di autenticazione che renda sicura le comunicazione tra due host e non intercettabile.
In ambienti dove la sicurezza è importante, come la rete pubblica Internet, Telnet non dovrebbe esser usato. Le sessioni telnet non sono criptate. Ciò significa che chiunque abbia accesso ad un router, uno switch o un gateway posizionato sulla rete tra i due host che stanno comunicando tramite Telnet, può intercettare i pacchetti che lo attraversano e facilmente ottenere qualsiasi cosa venga scambiata (compresi nomi utente e password) con programmi come tcpdump e Ethereal.
Telnet porta 80
lupux@felix:~$ telnet www.google.it 80Trying 209.85.227.99...Connected to www.l.google.com.Escape character is '^]'.get / HTTP/1.1
HTTP/1.1 200 OKVia: 1.1 FW1-DIGIBYTEConnection: Keep-AliveProxy-Connection: Keep-AliveTransfer-Encoding: chunkedExpires: -1Date: Tue, 17 Mar 2009 13:13:38 GMTContent-Type: text/html; charset=ISO-8859-1Server: gwsCache-Control: private, max-age=0<html>contenuto html<html>
Telnet 25
lupux@felix:/tmp$ telnet mxlibero1.libero.it 25Trying 212.52.84.83...Connected to mxlibero1.libero.it.Escape character is '^]'.h220-mailrelay04.libero.it ESMTP220 mx.libero.it ESMTP Service Readyhelo localhost250 mailrelay04.libero.itmail from:<[email protected]>250 sender <[email protected]> okrcpt to:<[email protected]>250 recipient <[email protected]> okdata354 go aheadtest.250 ok: Message 1320774920 acceptedquit221 mailrelay04.libero.itConnection closed by foreign host.
Secure Shell, ovvero SSH
SSH (o Secure SHell) è un protocollo che vi consente di stabilire connessioni sicure tra due sistemi. Nel protocollo SSH il computer client avvia una connessione con il computer server.
SSH fornisce le seguenti misure di protezione:
* Dopo una connessione iniziale, il client verifica di collegarsi allo stesso server durante sessioni successive.
* Il client trasmette le proprie informazioni di autenticazione al server, per esempio il nome utente e la password, in forma cifrata.
* Tutti i dati inviati e ricevuti durante la connessione vengono trasferiti utilizzando una cifratura a 128 bit. In questo modo è estremamente complesso decifrarli e leggerli.
* Il client può utilizzare le applicazioni X11 [1] applicazioni avviate dal prompt della shell. Questa tecnica, chiamata X11 forwarding, fornisce un'interfaccia grafica e sicura.
http://www.dia.unisa.it/~ads/corso-security/www/CORSO-0001/SSH/index.htm
ssh esempi Pratici
$ ssh -l tizio linux.brot.dg
Accede all’elaboratore ‘linux.brot.dg’, utilizzando lì il nominativo-utente ‘tizio’.
$ ssh -l tizio linux.brot.dg ls -l /tmp
Esegue il comando ‘ls -l /tmp’ nell’elaboratore ‘linux.brot.dg’, utilizzando il nome- utente ‘tizio’.
http://www.dia.unisa.it/~ads/corso-security/www/CORSO-0001/SSH/index.htm
Trasferimenti di file sicuri con SSH “SCP”
Il programma SSH fornisce inoltre un modo sicuro di trasferire i propri file attraverso internet. Il programma da impiegare in questo caso é scp (secure copy). La sintassi di scp é al solito molto semplice:
scp NomeUtente@ HostDiPartenza:FileDaCopiare NomeUtente@ HostDiArrivo:NomeFile
Es.scp NomeFileDaCopiare NomeUtente @NomeHost:NomeFile
Questo comando copierà il file NomeFileDaCopiare che si trova nella directory corrente in quella dell'utente NomeUtente del host NomeHost. I : servono ad evitare che il comando scp copi in locale il file NomeFileDaCopiare in uno dal nome NomeUtente@NomeHost !
Per copiare un file che si trova in un host remoto nella cartella locale, si deve invece scrivere:scp NomeUtenteRemoto@NomeHostRemoto:NomeFileDaCopiare
Port Forwarding
Con Secure Shell è possibile rendere sicuro anche un qualsiasi protocollo allo strato applicazione, come ad esempio FTP, HTTP e SMTP. Facciamo un esempio in cui può essere resa sicura una connessione HTTP. Consideriamo lo scenario nella figura sottostante.
http://www.dia.unisa.it/~ads/corso-security/www/CORSO-0001/SSH/index.htm
Port ForwardingSull'host A gira un web browser, che desidererebbe stabilire una connessione sicura con l'host C, su cui gira un Web server. Il percorso che connette A con la sottorete comprendente C è insicuro, e dunque soggetto ad ogni sorta di attacco. Si suppone che la sottorete comprendente C sia sicura e che in essa sia presente un host (B, nel nostro esempio), su cui gira un server SSH. Possiamo brevemente riassumere con i seguenti passi il metodo utilizzato per rendere la connessione sicura sul percorso insicuro da A alla sottorete comprendente C:
1. A crea una connessione SSH con B 2. B crea una connessione HTTP con C e invia ad A i dati cifrati con SSH
http://www.dia.unisa.it/~ads/corso-security/www/CORSO-0001/SSH/index.htm
Port ForwardingHost A è separato dalla intranet da una rete insicura e deve comunicare via telnet con Host C. Host B permette connessioni SSH.Con il port forwarding di SSH viene creato il canale sicuro tra Host A e Host B, mentre la connessione telnet vera e propria viene effettuata tra Host B e Host C.Con il seguente comando, dato su Host A:
hostA> ssh -L 1111:HostC:23 HostB sleep 100
viene allocata la porta TCP 1111 su Host A attraverso la quale, passando per il canale sicuro, si arriva alla porta 23 (telnet) di Host C.Per completare la connessione vera e propria bisogna effettuare un telnet a questa porta:
hostA> telnet localhost 1111
http://www.dia.unisa.it/~ads/corso-security/www/CORSO-0001/SSH/index.htm
Link Utili
ssh http://www.dia.unisa.it/~ads/corso-security/www/CORSO-0001/SSH/index.htm