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 .