Cara Mudah Setting OpenVPN Server di Linux

Cara Mudah Setting OpenVPN Server di Linux

Untuk install OpenVPN Server banyak yang harus dikonfigurasi (certificate, key, encryption, firewall) seperti pada tutorial How To Set Up an OpenVPN Server on Ubuntu 18.04. Yang tidak mau repot melakukan konfigurasi tersebut satu persatu dapat mengikuti tutorial berikut ini.

Install OpenVPN Server

Semua tahapan install OpenVPN Server telah dibuat ke dalam bash script, bahkan kita dapat melakukan install dengan mudah menggunakan smartphone, cukup remote access SSH ke server. Installer OpenVPN Server ini mendukung distribusi Linux Debian, Ubuntu, dan CentOS. Sangat memudahkan System Administrator, cukup satu bash script untuk 3 distribusi Linux. Source codenya tersedia di GitHub repository Nyr/openvpn-install.

Download bash script openvpn-install.sh

Beri hak akses execute

Jalankan openvpn-install.sh dengan mode root

Lalu ditampilkan installernya, yang harus dilakukan yaitu:

  1. Masukkan Public IP address
  2. Pilih protocol, isi 1 untuk UDP
  3. Nomor port untuk OpenVPN, default 1194
  4. DNS resolver yang ingin digunakan, saya memilih 3 untuk Google
  5. Client name untuk file konfigurasi koneksi
  6. Terakhir tekan sembarang tombol untuk melanjutkan ke tahapan konfigurasi secara otomatis
Cara Mudah Install OpenVPN Server di Linux
Install OpenVPN Server via openvpn-install.sh

Jika tahapan install OpenVPN telah selesai tampilannya seperti pada gambar di bawah ini. Dibuatkan file konfigurasi untuk client.

Cara Mudah Install OpenVPN Server di Linux
Install OpenVPN Selesai

Mengecek service OpenVPN

OpenVPN Client di Linux

Install OpenVPN Client

Berbasis Debian/Ubuntu

Berbasis Fedora/CentOS

Sebelum terhubung ke OpenVPN Server kita lihat dulu Public IP address dari PC Client. Public IP address dari PC Client akan berubah menjadi Public IP address dari OpenVPN Server jika telah sukses terhubung.

Cara Mudah Install OpenVPN Server di Linux
Public IP Address Tanpa VPN

Download file konfigurasi client yang telah digenerate pada saat install (client.ovpn). Lalu jalankan perintah di bawah ini untuk terhubung ke OpenVPN Server.

Jika sukses terhubung tampilannya seperti di bawah ini.

Cara Mudah Install OpenVPN Server di Linux
OpenVPN Client di Linux Sukses Terhubung

Memeriksa kembali Public IP address PC Client. Public IP address berubah menjadi Public IP address OpenVPN Server.

Public IP Address dengan VPN

Aplikasi OpenVPN client pada platform lain

  1. iOS
  2. Android
  3. OS X
  4. Windows

Untuk menambah/menghapus user dan uninstall OpenVPN Server jalankan kembali bash script openvpn-install.sh. Tampilannya seperti pada gambar di bawah ini.

Cara Mudah Install OpenVPN Server di Linux
Menambah User OpenVPN

Tunnel Network Interface

Ketika menjalankan OpenVPN terdapat network interface baru dengan nama tun0. tun0 di server memiliki IP address 10.8.0.1, sementera tun0 di client memiliki IP address 10.8.0.2.

Cara Mudah Install OpenVPN Server di Linux
Tunnel Network Interface

Misalnya pada server terdapat web server yang berjalan seperti Apache, kita dapat mengaksesnya dengan menggunakan IP address tun0 milik server.

Cara Mudah Install OpenVPN Server di Linux
Akses Web Server via Tunnel IP Address

Update

Ketemu lagi OpenVPN installer yang lebih baru dari angristan, source code dasarnya menggunakan OpenVPN installer dari Nyr.

Cara Mudah Setting OpenVPN Server di Linux
Distro Linux yang didukung

Cara installnya sama, download script dan jalankan.

Selamat mencoba 🙂

Default image
Musa Amin
I am a Linux System Administrator and also write many tutorials about Linux, Cloud, and Open Source. Hire me via email hai[at]musaamin.web.id.

18 Comments

  1. kalau untuk buat username dan password gimana pak? Jadi maksudnya disini saya mau buat untuk jualan vpn. Terima kasih

  2. kalau clientnya router mikrotik bagaimana ya om ? bagian username, password, dan certificate nya pakai yang mana ya ?

  3. Terimakasih tutorialnya pak.

    sy sudah bisa connect ke server.
    tapi bagaimana caranya agar bisa internet ?

    Terimakasih.

    • percobaan di atas menggunakan VPS, kalau client sudah terhubung ke OpenVPN server harusnya sudah bisa internetan

      • Terimakasih Pak Musa atas Jawabannya,
        Kalau internetnya lewat ISP client tidak via VPS apakah bisa pak?
        Atas Jawabannya sy ucapkan terimakasih.

        • sepertinya bisa, port openvpn server diforward ke ip server. saya sendiri belum pernah jalankan topologi seperti itu, selama ini praktek langsung di VPS.

  4. Terima Kasih tutorialnya pak, sudah saya coba cuma masih blm bisa connect, masih ada error pada (can’t load /etc/openvpn/server/easy-rsa/pki/.rnd into RGN)
    pernah mengalami hal yang sama pak ?

  5. kalau saya nyoba di local virtual box bisa?

  6. Error Code “Wed Mar 11 11:10:35 2020 Unrecognized option or missing or extra parameter(s) in /home/iqbaal/baalzebub.ovpn:17: block-outside-dns (2.4.4)
    Wed Mar 11 11:10:35 2020 OpenVPN 2.4.4 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on May 14 2019
    Wed Mar 11 11:10:35 2020 library versions: OpenSSL 1.1.1 11 Sep 2018, LZO 2.08
    Wed Mar 11 11:10:35 2020 Outgoing Control Channel Encryption: Cipher ‘AES-256-CTR’ initialized with 256 bit key
    Wed Mar 11 11:10:35 2020 Outgoing Control Channel Encryption: Using 256 bit message hash ‘SHA256’ for HMAC authentication
    Wed Mar 11 11:10:35 2020 Incoming Control Channel Encryption: Cipher ‘AES-256-CTR’ initialized with 256 bit key
    Wed Mar 11 11:10:35 2020 Incoming Control Channel Encryption: Using 256 bit message hash ‘SHA256’ for HMAC authentication
    Wed Mar 11 11:10:35 2020 TCP/UDP: Preserving recently used remote address: [AF_INET]36.74.174.251:1194
    Wed Mar 11 11:10:35 2020 Socket Buffers: R=[212992->212992] S=[212992->212992]
    Wed Mar 11 11:10:35 2020 UDP link local: (not bound)
    Wed Mar 11 11:10:35 2020 UDP link remote: [AF_INET]36.74.174.251:1194
    Wed Mar 11 11:11:35 2020 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
    Wed Mar 11 11:11:35 2020 TLS Error: TLS handshake failed
    Wed Mar 11 11:11:35 2020 SIGUSR1[soft,tls-error] received, process restarting
    Wed Mar 11 11:11:35 2020 Restart pause, 5 second(s)
    Wed Mar 11 11:11:40 2020 TCP/UDP: Preserving recently used remote address: [AF_INET]36.74.174.251:1194
    Wed Mar 11 11:11:40 2020 Socket Buffers: R=[212992->212992] S=[212992->212992]
    Wed Mar 11 11:11:40 2020 UDP link local: (not bound)
    Wed Mar 11 11:11:40 2020 UDP link remote: [AF_INET]36.74.174.251:1194
    Wed Mar 11 11:12:40 2020 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
    Wed Mar 11 11:12:40 2020 TLS Error: TLS handshake failed
    Wed Mar 11 11:12:40 2020 SIGUSR1[soft,tls-error] received, process restarting
    Wed Mar 11 11:12:40 2020 Restart pause, 5 second(s)
    Wed Mar 11 11:12:45 2020 TCP/UDP: Preserving recently used remote address: [AF_INET]36.74.174.251:1194
    Wed Mar 11 11:12:45 2020 Socket Buffers: R=[212992->212992] S=[212992->212992]
    Wed Mar 11 11:12:45 2020 UDP link local: (not bound)
    Wed Mar 11 11:12:45 2020 UDP link remote: [AF_INET]36.74.174.251:1194 ” Bagaimana pak ? waktu konfigurasi “openvpn –client –config /home/user/client.ovpn”
    Saya menggunakan linux mint cinnamon v.19.xx terima kasih pak

  7. Muhamad Hidayatulloh
    Muhamad Hidayatulloh

    Pk musa klo hal seperti ini di sisi client tdk bisa konek apa yh kira2 penyabbnya

    Thu Jul 23 01:45:06 2020 Unrecognized option or missing parameter(s) in gagah.ovpn:19: block-outside-dns (2.3.10)
    Options error: Unrecognized option or missing parameter(s) in gagah.ovpn:24: tls-crypt (2.3.10)

  8. Mas, maaf newbie..
    saya install OpenVPN di linux..
    usernya Windows apa bisa?

    terus saya mau menggunakan OpenVPN untuk remot..

    terima kasih

Leave a Reply