Gunakan ProxyCommand untuk semua Koneksi SSH


3

Saya bermain-main dengan gagasan memiliki SSH Proxy Server atau yang disebut Jump Host, yang akan saya gunakan untuk terhubung ke semua Server "tersembunyi" saya . Jadi pada dasarnya saya memiliki pengaturan berikut. Harap dicatat saya sengaja menggunakan alamat IP di sini alih-alih nama host.

<client> ---> <proxy_ssh> ---> <192.168.0.*>

Maksud saya adalah bahwa itu harus setransparan untuk pengguna mungkin. Jadi idealnya pengguna hanya perlu menjalankan perintah berikut

# ssh user@192.168.0.10

Agar ini berfungsi, saya telah membuat yang berikut ini .ssh/config.

Host *                                                                                                                                                                           
    ServerAliveInterval 240                                                                                                                                                      
    Compression yes                                                                                                                                                              
    ForwardAgent yes                                                                                                                                                             
    ForwardX11 yes                                                                                                                                                               

Host 192.168.0.*                                                                                                                                                                   
    ProxyCommand ssh my_user@proxy_ssh.example.com netcat -w 120 %h %p

Ini berfungsi dengan baik. Tetapi agak membosankan jika saya memiliki lebih banyak jaringan untuk bekerja dengan proxy_sshserver saya . Jadi saya sudah mencoba hanya menambahkan ProxyCommandke Host *bagian yang tidak bekerja.

Saya ingin menjadikan ini lebih transparan bagi pengguna akhir, dan mengubah konfigurasi ssh menjadi yang berikut, hanya meninggalkan definisi Host tertentu.

Host *
    ServerAliveInterval 240                                                                                                                                                      
    Compression yes                                                                                                                                                              
    ForwardAgent yes                                                                                                                                                             
    ForwardX11 yes                                                                                                                                                               
    ProxyCommand ssh my_user@proxy_ssh.example.com netcat -w 120 %h %p

Ini berdampak bahwa saya tidak dapat terhubung lagi ke endhost. Koneksi habis waktu!

Jadi, pertanyaan saya, adakah cara agar ini lebih transparan sehingga semua koneksi SSH saya akan menggunakan proxy_sshhost?


yang tidak berhasil ... kesalahan apa yang Anda dapatkan? Seperti apa bentuk konfigurasinya?
Jakuje

Menambahkan contoh yang sudah saya coba
latz

Contoh di atas akan membuatnya rekursif, bahwa setiap koneksi akan menggunakan perintah proxy, yang hanya ssh dengan perintah proxy lain. Cara yang baik untuk DOS proxy Anda. Anda harus mengecualikan proxy dari daftar atau menggunakan -F /dev/nulluntuk mengabaikan konfigurasi untuk perintah proxy.
Jakuje

Dengan menentukan -F /dev/nullsaya akan menimpa konfigurasi bersama-sama Jika saya memahami halaman manual dengan benar. Bukan itu yang saya inginkan.
latz

Hanya di ProxyCommandssh. Kemungkinan lain adalah menimpa hanya ProxyCommandmenggunakan -oProxyCommand=none.
Jakuje

Jawaban:


3

Contoh di atas akan membuatnya rekursif, bahwa setiap koneksi akan menggunakan perintah proxy, yang lagi ssh dengan perintah proxy lain. Cara yang baik untuk DOS proxy Anda.

Anda harus mengecualikan proxy dari daftar, gunakan -F /dev/nulluntuk mengabaikan konfigurasi untuk perintah proxy atau abaikan saja perintah proxy untuk proxy ssh:

ProxyCommand ssh -oProxyCommand=none my_user@proxy_ssh.example.com netcat -w 120 %h %p

0

Tambahkan entri ke konfigurasi untuk host melompat yang mengabaikan perintah proxy:

Host proxy_ssh.example.com
  ProxyCommand none

Kalau tidak, ia akan mencoba menggunakan perintah proxy untuk sampai ke host melompat itu sendiri.

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.