OpenVPN adalah perangkat lunak VPN sumber terbuka yang memungkinkan kami membuat terowongan VPN berbasis SSL. Bayangkan Anda ingin terhubung ke intranet perusahaan Anda dari lokasi yang jauh. Jangan khawatir karena jika Anda memiliki pengaturan server VPN, ini bisa dilakukan. Virtual Private Network (VPN) menyediakan terowongan aman yang memperluas jaringan pribadi di seluruh jaringan publik, yaitu membantu membuat Jaringan Area Luas (WAN) dari Jaringan Area Lokal (LAN) yang ada. Akibatnya, pengguna dapat dengan aman mengirim data melalui jaringan publik seolah-olah mereka terhubung langsung ke LAN mereka.
Anda dapat mempelajari lebih lanjut tentang OpenVPN di sini.
Instal dan Siapkan Server OpenVPN di Fedora 29/28/CentOS 7
Tanpa banyak teori, mari kita lihat prosedur langkah demi langkah tentang cara Menginstal dan Mengatur Server OpenVPN di Fedora 29/28/CentOS 7.
Perbarui server Anda.
dnf update <Instal OpenVPN dan Easy-RSA di Fedora 29/28
OpenVPN menyediakan daemon VPN yang kuat dan sangat fleksibel sementara paket Easy-RSA digunakan untuk menghasilkan pasangan kunci SSL yang digunakan untuk mengamankan koneksi VPN. Paket OpenVPN dan Easy-RSA tersedia di repo Fedora default. Jalankan perintah di bawah ini untuk menginstalnya.
dnf install openvpn easy-rsaInstal OpenVPN dan Easy-RSA di CentOS 7
OpenVPN tidak tersedia di repositori CentOS default tetapi tersedia di EPEL maka Anda perlu menginstal repo EPEL sebelum Anda dapat menginstal OpenVPN.
Untuk menambahkan Paket Ekstra untuk Enterprise Linux (EPEL), jalankan salah satu dari perintah berikut;
yum install epel-releaseatau
wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpmrpm -ivh epel-release-latest-7.noarch.rpmInstal OpenVPN dan Easy-RSA
yum install openvpn easy-rsaBuat CA Lokal dan buat Kunci Server dan file Sertifikat
Buat direktori untuk menyimpan kunci Server dan file Sertifikat.
mkdir /etc/openvpn/easy-rsaSalin skrip pembuatan kunci/sertifikat yang diinstal oleh Easy-RSA dari direktori default ke direktori yang dibuat di atas.
cp -air /usr/share/easy-rsa/3/* /etc/openvpn/easy-rsaArahkan ke
/etc/openvpn/easy-rsa
direktori dan mulai PKI baru.cd /etc/openvpn/easy-rsa./easyrsa init-pkiBuat sertifikat CA. Ini akan meminta Anda memasukkan sandi enkripsi dan nama umum server.
./easyrsa build-ca...menulis kunci pribadi baru ke '/etc/openvpn/easy-rsa/pki/private/ca.key.EajtR0SkLM'Masukkan frasa sandi PEM:PASSWORD Memverifikasi - Masukkan frasa sandi PEM:PASSWORD -----...-----Nama Umum (misalnya:nama pengguna, host, atau server Anda) [CA RSA Mudah]:server Pembuatan CA selesai dan Anda sekarang dapat mengimpor dan menandatangani permintaan sertifikat. File sertifikat CA baru Anda untuk penerbitan ada di:/etc/openvpn/easy-rsa/pki/ca.crtSebagaimana dinyatakan, sertifikat CA disimpan di
/etc/openvpn/easy-rsa/pki/ca.crt
.Buat file kunci Diffie-Hellman yang dapat digunakan selama handshake TLS dengan menghubungkan klien.
./easyrsa gen-dhIni akan menghasilkan kunci DH dan menyimpannya sebagai
/etc/openvpn/easy-rsa/pki/dh.pem
.Buat file kunci dan sertifikat untuk server.
./easyrsa build-server-full server nopassBuat file kunci dan sertifikat untuk klien.
./easyrsa build-client-full client nopassJika Anda perlu membatalkan sertifikat yang ditandatangani sebelumnya, buat sertifikat pencabutan.
./easyrsa gen-crlIni menyimpan sertifikat pencabutan di bawah
/etc/openvpn/easy-rsa/pki/crl.pem
.Buat kunci autentikasi pra-berbagi TLS/SSL
openvpn --genkey --secret /etc/openvpn/easy-rsa/pki/ta.keySalin Sertifikat/Kunci yang dihasilkan ke direktori konfigurasi server.
cp -rp /etc/openvpn/easy-rsa/pki/{ca.crt,dh.pem,ta.key,issued,private} /etc/openvpn/server /Konfigurasi Server OpenVPN
OpenVPN memiliki contoh file konfigurasi di dalam direktori dokumentasinya dan oleh karena itu untuk memudahkan hidup kita, kita akan menyalin contoh
/usr/share/doc/openvpn{-2.4.6,}/sample/sample-config-files/server.conf
file ke/etc/openvpn
untuk modifikasi.Di Fedora
cp /usr/share/doc/openvpn/sample/sample-config-files/server.conf /etc/openvpn/server/Pada CentOS 7
cp /usr/share/doc/openvpn-2.4.6/sample/sample-config-files/server.conf /etc/openvpn/server/Edit
server.conf
file sebagai berikut;vim /etc/openvpn/server/server.confUbah file sehingga terlihat seperti di bawah ini;
# Port TCP/UDP mana yang harus didengarkan OpenVPN?# Ubah agar sesuai dengan port Anda dan buka di firewallport 1194# TCP atau server UDP?proto udp# "dev tun " akan membuat tunnel dev IP yang dirutekan# Ubah jalur untuk certificatesca ca.crtcert dikeluarkan/server.crtkey private/server.key# Diffie hellman exchange key pathdh dh.pem# Jaringan topologitopologi subnet# OpenVPN Jaringan IP. Untuk di bawah ini, Server akan mengambil 10.8.0.1 untuk dirinya sendiri,# sisanya akan tersedia untuk klien. Server 172.16.0.0 255.255.255.0# arahan ini akan mengkonfigurasi semua klien untuk mengarahkan ulang default# gateway jaringan mereka melalui VPNpush "redirect- gateway def1 bypass-dhcp"# DNS serverpush "dhcp-option DNS 208.67.222.222"push "dhcp-option DNS 208.67.220.220"# Untuk kompresi yang kompatibel dengan klien yang lebih lama gunakan comp-lzo.comp-lzo# Jalankan VPN dengan hak istimewa terbatasuser nonegroup tidak ada# Status log filestatus /var/log/openvpn/openvpn-status.log# TLS/SSL otentikasi pra-berbagi keytls-auth ta.key 0# Buat direktori log VPN dan log filelog-append /var/log/openvpn/openvpn .log#Tambahkan baris ini untuk mengubah algoritma otentikasi (HMAC) dari SHA1 ke SHA512auth SHA512Buat direktori log;
mkdir /var/log/openvpn/Simpan file konfigurasi
Konfigurasikan Perutean
Aktifkan penerusan IP
Mengaktifkan penerusan IP memastikan bahwa lalu lintas dari klien dirutekan melalui alamat IP server sehingga alamat IP klien disembunyikan.
echo "net.ipv4.ip_forward =1">> /etc/sysctl.confJalankan perintah di bawah ini untuk melakukan perubahan;
sysctl --systemIzinkan port layanan OpenVPN melalui firewall
firewall-cmd --add-port=1194/udp --permanentAktifkan Penyamaran IP
firewall-cmd --add-masquerade --permanentMeneruskan lalu lintas yang diterima pada subnet OpenVPN yang ditentukan ke antarmuka melalui mana paket akan dikirim.
Temukan antarmuka tempat paket dikirim dengan menjalankan perintah di bawah ini;
ip route get 8.8.8.88.8.8.8 via 192.168.43.1 dev enp0s8 src 192.168.43.23Nama antarmuka mungkin berbeda untuk kasus Anda. Ganti yang sesuai.
firewall-cmd --permanent --direct --passthrough ipv4 -t nat -A POSTROUTING -s 172.16.0.0/24 -o enp0s8 -j MASQUERADEMuat ulang firewalld agar perubahan diterapkan.
firewall-cmd --reloadMulai dan atur OpenVPN start saat boot.
systemctl start [email protected] enable [email protected]Ketika layanan OpenVPN berjalan, itu akan membuat antarmuka tunneling, tun0;
ip add show tun04:tun0:mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 100 link/none inet 172.16 .0.1/24 brd 172.16.0.255 lingkup global tun0 valid_lft selamanya prefer_lft selamanya inet6 fe80::1155:c60c:c009:48c9/64 lingkup tautan stabil-privasi valid_lft selamanya preferen_lft selamanya Server VPN diberi alamat IP, 172.16.0.1 sedangkan klien pertama akan diberi 172.16.0.2.
Konfigurasikan Klien VPN
Agar klien VPN dapat terhubung ke server VPN, diperlukan salinan sertifikat CA, kunci klien, sertifikat klien, dan kunci autentikasi TLS/SSL yang dibuat di atas. Oleh karena itu, salin file-file ini ke klien target dan letakkan di direktori yang nyaman.
cd /etc/openvpn/easy-rsa/pki/scp {ca.crt,issued/client.crt,private/client.key, ta.key} [email protected]:~/Instal klien OpenVPN
- Jika Anda menggunakan server Linux/Unix sebagai klien, instal klien OpenVPN menggunakan manajer paket masing-masing, misalnya;
apt install openvpnyum install openvpn- Jika Anda terhubung dari mesin windows, Anda cukup mengunduh penginstal klien OpenVPN dari halaman unduhan OpenVPN dan menginstalnya.
Buat file konfigurasi OpenVPN untuk klien seperti yang ditunjukkan di bawah ini. Sebagai contoh, saya telah menyalin file sertifikat dan kunci ke direktori home saya di klien.
[email protected]:/home/amos# lsca.crt client.crt client.key ta.keyvim client.ovpnclienttls-clientpulldev tunproto udpremote 192.168.43.69 1194resolv-retry infinitenobinddhcp-option DNS 8.8.8.8pengguna nonegroup nogrouppersist-keypersist-tunkey-direction 1tls-auth ta.key 1comp-lzoverb 3ca client.crth SHA512 ca.crtcertcertUntuk terhubung ke server OpenVPN dari klien, jalankan salah satu perintah di bawah ini;
sudo openvpn client.ovpnatau
sudo openvpn --config client.ovpnJika koneksi berhasil, Anda akan melihat
Initialization Sequence Completed
.Senin 31 Des 03:54:39 2018 Perangkat TUN/TAP tun0 dibukaSenin 31 Des 03:54:39 2018 Panjang antrian TUN/TAP TX disetel ke 100Senin 31 Des 03:54:39 2018 do_ifconfig, tt->did_ifconfig_ipv6_setup =0Senin 31 Des 03:54:39 2018 /sbin/ip link set dev tun0 up mtu 1500Mon Des 31 03:54:39 2018 /sbin/ip addr add dev tun0 172.16.0.2/24 broadcast 172.16.0.255Mon Des 31 03 :54:39 2018 /sbin/ip route tambahkan 192.168.43.69/32 dev enp0s8Mon 31 Des 03:54:39 2018 /sbin/ip route tambahkan 0.0.0.0/1 melalui 172.16.0.1Mon Des 31 03:54:39 2018 /sbin/ip route tambahkan 128.0.0.0/1 melalui 172.16.0.1Mon Des 31 03:54:39 2018 GID disetel ke nogroupMon Des 31 03:54:39 2018 UID disetel ke noneMon Des 31 03:54:39 2018 Urutan Inisialisasi SelesaiJika Anda dapat memeriksa antarmuka, Anda akan melihat antarmuka tunneling dibuat.
ip add sh tun020:tun0:mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 100 link/none inet 172.16.0.2 /24 brd 172.16.0.255 lingkup global tun0 valid_lft selamanya prefer_lft selamanya inet6 fe80::dc37:c115:60f:6b86/64 tanda tautan lingkup 800 valid_lft selamanya prefer_lft selamanya Anda telah berhasil terhubung ke server VPN Anda.
Itu saja tentang cara menginstal dan mengatur server OpenVPN di Fedora 29/CentOS 7. Server OpenVPN Anda beroperasi penuh. Menikmati.
Tutorial Terkait
Konfigurasikan IPSEC VPN menggunakan StrongSwan di Ubuntu 18.04
Konfigurasikan Klien VPN strongSwan di Ubuntu 18.04/CentOS 8
Siapkan VPN IPSEC menggunakan StrongSwan di Debian 10
OpenVPN