Saya menggunakan openconnect
untuk terhubung ke vpn. Setelah memasukkan kredensial saya, saya mendapatkan ini:
POST https://domain.name/...
Got CONNECT response: HTTP/1.1 200 OK
CSTP connected. DPD 30, Keepalive 30
Connected tun0 as xxx.xxx.xxx.xxx, using SSL
Established DTLS connection
Menjalankan ifconfig
menunjukkan Saya memiliki antarmuka jaringan baru tun0
dengan alamat ip tertentu.
Pertanyaan: Bagaimana cara saya ssh
hanya menggunakan antarmuka jaringan tun0
sehingga saya dapat mengakses komputer di jaringan pribadi itu?
Edit:
Konfigurasi jaringan saya ( route -n
) tampaknya seperti ini:
172.16.194.0 0.0.0.0 255.255.255.0 U 0 0 0 vmnet8
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
172.16.25.0 0.0.0.0 255.255.255.0 U 0 0 0 vmnet1
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0
0.0.0.0 192.168.0.1 0.0.0.0 UG 100 0 0 eth0
Jawaban:
Bukan klien ssh yang memutuskan melalui mana paket TCP antarmuka harus pergi, itu adalah kernel. Singkatnya, SSH meminta kernel untuk membuka koneksi ke alamat IP tertentu, dan kernel memutuskan antarmuka mana yang akan digunakan dengan berkonsultasi dengan tabel routing.
(Berikut ini mengasumsikan Anda berada di GNU / Linux; konsep umum adalah sama untuk semua Unices, tetapi spesifik dari perintah untuk menjalankan dan cara output diformat dapat bervariasi.)
Anda dapat menampilkan tabel routing kernel dengan perintah route -n dan / atau ip route show .
OpenConnect seharusnya menambahkan garis untuk
tun0
antarmuka; koneksi ke alamat yang cocok dengan garis itu akan dialihkan melalui antarmuka itu. Misalnya, berjalanroute -n
di laptop saya, saya mendapatkan output berikut:Ini berarti bahwa koneksi ke host di 192.168.122.0/24 (yaitu, alamat 192.168.122.0 hingga 192.168.122.255 sesuai dengan notasi CIDR ) jaringan akan dialihkan melalui antarmuka
virbr0
; yang ke 169.254.0.0/16 dan 10.30.0.0/24 akan melaluieth0
, dan apa pun (garis 0.0.0.0) akan dialihkan melalui eth0 ke host gateway 10.30.0.1.sumber
openconnect
tidak menambahkan garis untuktun0
antarmuka. Saya kira saya harus melakukan ini secara manual.Saya tidak tahu kapan diperkenalkan tetapi klien OpenSSH di RHEL7 memiliki ini di manualnya:
Tidak sebagus bisa memilih antarmuka, tetapi tutup.
sumber
-B
bendera, yang tampaknya memungkinkan untuk menentukan nama antarmuka jaringan untuk digunakan.-b bind_address
tidak bekerja untuk saya, entah bagaimana. Mengubah rute sementara harus bekerja. BTW:-B
Opsi ini tidak ada pada versi SSH yang datang dengan Ubuntu.Jika Anda menggunakan Network Manager untuk mengelola koneksi internet Anda (seperti manajer default pada banyak sistem), Anda mungkin ingin menginstal keduanya
openconnect
dannetwork-manager-openconnect
.Setelah plugin OpenConnect diinstal untuk Network Manager, buka Network Manager dan klik +ikon di kiri bawah. Anda harus diberi kotak kombo dengan opsi VPN dan kemudian kemampuan untuk memilih OpenConnect VPN yang Kompatibel .
Dengan menggunakan Network Manager untuk berinteraksi dengan OpenConnect, rute Anda akan muncul secara otomatis dan membantu Anda terhubung ke VPN. Ini sangat membantu untuk mengakses server melalui VPN, seperti bagaimana FireHost melakukan sesuatu.
sumber
Hanya penambahan Jawaban. Anda dapat menggunakan
-b
flag dan menentukan IP sumber Anda pada waktu akses.Format + Contoh
sumber