Gli utenti che hanno effettuato l'accesso sul mio server Linux dovrebbero essere in grado di inviare a un computer remoto specifico un account predefinito. L'autenticazione sulla macchina remota utilizza la chiave pubblica, quindi sul server è disponibile la chiave privata corrispondente.
Non voglio che gli utenti del server siano effettivamente in grado di leggere la chiave privata. Fondamentalmente, il fatto che abbiano accesso al server consente loro il diritto ssh e rimuoverli dal server dovrebbe anche impedire la connessione al computer remoto.
Come posso consentire agli utenti di aprire una connessione ssh senza dare loro l'accesso in lettura alla chiave privata?
I miei pensieri finora: ovviamente l'eseguibile ssh deve essere in grado di leggere la chiave privata, quindi deve funzionare sotto un altro utente sul server che ha questi diritti. Una volta stabilita la connessione ssh, posso quindi "inoltrarla" all'utente in modo che possa immettere comandi e interagire con la macchina remota.
- è un buon approccio?
- Come devo implementare il forward?
- In che modo l'utente può avviare la connessione (ovvero, l'esecuzione di ssh da parte dell'utente che ha i diritti di lettura sulla chiave)?
- C'è una scappatoia di sicurezza? - se gli utenti possono eseguire un ssh come un altro utente, possono fare tutto ciò che un altro utente potrebbe (incluso leggere la chiave privata)?
~/.ssh/authorized_keys
file?