Install OpenVPN di VPS Debian 7
Pada post kali ini saya akan membagikan sebuah tutorial bagaimana cara menginstall OpenVPN di VPS Debian 7.
Tutorial ini sudah pernah saya praktekkan pada VPS Debian 7 64 bit bervirtualisasi KVM. Untuk VPS dengan virtualisasi OpenVZ ada sedikit penyesuaian.
Tanpa perlu berpanjang lebar berikut saya uraikan langkah demi langkah cara menginstall OpenVPN di VPS debian 7.
1. Lakukan update
2. Install paket OpenVPN
3. Kopi direktori easy-rsa ke direktori openvpn
4. Pindah ke direktori 2.0
5. Jalankan :
6. Jalankan :
7. Jalankan :
8. Akan muncul isian yg dimulai dengan nama negara atau Country Name. Pada tahap ini saya ga pernah isi/edit apapun. Enter saja sebanyak 7 kali untuk 7 pertanyaan yg muncul (terakhir adalah Email Address), ini tidak pengaruh apa2.
9. Buat Diffie Hellman parameter
10. Generate certificate untuk servernya
11. Kali ini anda akan diinterogasi 10 pertanyaan, disini saya juga ga isi apa2 alias enter2 saja. Hati-hati pencet enter jangan ngebut2 karena nanti ada dialog apakah anda ingin sign the certificate? anda harus pilih dengan pencet y
12. 1 out of 1 certificate requests certified, commit? [y/n] Pilih y lagi pada dialog ini
13. Untuk menghindari UDP flood dan serangan DDoS maka jalankan:
14. Sekarang buatlah server config. Kita akan membuat config UDP dan TCP. Kita buat yg UDP dulu.
15. Pindah direktori ke openvpn
16. Buat file server.conf
17. Isilah dengan parameter berikut :
18. Simpan dan tutup file tersebut (Ctrl X, Y, enter)
19. Buat config untuk koneksi jalur TCP
20. Isikan parameter berikut
21. Simpan dan tutup file tersebut (Ctrl X, Y, enter)
22. Buat direktori untuk certificates dan keys
23. Copy certificates dan keys
24. Konfigurasi UDP dan TCP untuk server sudah selesai. Sekarang edit supaya config tersebut terbaca ketika OpenVPN nanti dijalankan
25. Pada entri #AUTOSTART="all" hilangkan tanda pagar # di depannya sehingga menjadi AUTOSTART="all". Save dan close kembali file tersebut.
26. Restart OpenVPN
Hasilnya harus ada 2 [OK] sebagai bukti bahwa restart OpenVPN sukses dan sudah running
27. Pastikan ada 2 instances OpenVPN running di server
28. Jalankan
29. Ada UDP dan TCP kan? Artinya sudah betul. Pada TCP terlihat ssmtp yg running, itu karena saya tadi pake port 465 di config TCP-nya. Jika anda pake 443 maka akan tertera disitu sebagai https
30. Enable forwarding di VPS agar user bisa browsing, kan seru tuh user udah gembira konek tapi ga bisa browsing hehehe. Buatlah file /etc/sysctl.d/forwarding.conf dan isikan dengan mantra pendek net.ipv4.ip_forward=1
Isi dengan parameter :
Simpan dan close file tersebut
31. Jalankan
Outputnya adalah
32. Seting iptables untuk jalur UDP
Note : untuk vps bervirtualisasi openVZ ganti eth0 dengan venet0
33. Seting iptables untuk jalur TCP
Note : untuk vps bervirtualisasi openVZ ganti eth0 dengan venet0
34. Nah jeleknya tuh kadang Debian me-reset iptables setelah VPS restart, alias musnahlah settingan iptables yg kita jalankan tadi. Untuk menghindari hal tersebut, maka jalankan step berikut agar iptables tersimpan dengan abadi di VPS
35. Simpan iptables
36. Pindah ke direktori root
37. Pindah ke direktori if-up.d
38. Buat file bernama iptables
39. Isikan dengan mantra berikut
41. Agar file tersebut dieksekusi oleh Debian pada saat booting, jangan lupa dibikin executable dahulu dengan cara:
42. Pindah direktori ke openvpn
43. Buatlah direktori clientconfig
44. Copy-kan ca.crt dan ta.key yang tadi kita buat ke direktori tersebut
45. Buatlah file dengan ekstensi .ovpn. Karena OpenVPN ini menyediakan 2 jalur koneksi UDP dan TCP, maka untuk client kita akan beri 2 config. Pertama saya beri nama arif-udp.ovpn. Pindah dulu ke clientconfig
46. Buat file config UDP
47. Isilah dengan mantra berikut
48. Sekarang buat config client yg TCP
49. Isikan dengan mantra berikut
50. Cek dengan command
Dan anda harus melihat 4 buah file yaitu: arif-udp.ovpn, arif-tcp.ovpn, ca.crt, dan ta.key
51. OPTIONAL: file config ovpn tsb bisa juga langsung digabung dengan ca.crt, biasanya config semacam ini digunakan oleh pengguna device mobile semacam Android atau iPhone. Bagaimana caranya? Ikuti step selanjutnya.
52. Jalankan
53. Copy certificate yang muncul di layar
54. Edit kembali file config udp
Hapus baris ca ca.crt
Kemudian tambahkan di baris paling bawah dengan certificate yang tadi anda copy.
Tambahkan markup <ca> sebelum certificate, dan markup </ca> sesudah certificate. Seperti gambar berikut.
Jangan lupa save lalu close.
55. Lakukan juga langkah no 54 di atas untuk file config tcp
56. Untuk memudahkan distribusi file tersebut kepada para calon user maka archive-lah menjadi zip file. Install zip terlebih dahulu
57. Jalankan
58. Agar config ovpn dapat didownload oleh user, kita akan menempatkan config tersebut di VPS kita. Install dulu apache
Note : sebelum install apache, pastikan tidak ada aplikasi yang menggunakan port 80
59. Setelah install apache selesai , langkah selanjutnya adalah upload file config ovpn ke folder /var/www yang ada di vps kita. Caranya :
60. Buka Bitvise SSH client. Masukkan IP VPS, username dan password seperti contoh berikut. Kemudian tekan login.
61. Tekan tombol up
62. Buka folder /etc/openvpn/clientconfig
63. Di dalam folder clientconfig terdapat config ovpn yang tadi kita buat
64. Copy file VPN.zip, lalu paste ke sebelah kiri (local files)
65. Copy kembali VPN.zip yang ada di local files
66. Buka folder /var/www
67. Lalu pastekan di sana
68. Sekarang kita telah berhasil menempatkan file config ovpn di vps kita. Untuk mendownload config cukup dengan mengetikkan : IPVS/VPN.zip di browser. Misalnya : 212.237.14.118/VPN.zip
Install openvpn dan upload config ke vps sudah selesai. Terima kasih sudah menyimak tutorial yang cukup panjang ini.
Tutorial ini sudah pernah saya praktekkan pada VPS Debian 7 64 bit bervirtualisasi KVM. Untuk VPS dengan virtualisasi OpenVZ ada sedikit penyesuaian.
Tanpa perlu berpanjang lebar berikut saya uraikan langkah demi langkah cara menginstall OpenVPN di VPS debian 7.
1. Lakukan update
apt-get update
2. Install paket OpenVPN
apt-get install openvpn
3. Kopi direktori easy-rsa ke direktori openvpn
cp -a /usr/share/doc/openvpn/examples/easy-rsa /etc/openvpn/
4. Pindah ke direktori 2.0
cd /etc/openvpn/easy-rsa/2.0
5. Jalankan :
source ./vars
6. Jalankan :
./clean-all
7. Jalankan :
./build-ca
8. Akan muncul isian yg dimulai dengan nama negara atau Country Name. Pada tahap ini saya ga pernah isi/edit apapun. Enter saja sebanyak 7 kali untuk 7 pertanyaan yg muncul (terakhir adalah Email Address), ini tidak pengaruh apa2.
9. Buat Diffie Hellman parameter
./build-dh
10. Generate certificate untuk servernya
./build-key-server server01
11. Kali ini anda akan diinterogasi 10 pertanyaan, disini saya juga ga isi apa2 alias enter2 saja. Hati-hati pencet enter jangan ngebut2 karena nanti ada dialog apakah anda ingin sign the certificate? anda harus pilih dengan pencet y
12. 1 out of 1 certificate requests certified, commit? [y/n] Pilih y lagi pada dialog ini
13. Untuk menghindari UDP flood dan serangan DDoS maka jalankan:
openvpn --genkey --secret keys/ta.key
14. Sekarang buatlah server config. Kita akan membuat config UDP dan TCP. Kita buat yg UDP dulu.
15. Pindah direktori ke openvpn
cd /etc/openvpn
16. Buat file server.conf
nano server.conf
17. Isilah dengan parameter berikut :
port 1194 proto udp dev tun ca keys/ca.crt cert keys/server01.crt key keys/server01.key dh keys/dh1024.pem plugin /usr/lib/openvpn/openvpn-auth-pam.so login client-cert-not-required username-as-common-name server 10.8.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "redirect-gateway def1" push "dhcp-option DNS 4.2.2.1" push "dhcp-option DNS 4.2.2.2" keepalive 5 30 comp-lzo persist-key persist-tun status server-tcp.log verb 3Note : untuk port 1194 bisa anda ganti dengan port lain yang anda inginkan
18. Simpan dan tutup file tersebut (Ctrl X, Y, enter)
19. Buat config untuk koneksi jalur TCP
nano server-tcp.conf
20. Isikan parameter berikut
port 465 proto tcp dev tun ca keys/ca.crt cert keys/server01.crt key keys/server01.key dh keys/dh1024.pem plugin /usr/lib/openvpn/openvpn-auth-pam.so login client-cert-not-required username-as-common-name server 10.9.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "redirect-gateway def1" push "dhcp-option DNS 4.2.2.1" push "dhcp-option DNS 8.8.8.8" keepalive 5 30 comp-lzo persist-key persist-tun status server-tcp.log verb 3Note : port 465 bisa anda ganti dengan port lain yang anda inginkan
21. Simpan dan tutup file tersebut (Ctrl X, Y, enter)
22. Buat direktori untuk certificates dan keys
mkdir /etc/openvpn/keys
23. Copy certificates dan keys
cp /etc/openvpn/easy-rsa/2.0/keys/{ca.crt,server01.crt,server01.key,dh1024.pem,ta.key} /etc/openvpn/keys/
24. Konfigurasi UDP dan TCP untuk server sudah selesai. Sekarang edit supaya config tersebut terbaca ketika OpenVPN nanti dijalankan
nano /etc/default/openvpn
25. Pada entri #AUTOSTART="all" hilangkan tanda pagar # di depannya sehingga menjadi AUTOSTART="all". Save dan close kembali file tersebut.
26. Restart OpenVPN
/etc/init.d/openvpn restart
Hasilnya harus ada 2 [OK] sebagai bukti bahwa restart OpenVPN sukses dan sudah running
27. Pastikan ada 2 instances OpenVPN running di server
28. Jalankan
lsof -i |grep openvpn
29. Ada UDP dan TCP kan? Artinya sudah betul. Pada TCP terlihat ssmtp yg running, itu karena saya tadi pake port 465 di config TCP-nya. Jika anda pake 443 maka akan tertera disitu sebagai https
30. Enable forwarding di VPS agar user bisa browsing, kan seru tuh user udah gembira konek tapi ga bisa browsing hehehe. Buatlah file /etc/sysctl.d/forwarding.conf dan isikan dengan mantra pendek net.ipv4.ip_forward=1
nano /etc/sysctl.d/forwarding.conf
Isi dengan parameter :
.ipv4.ip_forward=1
Simpan dan close file tersebut
31. Jalankan
sysctl -p /etc/sysctl.d/forwarding.conf
Outputnya adalah
net.ipv4.ip_forward=1
32. Seting iptables untuk jalur UDP
iptables -t nat -I POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
Note : untuk vps bervirtualisasi openVZ ganti eth0 dengan venet0
33. Seting iptables untuk jalur TCP
iptables -t nat -I POSTROUTING -s 10.9.0.0/24 -o eth0 -j MASQUERADE
Note : untuk vps bervirtualisasi openVZ ganti eth0 dengan venet0
34. Nah jeleknya tuh kadang Debian me-reset iptables setelah VPS restart, alias musnahlah settingan iptables yg kita jalankan tadi. Untuk menghindari hal tersebut, maka jalankan step berikut agar iptables tersimpan dengan abadi di VPS
35. Simpan iptables
iptables-save > /etc/iptables_yg_baru_dibikin.conf
36. Pindah ke direktori root
cd
37. Pindah ke direktori if-up.d
cd /etc/network/if-up.d
38. Buat file bernama iptables
nano iptables
39. Isikan dengan mantra berikut
#!/bin/sh iptables-restore < /etc/iptables_yg_baru_dibikin.conf40. Simpan lalu close(ctrl x, lalu y, lalu enter)
41. Agar file tersebut dieksekusi oleh Debian pada saat booting, jangan lupa dibikin executable dahulu dengan cara:
chmod +x /etc/network/if-up.d/iptables
42. Pindah direktori ke openvpn
cd /etc/openvpn
43. Buatlah direktori clientconfig
mkdir clientconfig
44. Copy-kan ca.crt dan ta.key yang tadi kita buat ke direktori tersebut
cp /etc/openvpn/easy-rsa/2.0/keys/{ca.crt,ta.key} clientconfig/
45. Buatlah file dengan ekstensi .ovpn. Karena OpenVPN ini menyediakan 2 jalur koneksi UDP dan TCP, maka untuk client kita akan beri 2 config. Pertama saya beri nama arif-udp.ovpn. Pindah dulu ke clientconfig
cd clientconfig
46. Buat file config UDP
nano arif-udp.ovpn
47. Isilah dengan mantra berikut
client dev tun proto udp remote x.x.x.x 1194 resolv-retry infinite route-method exe resolv-retry infinite nobind persist-key persist-tun ca ca.crt auth-user-pass comp-lzo verb 3Ganti x.x.x.x dengan IP VPS Anda. Lalu simpan dan close.
48. Sekarang buat config client yg TCP
nano arif-tcp.ovpn
49. Isikan dengan mantra berikut
client dev tun proto tcp remote x.x.x.x 465 resolv-retry infinite route-method exe resolv-retry infinite nobind persist-key persist-tun ca ca.crt auth-user-pass comp-lzo verb 3Ganti x.x.x.x dengan IP VPS Anda. Lalu simpan dan close.
50. Cek dengan command
ls –al
Dan anda harus melihat 4 buah file yaitu: arif-udp.ovpn, arif-tcp.ovpn, ca.crt, dan ta.key
51. OPTIONAL: file config ovpn tsb bisa juga langsung digabung dengan ca.crt, biasanya config semacam ini digunakan oleh pengguna device mobile semacam Android atau iPhone. Bagaimana caranya? Ikuti step selanjutnya.
52. Jalankan
cat ca.crt
53. Copy certificate yang muncul di layar
54. Edit kembali file config udp
nano arif-udp.ovpn
Hapus baris ca ca.crt
Kemudian tambahkan di baris paling bawah dengan certificate yang tadi anda copy.
Tambahkan markup <ca> sebelum certificate, dan markup </ca> sesudah certificate. Seperti gambar berikut.
Jangan lupa save lalu close.
55. Lakukan juga langkah no 54 di atas untuk file config tcp
56. Untuk memudahkan distribusi file tersebut kepada para calon user maka archive-lah menjadi zip file. Install zip terlebih dahulu
apt-get install zip
57. Jalankan
zip VPN.zip *
58. Agar config ovpn dapat didownload oleh user, kita akan menempatkan config tersebut di VPS kita. Install dulu apache
cd
apt-get install apache2
Note : sebelum install apache, pastikan tidak ada aplikasi yang menggunakan port 80
59. Setelah install apache selesai , langkah selanjutnya adalah upload file config ovpn ke folder /var/www yang ada di vps kita. Caranya :
60. Buka Bitvise SSH client. Masukkan IP VPS, username dan password seperti contoh berikut. Kemudian tekan login.
61. Tekan tombol up
62. Buka folder /etc/openvpn/clientconfig
63. Di dalam folder clientconfig terdapat config ovpn yang tadi kita buat
64. Copy file VPN.zip, lalu paste ke sebelah kiri (local files)
65. Copy kembali VPN.zip yang ada di local files
66. Buka folder /var/www
67. Lalu pastekan di sana
68. Sekarang kita telah berhasil menempatkan file config ovpn di vps kita. Untuk mendownload config cukup dengan mengetikkan : IPVS/VPN.zip di browser. Misalnya : 212.237.14.118/VPN.zip
Install openvpn dan upload config ke vps sudah selesai. Terima kasih sudah menyimak tutorial yang cukup panjang ini.
Posting Komentar untuk "Install OpenVPN di VPS Debian 7"