OpenVPN Server di Windows 11

Karena pengen aman, ga mau redirect NVR ke Internet, saya pilih pasang VPN server buat bisa cek NVR dari mana saja. Dulu waktu pakai Linux, pasang OpenVPN berasa tinggal klik next juga udah kelar. Kali ini mesin di rumah saya ganti pakai Windows, install OpenVPN jadi super duper ribet. Saya coba catat di sini sebagai referensi.

Saya mengikuti cara dari SupportHost, cuman hanya bisa berfungsi untuk Windows – Windows karena pakai driver WinTAP. Untuk Windows – Android harus pakai driver WinTUN. Maka ada beberapa konfigurasi yang harus diubah.

Bagian Server

Install OpenVPN Server

  • Download dari sini
  • Custom Install, semua opsi dipilih
  • Cek apakah driver OpenVPN Wintun terinstall
  • Dari jendela Services cek apakah OpenVPNService terinstall dan running

Bikin File CA (Cert & Key)

  • Copas file vars.example jadi vars di C:\Program Files\OpenVPN\easy-rsa
  • Edit file vars, sesuaikan SSL recordnya (Country, Province, dst), simpan
  • Jalankan EasyRSA-Start.bat, akan masuk ke konsol EasyRSA
  • Jalankan command ./easyrsa init-pki (akan membuat direktori pki)
  • Jalankan command ./easyrsa build-ca nopass (akan membuat file ca.crt di direktori pki)
  • Jalankan command ./easyrsa build-server-full SERVER nopass (akan membuat file SERVER.crt di direktori pki\issued)
  • Jalankan command openssl verify -CAfile pki/ca.crt pki/issued/SERVER.crt untuk verifikasi
  • Jalankan command ./easyrsa build-client-full CLIENT nopass (akan membuat file CLIENT.crt di direktori pki\issued. Bikin lagi yang lain jika perlu lebih dari satu concurrent connection)
  • Jalankan command openssl verify -CAfile pki/ca.crt pki/issued/CLIENT.crt untuk verifikasi

Bikin File TLS Key

  • Download ZIP file file Easy-TLS dari sini
  • Unzip dan copas file easytls ke C:\Program Files\OpenVPN\easy-rsa
  • Kembali ke konsol EasyRSA
  • Jalankan commmand ./easytls init-tls
  • Jalankan commmand ./easytls build-tls-auth (akan membuat file tls-auth.key di direktori pki\easytls)

Bikin File Diffie-Hellman Key

  • Jalankan command ./easyrsa gen-dh (akan membuat file dh.pem di direktori pki)

Bikin File server.ovpn

  • Copas file server.ovpn dari C:\Program Files\OpenVPN\sample-config ke C:\Program Files\OpenVPN\config-auto\ dan edit
  • Parameter port 1194 ganti jadi port 8xxx (untuk menambah keamanan)
  • Parameter proto udp ganti jadi proto udp4 (udp saja tidak jalan, harus udp4 yang menandakan IPv4)
  • Comment parameter dev tap, uncomment parameter dev tun
  • Tambahkan parameter windows-driver wintun
  • Uncomment parameter dev-node “OpenVPN Wintun”, yang ini samakan dengan nama driver di Network Config
  • Parameter ca, cert, key, dh, dan tls-auth disesuaikan dengan file-file yang di generate dari langkah sebelumnya
  • Uncomment parameter push “redirect-gateway def1 bypass-dhcp”
  • Uncomment parameter push “dhcp-option DNS x.x.x.x” (ubah sesuai dengan DNS Internet yang dipakai)
  • Uncomment parameter push “route x.x.x.x 255.255.255.0” dan ubah IP nya sesuai dengan IP LAN. Ini berfungsi untuk routing dari IP VPN ke LAN. Perlu tambahan setting nanti di Gateway
  • Parameter cipher AES-256-CBC ganti dengan cipher AES-256-GCM (yang CBC akan memunculkan warning)

Edit Windows Firewall Rule

  • Buka Power Shell di Admin Mode
  • Jalankan command New-NetFirewallRule -DisplayName “OpenVPN” -Direction inbound -Profile Any -Action Allow -LocalPort 8xxx -Protocol UDP
  • Disable WinTUN dari firewall (lihat gambar)

Edit Gateway Routing dan Port Forwarding:

  • Buka konsol gateway modem
  • Tambahkan Static Routing (lihat gambar)
  • Tambahkan Port Forwarding (ihat gambar)
Static Routing
Port Forwarding

Enable Routing and Remote Access

  • Dari jendela Services, ubah Routing and Remote Access startup type jadi Automatic, kemudian Start service nya
  • Buka regedit, di HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  • Edit IPEnableRouter jadi 1

Reboot server

Leave a Comment

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.