Mi collego a un numero di macchine costantemente, da diverse posizioni fisiche (e quindi diverse macchine fisiche). La maggior parte di questo viene fatta tramite ssh, a volte è necessaria una macchina gateway o due (che invoco tramite ProxyCommand
in ~/.ssh/config
). Vorrei sapere se esiste un metodo per identificare l'IP o il nome host della macchina che chiama la connessione iniziale (ovvero la macchina su cui sto lavorando) all'estremità remota?
- Non voglio inviare variabili d'ambiente come alcune macchine che non ho root da impostare
PermitUserEnvironment
. - La
$SSH_CLIENT
variabile di ambiente è utile per le connessioni dirette, ma elenca solo il gateway più recente.
La mia attuale idea di una soluzione è quella di afferrare $SSH_CLIENT
, ssh, trovare il $SSH_CLIENT
valore di quella macchina e ripetere fino a quando non esiste; quindi prendi il nome host e tiralo indietro in qualche modo.
Sembra un po 'un lavoro di hacking; qualcuno ha un metodo migliore?
Sto lavorando principalmente in una shell bash, ma sono anche felice per eventuali suggerimenti che non la usano troppo.