Persediaan OpenVPN di Ubuntu 18.04 Bionic Beaver Linux
- 637
- 181
- Mr. Ramon Runolfsson
Objektif
Ketahui Cara Memasang dan Konfigurasi Pelayan OpenVPN di Ubuntu 18.04 Bionic Beaver
Keperluan
- Keizinan akar
Konvensyen
- # - Memerlukan arahan Linux yang diberikan dengan keistimewaan akar sama ada
secara langsung sebagai pengguna akar atau dengan menggunakansudo
perintah - $ - Memerlukan arahan Linux yang diberikan sebagai pengguna yang tidak layak
Versi lain dalam tutorial ini
Ubuntu 20.04 (Focal Fossa)
Pengenalan
Teknologi Rangkaian Persendirian Maya memungkinkan untuk mengakses rangkaian peribadi yang selamat dengan menggunakan rangkaian kurang selamat seperti Internet. VPN biasanya digunakan untuk menghubungkan cawangan organisasi jauh dari organisasi, menjadikannya kelihatan seolah -olah mereka adalah sebahagian daripada LAN yang sama (contohnya dua pejabat di bandar yang berbeza). Lalu lintas di antara sisi sambungan disulitkan menggunakan terowong, yang melindungi data yang dihantar dan maklumat sambungan itu sendiri. Untuk ciri -ciri yang sama, VPN sering digunakan untuk mengelakkan sekatan kerajaan dan tidak dikenali trafik internet.
Dalam tutorial ini, kita akan melihat cara membuat pelayan rangkaian peribadi maya menggunakan OpenVPN, perisian VPN sumber terbuka di Ubuntu 18.04 Bionic Beaver.
Langkah 1 - Pemasangan
Memasang OpenVPN di Ubuntu 18.04 sangat mudah: perisian ini tersedia di repositori lalai. Kita juga perlu memasang Easy-RSA
Pakej, yang akan membantu kami dalam penciptaan sijil dan kunci yang diperlukan:
$ sudo apt-get update & & sudo apt-get Install OpenVPN easy-rsa
Beberapa saat dan perisian akan dipasang di mesin kami, bersedia untuk dikonfigurasikan.
Langkah 2 - Persediaan Infrastruktur Pelayan
Dalam bahagian ini, kami akan menjana sijil dan kunci yang diperlukan: pertama kami akan membuat adat kami Ca
(Pihak Berkuasa Sijil), maka kami akan menjana pelayan Sijil/Pasangan Kunci
, The Diffie-Hellman
parameter dan Kunci TLS-Auth
.
Mari kita mulakan dengan menghasilkan direktori yang akan mengandungi skrip yang akan melakukan pekerjaan yang berat untuk kita. Kami menjalankan Make-Cadir
perintah, itu adalah sebahagian daripada Easy-RSA
pakej, memberikan nama direktori yang ingin kami buat. Kami juga ingin memasukkan direktori sebaik sahaja ia dibuat:
Sijil $ Make-Cadir & Sijil CD
Dalam kes ini saya memanggil direktori sijil
. Ini akan menjadi direktori kerja kami untuk seluruh tutorial, oleh itu semua arahan yang disebutkan mesti dianggap sebagai dilancarkan di dalamnya.
Langkah 2.1 - Persediaan pembolehubah
Sebagai perkara pertama kita perlu menyesuaikan pembolehubah yang akan digunakan untuk menetapkan nilai yang digunakan semasa penjanaan Pihak Berkuasa Sijil dan Sijil/Kunci. Pembolehubah ditakrifkan di dalam vars
Fail:
eksport key_config = "$ easy_rsa/yang mana-mana.mydomain "Export Key_ou =" MyOrganizationalUnit "
Pemboleh ubah yang sangat penting adalah Key_config
, yang, secara lalai ditetapkan dengan memanggil skrip pembalut kecil yang harus mengambil konfigurasi SSL yang betul. Walau bagaimanapun, jika digunakan dengan cara ini ia menghasilkan ralat, kerana skrip tidak mengambil konfigurasi. Untuk mengelakkan ini, kami menentukan fail konfigurasi secara langsung:
Eksport key_config = "$ easy_rsa/openssl-1.0.0.CNF "
Nilai untuk pembolehubah lain mesti diubah dan disesuaikan dengan keperluan khusus anda. Selepas kami selesai mengedit fail, kami mesti "sumber" itu, untuk membiarkan pembolehubah menjadi sebahagian daripada persekitaran runtime kami:
$ sumber vars
Langkah 2.2 - Generasi CA
Kami boleh meneruskan dan menjana CA kami (Pihak Berkuasa Sijil). Menjalankan bersih-semua
dan Build-ca
skrip mengikut urutan. Generasi CA akan bermula, menggunakan nilai pembolehubah yang kami tentukan dalam vars
Fail sebagai lalai untuk medan yang sepadan:
$ ./membersihkan-semua && ./Build-CA
Langkah 2.3 - Sijil dan Generasi Utama
Langkah seterusnya ialah penjanaan sijil dan kunci untuk pelayan. Ini hanya masalah menjalankan skrip binaan-pelayan yang memberikan nama yang ingin kami gunakan untuk sijil dan kunci sebagai parameter. Dalam kes ini kita menggunakan "pelayan" kerana ia adalah nama lalai yang digunakan dalam fail konfigurasi VPN, seperti yang akan kita lihat lebih lanjut dalam tutorial:
$ ./Build-Key-Server Server
Ikuti arahan di skrin. The Kata laluan mencabar
dan nama syarikat
Bidang adalah pilihan.
Langkah 2.4 - Generasi Parameter Diffie -Hellman
Langkah seterusnya adalah untuk mewujudkan parameter diffie-hellman. Parameter tersebut digunakan untuk menukar kunci kriptografi menggunakan saluran awam dan tidak selamat. Kami menggunakan Build-dh
Skrip:
$ ./binaan-dh
Skrip akan mengambil sedikit masa untuk menjana parameter, bergantung kepada mesin yang kita jalankan, bersabarlah!
Langkah 2.5 - Menjana kunci rawak untuk digunakan sebagai rahsia bersama
Untuk mengukuhkan keselamatan kami, selain menggunakan sijil, kami akan menjana dan menggunakan kunci untuk menggunakan rahsia bersama. Pelayan dan setiap pelanggan memerlukan salinan kunci ini:
$ OpenVPN --GenKey -Kekunci Secret/TA.kunci
Langkah 2.6 - Menyalin fail yang dihasilkan
Pihak Berkuasa Sijil (CA.CRT), sijil (pelayan.CRT), kunci (pelayan.kunci), parameter diffie-hellman (DH2048.PEM) dan kunci TLS-Auth (TA.kunci) fail, sepatutnya dihasilkan di dalam Kunci
direktori. Sekarang sudah tiba masanya untuk menyalinnya /etc/openvpn
:
$ sudo cp kekunci/pelayan.CRT, pelayan.Kunci, ca.CRT, DH2048.PEM, TA.kunci /etc /openvpn
Langkah 3 - Konfigurasi OpenVPN
Kami boleh meneruskan dalam mengkonfigurasi perkhidmatan OpenVPN. Konfigurasi sampel (dimampatkan) boleh didapati di /usr/share/doc/openvpn/contoh/sampel-config/pelayan.Conf.Gz
: kita hanya perlu mengeluarkannya ke dalam direktori /etc /openvpn:
$ gzip -d -c/usr/share/doc/openvpn/contoh/sampel -config -files/pelayan.Conf.Gz | sudo tee/etc/openvpn/pelayan.conf> /dev /null
Dengan perintah di atas, kami membongkar fail asal, menghantar outputnya ke stdout dan mengalihkannya melalui /etc/openvpn/pelayan.Conf
fail. Sahkan bahawa nilai lalai dalam fail konfigurasi sesuai dengan yang kami hasilkan:
ca ca.pelayan CRT CERT.pelayan utama CRT.Kunci # Fail ini harus disimpan rahsia DH DH2048.PEM
Langkah 4 - Setup firewall dan biarkan pemajuan IP
Kami hampir selesai menyediakan pelayan VPN kami: Sekarang kita mesti menyediakan firewall, untuk membolehkan trafik masuk dari pelabuhan 1194/UDP
(port lalai dan protokol):
$ sudo ufw membenarkan OpenVPN
Sangat penting: Secara lalai hanya trafik antara klien dan pelayan melalui terowong VPN, ini tidak termasuk trafik internet. Untuk mengubah tingkah laku ini, kita harus terlebih dahulu tidak mengadakan pilihan secara dalam talian 192
fail konfigurasi pelayan (/etc/openvpn/pelayan.Conf
):
Tolak "Redirect-Gateway DEF1 Bypass-DHCP"
Seterusnya, kita perlu menggunakan peraturan yang boleh diperolehi untuk NAT pelanggan VPN melalui Internet. Perhatikan bahawa saya menentukan ETH0
antara muka tetapi anda perlu menyesuaikan peraturan ke antara muka yang digunakan pada mesin anda:
$ sudo iptables -t nat -a postrouting -s 10.8.0.0/24 -O ETH0 -J Masquerade
Tetapkan cara ini, bagaimanapun, peraturan tidak akan berterusan reboot. Untuk membuatnya berterusan, kita mesti menambahkannya ke /etc/ufw/sebelumnya.peraturan
fail. Fail ini mengandungi peraturan yang digunakan oleh UFW sebelum yang ditakrifkan dari baris arahan. Tambahkan peraturan sebagai yang pertama dalam fail:
*nat: postrouting menerima [0: 0] -a postrouting -s 10.8.0.0/8 -O ETH0 -J MASQUERADE komited
Sekarang kita mesti mengaktifkan Pakej Pakej. Pertama kita perlu mengedit /etc /sysctl.fail conf dan uncomment garis 28
:
# Uncomment baris seterusnya untuk membolehkan pemajuan paket untuk bersih IPv4.IPv4.ip_forward = 1
Pada ketika ini kita harus memuatkan semula konfigurasi:
$ sudo sysctl -p /etc /sysctl.Conf
Kami masih perlu membenarkan penghantaran paket melalui firewall UFW. Buka /etc/lalai/ufw
dan berubah Default_forward_policy
dari Jatuh
ke Menerima
:
# Tetapkan dasar hadapan lalai untuk menerima, menjatuhkan atau menolak. Sila ambil perhatian bahawa # jika anda menukar ini, anda kemungkinan besar ingin menyesuaikan peraturan anda default_forward_policy = "Terima"
Akhirnya, tambah semula firewall:
$ sudo ufw muat semula
Langkah 5 - Mulakan Perkhidmatan
Kami kini akan menggunakan SystemCtl untuk memulakan pelayan, lulus pembolehubah yang mengandungi nama fail konfigurasi kami ke unit perkhidmatan. Dengan menggunakan SystemD kita dapat melakukan ini dengan mengutamakan nilai dengan @
simbol. Sebagai contoh:
$ sudo Systemctl Mula OpenVPN@Server
Pada ketika ini pelayan harus berjalan dan berjalan. Sahkan dengan berjalan
$ sudo Systemctl IS-Active OpenVPN@Server
Perintah harus kembali "aktif".
Langkah 6 - Persediaan Pelanggan
Untuk setiap pelanggan yang ingin kami gunakan, kami mesti menjana pasangan sijil/kunci, seperti yang kami lakukan di atas untuk pelayan:
$ sumber vars && ./klien binaan-kunci
Sekarang kita mempunyai dua pilihan: kita boleh menyalin fail yang diperlukan untuk pelanggan kami, atau kami boleh menjana .ovpn
fail, di mana kandungan fail tersebut ditanam. Kami akan menumpukan pada pilihan kedua.
Sama seperti kami melakukan pelayan, kami akan mengambil konfigurasi sampel sebagai titik permulaan kami. Mari buat direktori khusus dan salin templat:
$ mkdir pelanggan & cp/usr/share/doc/openvpn/contoh/sampel-config-files/client.pelanggan/pelanggan conf.ovpn
Ikuti bahagian fail yang sangat baik, dan menyesuaikan pilihan kepada yang ditakrifkan dalam konfigurasi pelayan (dalam kes kami sudah selesai). Tetapkan IP dan port pelayan dengan mengubah suai tetapan (baris 42):
Jauh saya-server-1 1194
Di mana "pelayan my" mesti digantikan oleh IP pelayan dan port mesti diubah jika tidak menggunakan lalai. Seterusnya, Uncomment Baris berikut (61,62):
# Menurunkan keistimewaan selepas permulaan (bukan tingkap sahaja); pengguna tiada siapa; kumpulan kumpulan
Sekarang, kami akan menggantikan rujukan kepada CA, Sijil, Kunci, Parameter DH dan Kunci TLS-Auth dengan kandungan sebenar fail: dengan cara ini kami akan membuat konfigurasi yang mudah dieksport, mudah dieksport. Rujukan komen pertama (baris 88-90 dan 108)
#ca ca.CRT #CERT CLIENT.CRT #Key Client.Kunci #TLS-Auth TA.Kunci 1
Seterusnya, salin kandungan fail yang disebutkan, antara tag yang sesuai. Kandungan Pihak Berkuasa Sijil mesti dimasukkan antara tag, kandungan fail sijil di dalam dan kunci antara . Sama seperti contoh, pertimbangkan CA:
# Inilah kandungan CA.Fail CRT
Untuk kunci TLS-Auth, sebaliknya kita akan lakukan:
TROSIK Kunci 1 # Kandungan TA.fail utama
Akhirnya, import fail dalam aplikasi klien anda dan anda harus bersedia untuk pergi.
Contoh sambungan Android
Untuk menyambung ke pelayan OpenVPN kami dari Android, kami akan menggunakan aplikasi OpenVPN rasmi: OpenVPN Connect. Setelah dipasang dan dilancarkan menu berikut akan muncul:
Menu aplikasi Android OpenVPN
Ketik, item terakhir, Profil OVPN
Dari pemetik fail, navigasi ke tempat di mana anda menyimpan .fail ovpn, dan pilihnya, daripada ketik pada "import" di sudut kanan atas. Profil sepatutnya diimport dengan betul:
Import aplikasi Android OpenVPN
Sekarang, sama seperti sebelumnya, ketik Tambah, dan pada skrin berikut mengaktifkan sambungan:
Aplikasi openvpn Android disambungkan
Kejayaan!
Tutorial Linux Berkaitan:
- Perkara yang hendak dipasang di Ubuntu 20.04
- Perkara yang perlu dilakukan setelah memasang ubuntu 20.04 Focal Fossa Linux
- Ubuntu 20.04 Trik dan Perkara yang Anda Tidak Tahu
- Cara Menyiapkan Pelayan OpenVPN di Ubuntu 20.04
- Asas Ubuntu 22.04 Persediaan Sambungan Pelanggan/Pelayan OpenVPN
- Ubuntu 20.04 Panduan
- Ubuntu 20.04 Hadoop
- 8 persekitaran desktop Ubuntu terbaik (20.04 Focal Fossa ..
- Senarai dan Pemasangan Pelanggan FTP di Ubuntu 20.04 Linux ..
- Pengurus Rangkaian Linux GUI
- « Cara menyesuaikan panel dok di Ubuntu 18.04 Bionic Beaver Linux
- Cara Memasang Kylin Desktop di Ubuntu 18.04 Bionic Beaver Linux »