Kunci SSH hilang dalam terowongan


1

Saya mencoba untuk terhubung ke instance VPC pribadi saya melalui instance NAT dengan tunneling

Saya mendefinisikan -A untuk membuat instance NAT agen untuk kunci saya dan -i untuk file kunci. Saat mencoba

ssh -A -i 'path_to_key' ec2-user@net.instance.ip

berfungsi dan terhubung ke NAT saya, tetapi mencoba untuk terowongan ke contoh pribadi saya selalu gagal karena masalah utama

   ssh -A -i 'path_to_key' ec2-user@net.instance.ip ssh -t -t ubuntu@private_instance_ip

Saya kira itu tidak meneruskan kunci saya dari NAT ke instance pribadi.

Ketika melakukan ssh-add path_to_keydan kemudian menjalankan perintah yang sama tidak termasuk bagian -i - itu berfungsi juga.

Bagaimana saya bisa membuat NAT saya meneruskan kunci dalam parameter -i ke instance pribadi?

Jawaban:


1

The ssh -Apilihan hanya bekerja dengan kunci Anda sudah dimuat ke agen, yang -i tidak melakukan secara otomatis. Dengan kata lain, Anda harus memiliki ssh-agent, dan ssh-addkuncinya.

ssh-add 'path_to_key'

Sebagai catatan, Anda menggunakan -tdi tempat yang salah - koneksi batin Anda akan memiliki tty tetapi tidak akan tahu parameter yang benar (seperti ukuran jendela). Opsi ini lebih penting untuk koneksi luar (yaitu, ssh -t server1 ssh server2), maka itu menjadi tidak perlu untuk koneksi dalam.


Ada cara lain untuk membuat koneksi dua hop. Alih-alih menjalankan ssh pada proxy, Anda dapat menjalankannya secara lokal menggunakan fitur penerusan TCP SSH:

ssh -i 'path' -o ProxyCommand="ssh -W %H:%P ec2-user@net.instance" ubuntu@private_instance

Ini tidak perlu -Aatau agen sama sekali, karena klien Anda terhubung langsung ke mesin virtual.


Terima kasih! Saya menambahkan ke ssh-add (yang saya tidak ingin lakukan di tempat pertama - tetapi setidaknya berfungsi) dan mengubah baris ssh saya yang sekarang bekerja lebih baik. Terima kasih!
Asaf Nevo
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.