Sto cercando di collegarmi a un server tramite un bridge server. Finora sono stato in grado di farlo funzionare correttamente dalla shell dei comandi usando il seguente comando:
ssh -A -t bridge_userid@bridgemachine.com ssh -A remote_userid@remoteserver.com
Ma ho provato a inserirlo nel mio ~/.ssh/config
file e ho dei problemi. Ho provato:
Host axp
User remote_userid
HostName remoteserver.com
IdentityFile ~/.ssh/id_rsa.eric
ProxyCommand ssh -A -t bridge_userid@bridge_userid.com ssh -A remote_userid@%h
Ma quando lo faccio, ricevo il seguente messaggio di errore remoteserver.com
e non sono sicuro di cosa lo stia causando:
ksh: SSH-2.0-OpenSSH_6.8 ^ M: non trovato
So che quando accedo remoteserver.com
, la mia shell è /usr/bin/ksh
.
Ho provato ad aggiungere argomenti di percorso ai comandi ssh nel file di configurazione, ma non ha fatto differenza.
Qualche idea su cosa possa essere?
ssh -A remote_userid@remoteserver.com
come comando da eseguire sulla macchina bridge, config non fornisce un modo per fornire comandi predefiniti. Quello che works
provi a fare da solo, ma poi ssh cerca di usare il tuo ProxyCommand
come tunnel e inizia a lanciare il protocollo SSH su di esso dove c'è una shell in attesa all'altra estremità piuttosto che un sshd in ascolto per il protocollo SSH.
ProxyCommand
deve essere usato. In genere viene utilizzato con netcat in cui ssh sta eseguendo il piping del suo output attraverso di esso e netcat agisce come tunnel verso la porta SSH del server remoto. È necessario un ProxyCommand simile assh -W %h:%p bridge_userid@bridgemachine.com
se si desidera utilizzare quella funzione.