Pertanyaan Hubungkan / putuskan sambungan dari VPN dari baris perintah


Saya memiliki dua pengaturan VPN pada mesin Ubuntu saya, satu menggunakan vpnc dan satu menggunakan PPTP. Kedua pengaturan ini menggunakan antarmuka pengelola jaringan GNOME dan bekerja dengan baik. Namun kadang-kadang saya perlu mengakses mesin ini dari jarak jauh - apakah ada cara untuk menghubungkan atau memutus sambungan ke VPN ini dari baris perintah?


111
2017-08-16 15:15


asal


Apakah perintah vpnc terperinci sini tidak bekerja untukmu? Juga, ada instruksi untuk mengkonfigurasi dan menghubungkan ke PPTP sini. Apakah mereka tidak berfungsi? - Kris Harper


Jawaban:


Jika Anda ingin berinteraksi dengan NetworkManager dari baris perintah, Anda dapat menggunakan perintah "nmcli".

daftarkan semua koneksi NM: nmcli con

mulai koneksi (wifi, vpn, dll): nmcli con up id ConnectionName

koneksi ke bawah: nmcli con down id ConnectionName

(lebih banyak perintah nmcli di manpage nmcli).


Perhatikan juga bahwa pengguna biasa biasanya tidak memiliki izin untuk mengontrol jaringan. Menggunakan perintah di atas dengan sudo harus berfungsi untuk sebagian besar koneksi, tetapi VPN secara khusus mungkin gagal "Kesalahan: Aktivasi koneksi gagal: tidak ada rahasia VPN yang valid."

Jika itu terjadi pada Anda, kemungkinan kata sandi VPN disimpan di gnome-keyring pengguna Anda, yang membuatnya tidak dapat diakses oleh pengguna root. Komentar ini menjelaskan mengapa.

Untuk memperbaikinya, edit / etc / NetworkManager / system-connections / ConnectionName dan dibawah [vpn], mengubah bendera kata sandi baris ke:

password-flags=0

Jika ada garis yang dimulai dengan Xauth password-flags, ganti saja.

Kemudian tambahkan yang berikut di bawah ini [vpn] blok:

[vpn-secrets]
password=YourPassword

(Jika pada langkah sebelumnya Anda mengubah garis Xauth password-flags, tambahkan Xauth password=... sebagai gantinya.)

Sekarang mulai ulang pengelola jaringan dengan:

sudo service network-manager restart

Kemudian mulailah koneksi VPN dengan sudo nmcli con up id ConnectionName harus bekerja tanpa masalah.


163
2017-08-17 03:44



Saya berharap ada perintah pemutus umum yang akan memutuskan koneksi VPN tanpa harus menentukan id-nya. Itu mungkin akan terjadi fitur ini (Saya ingin) lebih mudah diimplementasikan. - Lonnie Best
Jika Anda menggunakan ipsec (misalnya vpnc), Anda mungkin juga perlu menambahkan "IPSec secret-flags = 0" dan "IPSec secret = <grouppw>" di tempat masing-masing - Matt
Ini masih tidak memperbaiki saya :( Saya mendapat pesan "Kesalahan: Aktivasi koneksi gagal: alasan yang tidak diketahui." - Evildonald
Saya mengambilnya kembali ... setelah ketiga kalinya saya menjalankan perintah itu berhasil. Waktu 1 gagal dengan cepat. Waktu ke-2 gagal secara perlahan. Ketiga kalinya berhasil! - Evildonald
Hapus teks PW ?? Sangat?? Adakah yang punya solusi AMAN? - user447607


Jawaban ihashacks dengan komentar Matt berhasil bagi saya ... hampir. Harus men-tweak satu baris.

baris kata kunci saya benar-benar membaca: "Xauth password-flag". Jawaban yang diterima tidak akan berhasil untuk saya sampai saya berubah menjadi yang berikut

[vpn]
...
Xauth password-flag=0
IPSec secret-flags=0

[vpn-secrets]
Xauth password=<my pw> ## This is the one I changed.
IPSec secret=<group pw>

Tidak yakin mengapa koneksi vpn saya memiliki "Xauth" sebelum setiap penyebutan kata sandi.

(Maaf, ini adalah jawaban baru, belum bisa berkomentar.)


4
2018-03-23 05:03



Ini untuk beberapa jenis VPN, misalnya, Cisco satu; sangat membantu untuk kasus-kasus ini! Ada kesalahan, meskipun: kasus yang benar dari satu kunci adalah IPSec secret- jika tidak, itu tidak diakui oleh NM. - Marcus
Terima kasih Marcus, saya telah melakukan koreksi pada jawaban saya sehingga tidak ada yang mencoba untuk menyalin / menempelkan salah ketik. - John