• Tidak ada hasil yang ditemukan

BAB IV Perancangan dan Implementasi

IV.2 Konfigurasi VPN pada Jaringan

IV.2.1 Spesifikasi Implementasi VPN

Dalam melakukan konfigurasi VPN pada jaringan simulasi VPN, terdapat beberapa spesifikasi yang digunakan. Spesifikasi tersebut terdiri dari spesifikasi VPN server VPN, client VPN dan webserver pada jaringan LAN.

1. Spesifikasi VPN Server

Spesifikasi perangkat keras dan perangkat lunak pada sisi server VPN yang digunakan terdapat pada tabel 5.

Table 5 Spesifikasi PC Server VPN

Prosesor Intel (R) Pentium (R) 4 CPU 2.60

GHz

Memory 512 MB RAM

Harddisk 40 GB

2. Spesifikasi client VPN

Spesifikasi perangkat keras (PC atau laptop) dan perangkat lunak yang harus dipenuhi di sisi client VPN terdapat pada tabel 6.

Table 6 Spesifikasi PC Client VPN

Prosesor Intel (R) Pentium (R) 4 CPU 2.60

GHz

Memory 256 MB RAM

Harddisk 40 GB

Sistem Operasi Linux/Windows (XP, Vista, 7)

3. Spesifikasi webserver

Spesifikasi perangkat keras dan perangkat lunak pada sisi webserver pada jaringan LAN yang digunakan terdapat pada tabel 7.

Table 7 Spesifikasi Webserver

Prosesor Intel (R) Pentium (R) 4 CPU 2.60

GHz

Memory 512 MB RAM

Harddisk 40 GB

Sistem Operasi Linux

DNS Bind9

Aplikasi web server Apache2

URL http://www.webvpn.ac.id

*Konfigurasi webserver di Lampiran

IV.2.2 Instalasi OpenVPN

Adapun hal-hal yang perlu dilakukan pada instalasi VPN, antara lain:

1. Menciptakan key dan certificate untuk server maupun client pada server VPN dan memindahkannya sesuai dengan kebutuhan server maupun client.

terdapat pada direktori /usr/share/doc/openvpn/examples. Easy-rsa juga merupakan tempat penyimpanan key dan certificate server dan client. - PKI (Public Key Infrastructure) yang dihasilkan pada waktu penciptaan

key dan certificate pada server VPN dan lokasi pemindahannya terdapat

pada table 8.

Table 8 Deskripsi Public Key Infrastructure

File Lokasi Pemindahan Kegunaan Rahasia

ca.crt server + client certificate root CA Tidak

ca.key Server Key root CA Ya

dh xxxx.pem Server Parameter DH Tidak

server.crt Server certificate server Tidak

server.key Server Key server Ya

client1.crt Client certificate client1 Tidak

client1.key Client Key client1 Ya

2. Konfigurasi file server dan client VPN.

- Alamat IP VPN gateway yang merupakan server VPN.

Server

local 172.16.29.142

client

remote 172.16.29.142 1194

- Tunnel mode

Terdapat dua mode tunnel OpenVPN yaitu IP tunneling (TUN driver) dan Ethernet tunneling (TAP driver). IP tunneling digunakan untuk jaringan model routing, sedangkan Ethernet tunneling digunakan untuk jaringan model bridging. Tunnel mode yang akan digunakan adalah TUN mode karena jaringan Politeknik Batam merupakan jaringan model routing.

Server dan client

- Tunnel port

Terdapat dua jenis tunnel port pada OpenVPN yaitu UDP (User Datagram

Protocol) atau TCP (Transmission Control Protocol). Port yang akan

digunakan adalah port UDP 1194 karena default port pada OpenVPN adalah UDP 1194. Penggunaan TCP dapat mengakibatkan TCP over TCP

tunnel yaitu paket ditransmisikan ulang pada TCP tunnel. Jika hal itu terjadi

pada kedua tunnel server maupun client, maka akan mengakibatkan slow

performances seperti waktu respon yang lama. Server port 1194 proto udp client proto udp remote 172.16.29.142 1194

- Certificate dan key

Server ca ca.crt cert server.crt key server.key client ca ca.crt cert client.crt key client.key - Diffie-Hellmann (DH) settings:

Dh digunakan untuk menciptakan privat key untuk hash function dan

cipher algorithm dalam otentikasi OpenVPN. Parameter Diffie Hellman

digunakan oleh dua pengguna untuk melakukan pertukaran key rahasia melalui media yang tidak aman. Waktu yang dibutuhkan untuk menghasilkan Diffie Hellman key ini bergantung pada panjang kunci yang digunakan (dalam bit). Maksimal panjang kunci yang bisa digunakan adalah sebesar 2048 bit. Pada konfigurasi ini akan dipakai panjang kunci sebesar 1024 bit.

Server

dh dh1024.pem

- Dynamic IP address

Server memiliki IP static sendiri yaitu 10.8.0.1 dan menyediakan IP address

Server

server 10.8.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt

Maksud dari server 10.8.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt adalah bahwa IP untuk client yang disediakan oleh server OpenVPN yaitu pada network 10.8.0.0 dengan subnet 255.255.255.0.

- Log verbosity setting

Level file log untuk server OpenVPN terdiri dari 0-15. Untuk log medium

output dan good normal operation, log yang digunakan adalah verb 3. Server dan client

verb 3

Untuk tempat penyimpanan semua log hasil koneksi dari client ke server OpenVPN.

Server

status openvpn-status.log

- Koneksi checking

Untuk memeriksa koneksi dengan cara mengirimkan data (seperti perintah ping) dengan durasi setiap 10 detik dan apabila server OpenVPN tidak merespon selama 120 detik dinyatakan client down (mati).

Server

keepalive 10 120

- Metode kompresi data

Metode kompresi data yaitu metode kompresi data pada tunnel yang digunakan yaitu LZO ( Lempel Ziv Oberhumer). LZO sudah ter-install secara otomatis pada saat meng-install software OpenVPN.

Server dan client

- Konfigurasi lain pada client

- Client tetap melakukan pencarian tuk nama host pada server VPN

resolv-retry infinite

- Client tidak perlu menempel pada port tertentu

Nobind

- Client mempertahankan beberapa state jika restart

persist-key persist-tun

- Nameserver client berasal dari server VPN

ns-cert-type server

- Client melakukan routing ke jaringan LAN pada server VPN

route 192.168.1.0 255.255.255.0

IV.3 Konfigurasi Firewall

Konfigurasi firewall dilakukan pada server VPN agar client VPN dapat mengakses resource Politeknik Batam. Konfigurasi firewall dilakukan dengan pendekatan negative list. Pendekatan negative list yaitu membuka semua port yang ada, kemudian menutup satu persatu port yang ingin ditutup. Berikut perintah atau rules firewall yang perlu dikonfigurasi pada VPN server:

- Semua policy chain (INPUT, FORWARD, OUTPUT, PREROUTING, dan POSTROUTING) pada iptables diubah menjadi ACCEPT. Contoh: #iptables -P INPUT ACCEPT

- #iptables -I FORWARD -i eth0 -o eth1 -j DROP //ini adalah perintah untuk tidak memperbolehkan pengaksesan dari sisi luar server ke jaringan LAN, tetapi interface yang merupakan tun0 yang berasal dari

client VPN dapat mengakses jaringan LAN tersebut.

tidak memperbolehkan pengaksesan dari sisi luar server ke client VPN.

- #iptables -I INPUT -p udp --dport 1194 -j ACCEPT //ini adalah perintah untuk memperbolehkan pengaksesan dari port udp 1194 oleh

client VPN.

- #iptables -I INPUT -i tun0 -j ACCEPT //ini adalah perintah untuk memperbolehkan pengaksesan dari perangkat tunneling oleh client VPN.

- #iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT //ini adalah perintah connection tracking yang dilakukan agar trafik network yang terkait dengan sebuah rule di chain tertentu, tidak perlu konfigurasi. Hal ini juga berlaku untuk chain FORWARD dan OUTPUT.

- #iptables -t nat -I POSTROUTING -j MASQUERADE //ini adalah perintah yang berarti semua paket network yang berasal dari IP LAN

server VPN akan di-masquerade dengan IP luar server VPN.

Dokumen terkait