Old:Debian on a HP Compaq NX6110: differenze tra le versioni

(→‎Il Kernel: Warning supporto PPP)
Riga 1: Riga 1:
Ciao. Leggendo l'introduzione ho notato delle imprecisioni. Io non insisterei sul fatto se la chiave pubblica pu� essere ricavata da quella privata, non so se esistiono algoritimi a chiave pubblica in cui sia possibile, ma comunque non � questo il punto. Il punto � semplicemente che si usano due chiavi diverse: la pubblica per criptare e quella privata per decriptare, basta. La chiave pubblica di ogni macchina deve essere, appunto "pubblica" e "certificata" (ovvero devi essere sicuro che appartenga ad una data macchina).  
{{stub}}
==Introduzione==
Ho deciso di fare questa guida poich� ho avuto molta difficolt� a creare una connessione remota sicura fra una macchina Windows ed una Linux in una LAN (o in una WAN) in quanto la maggior parte delle guide, degli How-To e delle FAQ che ho trovato in Internet esamina tale connessione fra due macchine Linux.


Ciao e buon lavoro ;-).
La connessione remota sicura, che esaminero`, e` una connessione che usa il protocollo [http://it.wikipedia.org/wiki/Ssh SSH (Secure SHell)] e, perci�, � detta '''connessione SSH''' la quale si basa sulla [http://it.wikipedia.org/wiki/Crittografia_asimmetrica criptografia asimetrica] detta anche '''criptografia a coppia di chiavi''' o, piu` semplicemente, '''a chiave pubblica/privata''' (o, semplicemente, '''a chiave pubblica''') che consiste nella generazione di una coppia di chiavi (chiamate [http://it.wikipedia.org/wiki/Chiave_privata chiave privata] e [http://it.wikipedia.org/wiki/Chiave_pubblica chiave pubblica]). In pratica, la '''chiave pubblica''' codifica la communicazione mentre la '''chiave privata''' decodifica tale comunicazione e vengono generate usando degli algoritmi asimetrici che sono [http://it.wikipedia.org/wiki/RSA RSA] e [http://en.wikipedia.org/wiki/Digital_Signature_Algorithm DSA] e le connessioni che usano tali coppie di chiavi prodotte da questi algoritmi asimetrici sono dette '''connessioni SSH'''. Tali algoritmi, per�, servono soltanto per instaurare una connessione criptata fra il client SSH e il server SSH in quanto, per il trasferimento vero e proprio dei dati, si usano degli algoritmi simmetrici, come AES o 3DES, che sono molto pi� efficenti per questo scopo ovvero per cifrare la comunicazione. Quindi:


: [[Utente:TheNoise|~ The Noise]] 06:40, 26 Mag 2006 (EDT)
Una '''connessione SSH''' � una connessione cifrata che utilizza gli algoritmi asimetrici RSA o DSA soltanto per verificare se una chiave pubblica, memorizzata sul Server, derivi da una chiave privata salvata sul Client (in modo da garantire la reciproca autenticita` del Server e del Client) in modo da essere utilizzata, per l'intera sessione, per la cifratura simmetrica con algoritmi come AES o 3DES.


== Per The Noise ==
==Scelta del software==


Grazie per avermi fatto rilevare gli sbagli che ho scritto (ho gia` proveduto a correggerli, almeno spero). In verita`, volevo far capire ai nuovi utenti che, quando una persona A viene in possesso di una chiave privata di un'altra persona B, la persona A e` in grado anche di mettere nei guai seri la persona B. Quindi, la chiave privata va custodita in un luogo sicuro come o piu` di una password.
Ora, dopo aver fatto questa introduzione per chiarire i termini che user� in seguito, spiegher�, in pratica, come si crea una connessione SSH da Windows a Linux. Per far ci�, occorre scegliere un server-software SSH sulla macchina Linux (che funge dal Server) ed un client-software SSH su una macchina Windows (che funge da Client). Ora, per scegliere un server-software SSH per Linux, non esiste alcun problema in quanto la communit� Open Source ha creato un ottimo prodotto che, ormai, tutte le distribuzione lo installano come default. Questo prodotto � il software [http://www.openssh.com/ OpenSSH Server]. Ora, siccome Windows (in tutte le sue edizione per il Desktop) non ha nessun client-software SSH, occorre cercarne uno. Il pi� semplice client SSH con licenza certificata Open Source � [http://www.chiark.greenend.org.uk/~sgtatham/putty/ PuTTY] ma, chi volesse usare soprattutto la Shell di Linux ed avere qualche comodit� in pi� sullo stile di Windows, dovr� valutare programmi commerciali come [http://www.vandyke.com/products/securecrt/ SecureCRT] o [http://www.ssh.com/products/tectia/client/ SSH Tectia Client] che, per fortuna, si possono prelevare le versioni di valutazione completamente funzionanti prima dell'acquisto.


GRAZIE
{{Box | Nota |I client SSH permettono soltanto di accedere alla Shell di Linux per poter eseguire comandi su un terminale a caratteri di questo sistema operativo. Per poter accedere anche al suo server grafico [http://it.wikipedia.org/wiki/X_Window_System X Window System] o '''X11''' o soltanto '''X''' (e, quindi, per poter controllare i vari ambienti grafici ed i programmi di X), occorre anche un [http://it.wikipedia.org/wiki/VNC client/server VNC]. Ora, niente paura in quanto, grazie alla funzionalit� [http://en.wikipedia.org/wiki/Tunneling_protocol Tunneling] di questi tre client SSH, � possibile controlare anche X sempre in modo sicuro.}}


CIAO
==Configurazione dell'OpenSSH Server==


----
Una volta installato l'OpenSSH Server sulla macchina Linux, occorre configurarlo per scegliere il modo di authentificazione che volete che le macchine Client usano per accedere a questa macchina Linux.
 
Le varie autentificazione che OpenSSH Server pu� offrire sono:
 
#Autentificazione tramite '''password'''
#Autentificazione '''ChallengeResponseAuthentication''' o '''Keyboard-Interactive'''
#Autentificazione '''a chiave pubblica'''
#Autentifiazione '''GSSAPI'''
 
'''L'autentificazione tramite password''' utilizza la Username e la Password dell'utente (le stesse usate per l'autentificazione in locale) per verificare se l'utente � autorizzato ad accedere da remoto alla macchina Linux.


: [[Utente:Balubeto|Balubeto]] 12:18, 26 Mag 2006 (EDT)
'''L'autentificazione ChallengeResponseAuthentication o Keyboard-Interactive''' utilizza una serie di autentificazioni caratterizzate da richieste, fatte dal server SSH, che devono essere confermate dalle risposte mandate dal client SSH. Se le risposte coincidono a quelle memorizzate sul Server, l'utente � autorizzato ad accedere da remoto alla macchina Linux altrimenti questi non pu� entrare in tale macchina Linux.


== Per Balubeto ==
'''L'autentificazione a chiave pubblica''' verifica se la chiavi pubblica, memorizzata sul Server, '''derivi''' dalla chiave privata memorizzata sul Client dell'utente. Se tale verifica ha esito positivo, l'utente pu� accedere alla macchina Linux altrimetri no. Siccome la chiave privata � praticamente un file, che autorizza chiunque entra in possesso ad entrare in un Server SSH, � consigliabile protteggerla con una '''passphrase''' che, in sostanza, � una password che occorre inserirla ogni volta (o quasi) che si effettua una connessione verso tale Server SSH.


Comunque, � falso dire che la chiave pubblica si pu� ricavare dalla chiave privata, come hai scritto nell'articolo: nessuna delle due chiavi si pu� ricavare dall'altra!
'''L'autentifiazione GSSAPI''', basata su un'API generica, implementata su vari sistemi operativi, utilizza un determinato protocollo, che, normalmente, � Kerberos 5, per trasferire i dati per l'autentificazione.


: [[Utente:TheNoise|~ The Noise]] 11:58, 30 Mag 2006 (EDT)
Le auttentificazioni pi� comode ed usate in una rete LAN (ma non solo) sono l''''autentificazione tramite password''' e l''''autentificazione a chiave pubblica'''. Quindi, la mia attenzione andr� soprattutto su queste due autentificazioni in quanto sono, forse, le pi� semplici da essere implementate.


== Per The_Noise ==
Il file di configurazione di OpenSSH Server si chiama ''sshd_config'' che, normalmente, si trova nella directory ''/etc/ssh''.


[quote]
Questo file � un file di testo composto da '''direttive''' (dette '''Keywords'''), che sono '''case-insensitive''', e da '''valori''', che sono '''case-sensitive'''. Quindi, per editarlo, basta un semplice editor di testo come '''vi''' o '''Emacs''' che avete gi� nella vostra distribuzione.
Comunque, � falso dire che la chiave pubblica si pu� ricavare dalla chiave privata, come hai scritto nell'articolo: nessuna delle due chiavi si pu� ricavare dall'altra!
[/quote]


Prova a leggere [http://it.wikipedia.org/wiki/Crittografia_asimmetrica#Utilizzo_della_crittografia_asimmetrica qui] che afferma che "In realt� esiste una relazione tra le due chiavi, in modo tale che dalla chiave segreta (la prima ad essere generata) si possa facilmente (e automaticamente) generare la chiave pubblica. L'operazione inversa � invece computazionalmente impossibile: � quindi molto difficile risalire alla chiave segreta conoscendo unicamente quella pubblica, a meno che non si conoscano i parametri utilizzati per la generazione di quest'ultima"
Quindi, attiviamo, in forma base, le autentificazioni tramite password e a chiave pubblica e disattiviamo le altre per evitare conflitti ed accessi non desiderati a causa di eventuali bachi.


In effetti, con l'utility [http://the.earth.li/~sgtatham/putty/latest/alpha/puttygen.exe PuTTYgen] per Windows ho proprio verificato cio`: Ho preso una chiave privata generata da OpenSSH Server per Linux e l'ho messa in una directory di Windows senza mettere la rispettiva chiave pubblica . ho caricato il programma PuTTYgen e ho dato in pasto la mia chiave privata e mi e` apparso il codice della mia chiave pubblica . a questo punto ho verificato che fosse propriola mia chiave pubblica e a quanto pare lo e`.
Perci�, verichiamo, da root, che, nel file ''/etc/ssh/sshd_config'', ci siano le seguenti keyword ed i corrispettivi valori; se si dovessero trovare delle keyword mancanti o dei valori che non corrispodessero a quei sotto-ennunciati, modificate semplicemente il testo stando attenti a non fare incominciare le keyword con il simbolo #:


quindi vorrei il tuo parere in merito a cio` .
{|
|''Port <Numero porta d'ascolto>''
|Questa keyword indica la porta d'ascolto dell'OpenSSH Server. Conviene cambiare la porta d'ascolto di default per evitare, fin da subito, degli attacchi esterni e mettere un numero superiore a 1024 che non sia gi� usato da altri servizi locali o di Internet (per sapere le porte Internet di default usate dai comuni servizi Internet, andate [http://www.iana.org/assignments/port-numbers qui]). Si deve ricordare, dopo aver scelto tale porta, di "dire" al vostro fireware aprire in entrata tale porta per fare in modo che i vostri utenti remoti possono acceedere alla vostra macchina Linux.
|}


grazie
----


ciao
--[[Utente:Balubeto|Balubeto]] 05:29, 3 Giu 2006 (EDT)
806

contributi