Come configurare la chiave pubblica SSH per utente?

0

Ho un server OpenSSH in esecuzione e diversi utenti possono accedervi con diversi privilegi.

So che è possibile abilitare l'autenticazione della chiave pubblica e posizionare tutte le chiavi pubbliche consentite nel file authorized_keys . Ma ciò limita solo a quali host possono accedere.

Vorrei configurare l'autenticazione della chiave pubblica in modo che l'accesso come user1 richiederebbe una chiave diversa rispetto all'accesso come user2 .

C'è un modo per raggiungere questo obiettivo usando OpenSSH?

    
posta Pandrei 17.06.2016 - 11:57
fonte

1 risposta

4

SSH richiede in realtà di configurare chiavi diverse per utenti diversi.

Ogni account utente sul computer di destinazione ha il suo ~/.ssh/authorized_keys (non necessariamente necessario, potrebbe non esistere).

Supponiamo che tu abbia server e client .

server ha impostato gli utenti come segue:

/home/srv_user01
                /.ssh/authorized_keys
                        --> contains public key of cli_user01
                                 and public key of cli_user03
/home/srv_user02
                /.ssh/authorized_keys
                        --> empty or non-existing
/home/srv_user03
                /.ssh/authorized_keys
                        --> contains public key of cli_user03

client ha tre account cli_user01 , cli_user02 e cli_user03 .

On client machine:

  • cli_user01 può eseguire ssh srv_user01@server e accedere a server come srv_user01
  • cli_user02 non può connettersi a server affatto
  • cli_user03 può essere eseguito:
    • ssh srv_user01@server e accedi a server come srv_user01 o
    • ssh srv_user03@server e accedi a server come srv_user03
  • nessun utente può connettersi e accedere come srv_user02 su server

Nell'esempio sopra ho usato nomi diversi sul lato client e server, ma se il nome dell'account era lo stesso su client e server , l'utente non deve specificare il nome dell'account in ssh comando, quindi dando l'impressione di "logging to server". Quindi, se sono connesso come user sul client ed eseguo ssh server ー è uguale a ssh user@server .

On server one sshd process ascolta sulla porta 22 (impostazione predefinita) e riceve connessioni da ciascuno degli utenti che si connettono.

    
risposta data 17.06.2016 - 12:51
fonte

Leggi altre domande sui tag