Al lavoro, abbiamo un jump host SSH che ci richiede di usare sudo ssh
in SSH nell'host di destinazione. Qualcosa del genere:
ssh jump-host
sudo -u sshuser ssh final-host
Sto cercando di incorporarlo in una configurazione di configurazione SSH ProxyCommand o simile in modo da poter semplicemente eseguire ssh final-host
, ma non sono sicuro di come o se sia possibile.
Risposta accettata:
No, non puoi integrare un sudo
remoto chiama in un ProxyCommand
nel tuo caso d'uso, ma puoi -da OpenSSH 7.6 (ottobre 2018)– utilizzare:
Comando remoto
Specifica un comando da eseguire sulla macchina remota dopo la corretta connessione al server. La stringa di comando si estende fino alla fine della riga e viene eseguita con la shell dell'utente. Argomenti per RemoteCommand
accetta i token descritti nella sezione TOKENS.
Quindi, puoi inserire una voce in .ssh/config
così:
Host finalhost
RemoteCommand sudo -u sshuser ssh final-host
RequestTTY yes
Hostname jumphost
Host jumphost
User jumpHostUser
... Other options for jumphost, if necessary
Funziona solo per il sottosistema terminale, quindi sftp finalhost
ti atterrerà su jumphost , non host finale . git
e alcuni altri strumenti non funzioneranno con finalhost .