GNU/Linux >> Belajar Linux >  >> Panels >> OpenVPN

Instal OpenVPN di PC Linux Anda

OpenVPN membuat terowongan terenkripsi antara dua titik, mencegah pihak ketiga mengakses lalu lintas jaringan Anda. Dengan menyiapkan server jaringan pribadi virtual (VPN), Anda menjadi penyedia VPN Anda sendiri. Banyak layanan VPN populer sudah menggunakan OpenVPN, jadi mengapa menghubungkan koneksi Anda ke penyedia tertentu jika Anda dapat memiliki kendali penuh?

Artikel pertama dalam seri ini menunjukkan cara mengatur dan mengkonfigurasi PC Linux untuk berfungsi sebagai server OpenVPN Anda. Itu juga membahas cara mengkonfigurasi router Anda sehingga Anda dapat mencapai server VPN Anda dari jaringan luar.

Artikel kedua ini menunjukkan cara menginstal perangkat lunak server OpenVPN menggunakan langkah-langkah yang disesuaikan dari wiki OpenVPN.

Instal OpenVPN

Pertama, instal OpenVPN dan easy-rsa application (untuk membantu Anda mengatur otentikasi di server Anda) menggunakan manajer paket Anda. Contoh ini menggunakan Fedora Linux; jika Anda telah memilih sesuatu yang berbeda, gunakan perintah yang sesuai untuk distribusi Anda:

$ sudo dnf install openvpn easy-rsa 

Ini membuat beberapa direktori kosong:

  • /etc/openvpn
  • /etc/openvpn/client
  • /etc/openvpn/server

Jika ini tidak dibuat selama penginstalan, buatlah secara manual.

Menyiapkan autentikasi

OpenVPN bergantung pada easy-rsa skrip dan harus memiliki salinannya sendiri. Salin easy-rsa skrip dan file:

$ sudo mkdir /etc/openvpn/easy-rsa
$ sudo cp -rai /usr/share/easy-rsa/3/* \
/etc/openvpn/easy-rsa/

Lebih banyak sumber daya Linux

  • Lembar contekan perintah Linux
  • Lembar contekan perintah Linux tingkat lanjut
  • Kursus online gratis:Ikhtisar Teknis RHEL
  • Lembar contekan jaringan Linux
  • Lembar contekan SELinux
  • Lembar contekan perintah umum Linux
  • Apa itu container Linux?
  • Artikel Linux terbaru kami

Otentikasi itu penting, dan OpenVPN menganggapnya sangat serius. Teorinya adalah jika Alice perlu mengakses informasi pribadi di dalam perusahaan Bob, Bob harus memastikan bahwa Alice benar-benar Alice. Demikian juga, Alice harus memastikan bahwa Bob benar-benar Bob. Kami menyebutnya otentikasi timbal balik.

Praktik terbaik hari ini memeriksa atribut dari dua dari tiga faktor yang mungkin:

  • Sesuatu yang Anda miliki
  • Sesuatu yang Anda ketahui
  • Sesuatu yang Anda

Ada banyak pilihan. Pengaturan OpenVPN ini menggunakan:

  • Sertifikat: Sesuatu yang dimiliki klien dan server
  • Kata sandi sertifikat: Sesuatu yang diketahui orang

Alice dan Bob membutuhkan bantuan untuk saling mengotentikasi. Karena mereka berdua memercayai Cathy, Cathy mengambil peran yang disebut otoritas sertifikat (CA). Cathy membuktikan bahwa Alice dan Bob sama-sama seperti yang mereka klaim. Karena Alice dan Bob sama-sama mempercayai Cathy, sekarang mereka juga saling percaya.

Tapi apa yang meyakinkan Cathy bahwa Alice dan Bob benar-benar Alice dan Bob? Reputasi Cathy di komunitas bergantung pada cara melakukannya dengan benar, jadi jika dia ingin Danielle, Evan, Fiona, Greg, dan yang lainnya juga memercayainya, dia akan menguji klaim Alice dan Bob dengan ketat. Setelah Alice dan Bob meyakinkan Cathy bahwa mereka benar-benar Alice dan Bob, Cathy menandatangani sertifikat agar mereka dapat berbagi satu sama lain dan dunia.

Bagaimana Alice dan Bob mengenal Cathy—dan bukan seseorang yang meniru identitasnya—menandatangani sertifikat? Mereka menggunakan teknologi yang disebut kriptografi kunci publik:

  • Temukan algoritme kriptografi yang mengenkripsi dengan satu kunci dan mendekripsi dengan kunci lain.
  • Deklarasikan satu kunci pribadi dan bagikan kunci lainnya dengan publik.
  • Cathy membagikan kunci publiknya dan salinan teks jelas dari tanda tangannya kepada dunia.
  • Cathy mengenkripsi tanda tangannya dengan kunci pribadinya. Siapa pun dapat mendekripsinya dengan kunci publiknya.
  • Jika tanda tangan Cathy yang didekripsi cocok dengan salinan teks-jelas, Alice dan Bob dapat mempercayai bahwa Cathy benar-benar menandatanganinya.

Anda menggunakan teknologi yang sama ini setiap kali Anda membeli barang dan jasa secara online.

Terapkan otentikasi

Dokumentasi OpenVPN menyarankan pengaturan CA pada sistem terpisah atau setidaknya direktori terpisah di server OpenVPN. Dokumentasi juga menyarankan pembuatan sertifikat server dan klien dari server dan klien. Karena ini adalah pengaturan yang sederhana, Anda dapat menggunakan server OpenVPN sebagai CA-nya sendiri dan meletakkan sertifikat dan kunci ke dalam direktori tertentu di server.

Buat sertifikat dari server dan salin ke setiap klien sebagai bagian dari penyiapan klien.

Implementasi ini menggunakan sertifikat yang ditandatangani sendiri. Ini berfungsi karena server memercayai dirinya sendiri, dan klien memercayai server. Oleh karena itu, server adalah CA terbaik untuk menandatangani sertifikat.

Dari server OpenVPN, atur CA:

$ sudo mkdir /etc/openvpn/ca
$ cd /etc/openvpn/ca
$ sudo /etc/openvpn/easy-rsa/easyrsa init-pki
$ sudo / etc/openvpn/easy-rsa/easyrsa build-ca

Gunakan frasa sandi yang mudah diingat tetapi sulit ditebak.

Siapkan pasangan kunci server dan permintaan sertifikat:

$ cd /etc/openvpn/server
$ sudo /etc/openvpn/easy-rsa/easyrsa init-pki
$ sudo /etc/openvpn/easy-rsa/easy-rsa gen-req OVPNserver2020 tidak lulus

Dalam contoh ini, OVPNServer2020 adalah nama host apa pun yang Anda tetapkan untuk server OpenVPN Anda di artikel pertama dalam seri ini.

Buat dan tandatangani sertifikat

Sekarang Anda harus mengirim permintaan server ke CA dan membuat serta menandatangani sertifikat server.

Langkah ini pada dasarnya menyalin file permintaan dari /etc/openvpn/server/pki/reqs/OVPNserver2020.req ke /etc/openvpn/ca/pki/reqs/OVPNserver2020.req untuk mempersiapkannya untuk ditinjau dan ditandatangani:

$ cd /etc/openvpn/ca
$ sudo /etc/openvpn/easy-rsa/easyrsa \
import-req /etc/openvpn/server/pki/reqs/OVPNserver2020.req OVPNserver2020

Tinjau dan tandatangani permintaan

Anda telah membuat permintaan, jadi sekarang Anda harus meninjau dan menandatangani sertifikat:

$ cd /etc/openvpn/ca
$ sudo /etc/openvpn/easy-rsa/easyrsa \
show-req OVPNserver2020

Masuk sebagai server:

$ cd /etc/openvpn/ca
$ sudo /etc/openvpn/easy-rsa/easyrsa \
sign-req server OVPNserver2020

Letakkan salinan server dan sertifikat CA di mana mereka berada untuk file konfigurasi untuk mengambilnya:

$ sudo cp /etc/openvpn/ca/pki/issued/OVPNserver2020.crt \
/etc/openvpn/server/pki/
$ sudo cp /etc/openvpn/ca/pki/ ca.crt \
/etc/openvpn/server/pki/

Selanjutnya, buat parameter Diffie-Hellman sehingga klien dan server dapat bertukar kunci sesi:

$ cd /etc/openvpn/server
$ sudo /etc/openvpn/easy-rsa/easyrsa gen-dh

Hampir sampai

Artikel berikutnya dalam seri ini akan menunjukkan cara mengonfigurasi dan memulai server OpenVPN yang baru saja Anda buat.

Artikel ini didasarkan pada blog D. Greg Scott dan digunakan kembali dengan izin.


OpenVPN
  1. Konfigurasikan server OpenVPN Anda di Linux

  2. Instal ownCloud 5 di Linux Mint 14

  3. Cara Memasang Lingkungan Desktop di Server Linux Tanpa Kepala Anda

  1. Cara Termudah Untuk Menginstal Dan Mengonfigurasi Server OpenVPN Di Linux

  2. Instal dan Konfigurasi Klien OpenVPN di Rocky Linux 8

  3. Siapkan Server OpenVPN di Rocky Linux 8

  1. Instal dan Siapkan Server OpenVPN di Ubuntu 20.04

  2. Instal dan Konfigurasi OpenVPN Server FreeBSD 12

  3. Cara Menginstal OpenVPN di Ubuntu 18.04