GNU/Linux >> Linux Esercitazione >  >> Linux

Ssh - Problema comune di gestione dei file di connessioni Ssh multiple?

spesso devo scaricare un file che non è direttamente accessibile tramite la prima connessione SSH. Ad esempio, sono su una macchina Windows e voglio accedere a un'altra macchina accessibile solo da lan. Ciò significa che devo prima connettermi a una macchina intermedia e SSH a quella successiva.

Sarebbe facile usare pscp per ottenere il file, se fosse disponibile per la prima macchina. È possibile utilizzare il port forwarding SSH in questo scenario?

Risposta accettata:

Sì, in questo caso è possibile utilizzare il port forwarding SSH, ma è anche possibile ricevere avvisi su chiavi host non valide o errate quando si tenta di farlo. Alcuni client SSH come OpenSSH tengono traccia delle chiavi host SSH per dominio o solo IP e non includono il numero di porta con esso. PuTTY sembra registrare il numero di porta con la chiave host e non dovrebbe soffrire di questo problema fintanto che sei coerente con i numeri di porta che usi per ciascun host. Consiglierei di aggiungere i port forwarding a una sessione salvata in PuTTY. È inoltre possibile salvare le sessioni aggiuntive per i vari host remoti come sessioni salvate e utilizzarle con pscp/psftp. Puoi iniziare con qualsiasi porta ad alto numero per l'inoltro come 2220 e aumentare di uno da lì per ogni host che devi inoltrare attraverso un host intermedio. Aggiungi alla sessione salvata per intermediate port forwarding locale come la porta 2220 e destinazione remote1:22 e porta 2221 con destinazione remote2:22 per host remoti remote1 e remote2 Quindi crea sessioni per remote1 con destinazione localhost e porta SSH 2220 e una sessione per remote2 con destinazione localhost e porta SSH 2221 . Per usare sessioni con pcsp/psftp usa @session-name per l'host.

Il problema si verifica quando hai in qualche modo associato una chiave host SSH a localhost e tenti di connetterti a una porta locale che viene inoltrata a un computer diverso. Con OpenSSH, ho risolto questo problema utilizzando HostKeyAlias . Ho aggiunto voci al mio ~/.ssh/config così:

Host intermediate
HostName intermediate.example.org
LocalForward 2220 remote1.example.org:22
LocalForward 2222 remote2.example.org:22

Host remote1
HostName localhost
Port 2220
HostKeyAlias remote1.example.org

Host remote2
HostName localhost
Port 2221
HostKeyAlias remote2.example.org

La mia soluzione preferita, tuttavia, è stata quando ho implementato IPv6 sulla mia rete domestica e di lavoro e non ho più dovuto preoccuparmi di connettermi a un server intermedio prima di raggiungere la mia destinazione finale.

Relazionato:Linux - Qualche serio rischio se Mint 17 pensa che sia Ubuntu?
Linux
  1. Come risolvere la chiave offensiva nel file ~/.ssh/known_hosts

  2. problema di backspace sul file linux

  3. scp ssh:connessione all'host 10.0.0.109 porta 22:nessun percorso verso l'host ha perso la connessione

  4. Tunnel SSH HTTPS

  5. File di registro di coda su più macchine su ssh

Come modificare la porta SSH su VPS

Utilizzo del file di configurazione SSH

Come creare host virtuali su server Apache per ospitare più siti Web

Usa il file di configurazione SSH per gestire le connessioni SSH a vari server remoti

connettersi all'host localhost porta 22:connessione rifiutata

SSH - Come includere il comando -t nel file ~/.ssh/config