Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    Configurazione SSH con RSA

    Salve.
    Dunque ho letto da qualche parte che è possibile saltare l'immisione della password
    per una sessione SSH, tramite l'utilizzo di chiavi asimmetriche tra cui RSA.
    Ho un server debian lenny stable con il seguente file di configurazione /etc/ssh/sshd_config:

    riporto solo le parti "salienti":

    codice:
    HostKey /etc/ssh/ssh_host_rsa_key
    HostKey /etc/ssh/ssh_host_dsa_key
    UsePrivilegeSeparation yes
    RSAAuthentication yes
    PubkeyAuthentication yes
    AuthorizedKeysFile      %h/.ssh/authorized_keys
    IgnoreRhosts yes
    RhostsRSAAuthentication no
    HostbasedAuthentication no
    IgnoreUserKnownHosts yes
    PermitEmptyPasswords no
    X11Forwarding yes
    X11DisplayOffset 10
    PrintMotd no
    PrintLastLog yes
    TCPKeepAlive yes
    #UseLogin no
    A questo punto? Un client che uso per le sessioni usa Ubuntu e l'altro Windows XP.
    Per quanto rigurada Ubuntu sarebbe corretto fare:

    codice:
    client@ubuntu:~$: ssh-keygen -t rsa -b 1024
    client@ubuntu:~$: cat pubkey_user.pub >> ~/.ssh/authorized_keys
    oppure sto sbagliando e lo devo fare sul server? Illuminatemi, che non ci sto più dentro.
    Grazie e scusate il farfugliamento.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    225
    ssh utilizza il meccanismo di chiave pubblica/privata, ovvero:
    1) Evampires genera sul proprio PC la chiave privata, con al traino la chiave pubblica. La chiave privata la conserva, eventualmetne la protegge con una parola chiave (viene chiamata passfrase, di solito) in modo che ogni volta ci sia bisogno di utilizzarla lui stesso deve inserire una parola chiave. Come dici tu, sotto linux si utilizza ssh-keygen, sotto window$ e' comoda la suite di programmini putty (utilizzata anche per connettersi).
    2) Evampires comunica al mondo la chiave PUBBLICA, mettendola anche sul suo sito .info, p.es., in modo che ovunque Evampires voglia entrare, manda una mail al sistemista (p.es. Z0rn) e gli dice: "Zorn, mi crei un utente cui posso accedere con la mia chiave PUBBLICA", e gli fornisce il link, o gli manda la chiave pubblica via e-mail.
    3) Z0rn, che e' il sistemista del server cui Evampires vuole accedere, crea l'utente Evampires, entra nella sua home, crea una cartella .ssh, dentro la cartella ssh crea il file "authorized_keys", e vi accoda la chiave pubblica di Evampires. Inoltre, cosa fondamentale, assegna a .ssh e files contenuti come proprietario Evampires:Evampires, e come permessi 600.
    4) Evampires esegue il comando
    codice:
     ssh Evampires@server_di_Z0rn.com -i chiaveprivata
    digita la passfrase, e il gioco è fatto.
    Al punto 4 di solito ssh riconosce che è la prima volta che server_di_Z0rn viene contattato e ne fornisce le credenziali, chiedendo di autorizzarne l'inserimento in known_hosts, cosa che ovviamente bisogna fare per procedere. Se Z0rn è diligente, dopo la creazione dell'accounto per Evampires, via mail gli manda il fingerprint del server, cosicché Evampires possa controllare alla prima connessione che tutto sia ok.
    Spero di esser estato esaustivo.

  3. #3
    Utente di HTML.it L'avatar di hfish
    Registrato dal
    Dec 2000
    Messaggi
    3,180
    openssl genrsa -des -F4 4096 -out key.pem
    per creare la coppia di chiavi

    openssl rsa -in key.pem -out keynopwd.pem
    per esportare la chiave privata in modo che NON sia più necessario immettere la password (E' PERICOLOSO!)

    openssl rsa -in key.pem -pubout -out pubkey.pem
    per esportare la chiave pubblica
    Non dobbiamo trascurare la probabilità che il costante inculcare la credenza in Dio nelle menti dei bambini possa produrre un effetto così forte e duraturo sui loro cervelli non ancora completamente sviluppati, da diventare per loro tanto difficile sbarazzarsene, quanto per una scimmia disfarsi della sua istintiva paura o ripugnanza del serpente.

  4. #4
    Intanto grazie per le risposte, comincio a chiarirmi le idee.
    Ho provato a generare le chiavi come ha scritto hfish:

    codice:
    user@server:~$ openssl genrsa -des -F4 4096 -out key.pem
    Generating RSA private key, 4096 bit long modulus
    ..................................++
    .................................................................................................................................................................................................................++
    e is 65537 (0x10001)
    Secondo me c'è qualcosa che non va, perchè poi quando invio:

    codice:
    user@server:~$ openssl rsa -in key.pem -out keynopwd.pem
    Error opening Private Key key.pem
    2755:error:02001002:system library:fopen:No such file or directory:bss_file.c:352:fopen('key.pem','r')
    2755:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:354:
    unable to load Private Key
    In particolare non ho capito dove crea il file key.pem, visto che con find non lo trovo.
    Ho anche scaricato puttyGen per generare le chiavi pubblica e privata.
    Il programma mi crea due files key.pub e key.ppk che sarebbero le due chiavi.
    Ho provato ad copincollare il contenuto della chiave pubblica dentro
    /home/user/.ssh/authorized_keys sul server aggiungendo in coda dopo l'uguale user@server.
    Poi da putty ho caricato la chiave privata, ma al login ricevo:

    codice:
    Server refused our key
    e mi chiede la password.
    Come posso risolvere? Grazie ancora.

    EDIT: ah, una domanda stupida: quei comandi devo darli da root?

    EDIT2: Con putty sono riuscito ad identificarmi tramite RSA. C'erano dei problemi di caratteri di andata a capo aggiunti da windows nella chiave pubblica e mancava la dicitura ssh-rsa
    in testa al file. Tuttavia al login mi chiede la passphrase, che equivale praticamente
    all'immissione di una password
    Rimango comunque col dubbio della generazione sul server tramite shell.

  5. #5
    Utente di HTML.it L'avatar di hfish
    Registrato dal
    Dec 2000
    Messaggi
    3,180
    errore mio...

    openssl genrsa -des -F4 -out key.pem 4096

    il file viene creato nella cartella in cui ti trovi
    Non dobbiamo trascurare la probabilità che il costante inculcare la credenza in Dio nelle menti dei bambini possa produrre un effetto così forte e duraturo sui loro cervelli non ancora completamente sviluppati, da diventare per loro tanto difficile sbarazzarsene, quanto per una scimmia disfarsi della sua istintiva paura o ripugnanza del serpente.

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    225
    Tuttavia al login mi chiede la passphrase, che equivale praticamente
    all'immissione di una password
    Rimango comunque col dubbio della generazione sul server tramite shell.
    Attenzione, la differenza è sottile ma importante, in termini di sicurezza.
    Con una autenticazione via nomeutente/password la tua password viene inviata al server. Che questo avvenga in modo sicuro o meno dipende dal protocollo, ma la tua password TRANSITA fuori dal tuo PC. Inoltre la password deve venire impostata in qualche modo, per cui c'è una fase iniziale di scambio di chiavi tra utente e server.
    Con l'autenticazione via doppia chiave, la parte pubblica DEVE circolare liberamente, e la password (passfrase) viene utilizzata per aprire la chiave privata localmente e poi procedere con l'autenticazione, quindi tutti i parametri sensibili di autenticazione rimangono nel nido.

  7. #7
    Utente di HTML.it L'avatar di hfish
    Registrato dal
    Dec 2000
    Messaggi
    3,180
    si può però configurare la chiave privata in modo che NON sia necessario inserire una password quando la si vuole usare, che è quello che ho mostrato io, che penso sia quello che lui vuole fare...
    Non dobbiamo trascurare la probabilità che il costante inculcare la credenza in Dio nelle menti dei bambini possa produrre un effetto così forte e duraturo sui loro cervelli non ancora completamente sviluppati, da diventare per loro tanto difficile sbarazzarsene, quanto per una scimmia disfarsi della sua istintiva paura o ripugnanza del serpente.

  8. #8
    Ho generato la coppia di chiavi con puttygen, senza nessuna passphrase ed impostato
    la selezione automatica dell'utente, praticamente loggo ssh senza fare nulla a parte "open"
    (si so che è una pessima idea dal punto di vista della sicurezza, ma non proteggo formule
    chimiche milionarie, è solo una questione pratica).
    Putroppo i file key.pub e key.ppk generati da putty per windows, non vengono riconosciuti
    su ubuntu che continua a chiedermi una passphrase.

    Chiave privata key.ppk
    codice:
    PuTTY-User-Key-File-2: ssh-rsa
    Encryption: none
    Comment: rsa-key-user
    Public-Lines: 4
    Stringa di 8 linee
    Private-Lines: 8
    Stringa di 8 linee
    Private-MAC: Altra stringa
    Chiave pubblica key.pub
    codice:
    ---- BEGIN SSH2 PUBLIC KEY ----
    Comment: "rsa-key-user"
    Stringa di 4 linee
    ---- END SSH2 PUBLIC KEY ----
    Non riesco a capire quale stringa "chiaveprivata" debba inserire nel comando:

    codice:
    ssh Evampires@server_di_Z0rn.com -i chiaveprivata
    Cioè cosa devo mettere nel file "chiaveprivata"? La parte pubblica della chiave privata?
    O cosa? Grazie.

  9. #9
    Utente di HTML.it L'avatar di hfish
    Registrato dal
    Dec 2000
    Messaggi
    3,180
    dovresti mettere il percorso della chiave privata, penso
    Non dobbiamo trascurare la probabilità che il costante inculcare la credenza in Dio nelle menti dei bambini possa produrre un effetto così forte e duraturo sui loro cervelli non ancora completamente sviluppati, da diventare per loro tanto difficile sbarazzarsene, quanto per una scimmia disfarsi della sua istintiva paura o ripugnanza del serpente.

  10. #10
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    225
    putty key generator ha un menù "Conversions"

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.