Saya mencoba untuk tunnel ke server melalui server jembatan. Sejauh ini, saya sudah bisa membuatnya bekerja dari shell perintah dengan benar menggunakan perintah berikut:
ssh -A -t bridge_userid@bridgemachine.com ssh -A remote_userid@remoteserver.com
Tapi saya sudah mencoba untuk membungkus ini ke dalam ~/.ssh/config
file saya dan saya punya masalah. Saya sudah mencoba:
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
Tetapi ketika saya melakukannya, saya mendapatkan pesan kesalahan berikut remoteserver.com
dan saya tidak yakin apa yang menyebabkannya:
ksh: SSH-2.0-OpenSSH_6.8 ^ M: tidak ditemukan
Saya tahu bahwa ketika saya masuk remoteserver.com
, shell saya adalah /usr/bin/ksh
.
Saya sudah mencoba menambahkan argumen path ke perintah ssh dalam file konfigurasi, tetapi tidak ada bedanya.
Ada ide apa itu?
ssh
ssh-tunneling
ssh-config
Eric B.
sumber
sumber
ProxyCommand
seharusnya digunakan. Biasanya ini digunakan dengan netcat di mana ssh memipis outputnya melalui itu dan netcat bertindak sebagai terowongan ke port SSH remote - remote . Anda memerlukan sesuatu seperti ProxyCommandssh -W %h:%p [email protected]
jika Anda ingin menggunakan fitur itu.ssh -A [email protected]
sebagai perintah untuk dijalankan di mesin bridge, config tidak memberi Anda cara untuk memasok perintah default. Apa yang Anda coba lakukanworks
sendiri tetapi kemudian ssh mencoba menggunakan AndaProxyCommand
sebagai sebuah terowongan dan mulai menembakkan protokol SSH ke bawah di mana ada shell menunggu di ujung daripada sshd mendengarkan protokol SSH.Jawaban:
Jawaban Jakuje benar, tetapi sejak OpenSSH
7.3
, Anda sekarang dapat menggunakan-J
ProxyJump
yang lebih mudah. Lihat catatan saya:OpenSSH
7.3
atau lebih tinggiGunakan
ProxyJump
. Seperti yang dijelaskan dalam manual:~/.ssh/config
Contoh ProxyJump~/.ssh/config
Terhubung dengan
Tambahkan
-v
untuk keluaran verboseContoh
-J
baris perintah ProxyJump~/.ssh/config
Terhubung dengan
Atau gunakan
-o
OpenSSH
5.4
atau lebih tinggiGunakan
ProxyCommand
dengan-W
~/.ssh/config
Terhubung dengan
Atau gunakan
-o
OpenSSH di bawah
5.4
~/.ssh/config
Terhubung dengan:
Atau gunakan
-o
Sumber
-J
ditambahkan dalam OpenSSH 7.3-W
ditambahkan dalam OpenSSH 5.4sumber
Anda tidak perlu
netcat
di jembatan Anda. Seperti DanSut yang diusulkan dalam komentar, Anda dapat menggunakanssh -W
opsi baris perintah sebagai gantinya, konfigurasi ini akan bekerja untuk Anda:sumber