Anda di halaman 1dari 37

UNIVERSITAS GUNADARMA

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI


JURUSAN SISTEM KOMPUTER

PROYEK JARINGAN KOMPUTER LANJUT


OPENVPN
Disusun Oleh :
Dhika Primayuda

(21112998)

Hasan Wijaya

(23112350)

Iqbal Hafiz Mukarrom

(23112766)

Muhamad Iqbal

(24112800)

Diajukan Guna Melengkapi Sebagian Syarat


Dalam Kelulusan Praktikum Jaringan Komputer Lanjut
2015

DAFTAR ISI
DAFTAR ISI................................................................................................................ii
DAFTAR GAMBAR..................................................................................................iii
BAB 1 LANDASAN TEORI.......................................................................................1
1.1

Virtual Private Network...............................................................................1

1.1.1

Cara Kerja VPN....................................................................................3

1.1.2

Klasifikasi VPN......................................................................................4

1.1.3

Teknologi pada VPN..............................................................................5

1.2

OpenVPN.......................................................................................................7

1.2.1

Sejarah OpenVPN.................................................................................7

1.2.2

Teknologi pada OpenVPN....................................................................8

BAB 2 PERANCANGAN DAN ANALISA..............................................................9


2.1

Topologi..........................................................................................................9

2.2

Rancangan.....................................................................................................9

2.2.1

Konfigurasi server OpenVPN.............................................................10

2.2.2

Konfigurasi client OpenVPN..............................................................18

2.3

Analisa..........................................................................................................24

BAB 3 PENUTUP......................................................................................................29
1.1

Kesimpulan..................................................................................................29

1.2

Saran............................................................................................................29

DAFTAR PUSTAKA.................................................................................................30

DAFTAR GAMBAR
Gambar 1.1-1 Jaringan VPN........................................................................................2
Gambar 1.1-2 Remote access VPN..............................................................................4
Gambar 1.1-3 Site-to-site VPN....................................................................................5
Gambar 1.2-1 Logo OpenVPN....................................................................................7
Gambar 2.1-1 Topologi jaringan..................................................................................9
Gambar 2.2-1 Melakukan update dan upgrade package............................................10

Gambar 2.2-2 Menginstal package OpenVPN...........................................................11


Gambar 2.2-3 Line command operasi copy (atas) dan hasil dari copy (bawah)........11
Gambar 2.2-4 Command line untuk meng-generate server certificate......................12
Gambar 2.2-5 Proses meng-generate enkripsi Diffie-Hellman..................................12
Gambar 2.2-6 Proses generate server key (atas) dan konfirmasinya (bawah)...........13
Gambar 2.2-7 File konfigurasi server.conf................................................................14
Gambar 2.2-8 File konfigurasi server-tcp.conf..........................................................14
Gambar 2.2-9 Command line untuk membuat direktori keys dan mengisinya dengan
keys dan certificate......................................................................................................15
Gambar 2.2-10 Mengkonfigurasi Autostart pada OpenVPN.....................................15
Gambar 2.2-11 Melihat server VPN yang berjalan, dengan menggunakan command
lsof -i............................................................................................................................16
Gambar 2.2-12 Membuat file konfigurasi forwarding.conf.......................................16
Gambar 2.2-13 Mengeksekusi file konfigurasi forwarding.conf...............................16
Gambar 2.2-14 Hasil konfigurasi iptables.................................................................17
Gambar 2.2-15 Hasil file konfigurasi iptables yang tersimpan..................................17
Gambar 2.2-16 Isi file konfigurasi iptables...............................................................18
Gambar 2.2-17 Membuat direktori baru untuk menyimpan file OpenVPN client....18
Gambar 2.2-18 Menyimpan server certificate dan key pada direktori baru..............19
Gambar 2.2-19 Konfigurasi profil OpenVPN dengan protokol TCP (kiri) dan UDP
(kanan).........................................................................................................................19
Gambar 2.2-20 Hasil file OpenVPN yang siap diberikan ke client...........................20
Gambar 2.2-21 Memindahkan file konfigurasi client ke direktori baru di /var/www/
.....................................................................................................................................20
Gambar 2.2-22 Mengubah hak akses file kompresi...................................................21
Gambar 2.2-23 Mengakses file dari browser di komputer client...............................21
Gambar 2.2-24 Memindahkan file konfigurasi ke direktori kerja OpenVPN client..22
Gambar 2.2-25 Folder baru untuk file konfigurasi OpenVPN...................................22
Gambar 2.2-26 Isi dari folder konfigurasi TCP (atas) dan UDP (bawah)..................22
Gambar 2.2-27 Menjalankan OpenVPN dengan hak administrator..........................23
Gambar 2.2-28 Mengakses VPN melalui profil OpenVPN yang telah dibuat..........23
Gambar 2.2-29 Client telah terhubung dengan jaringan VPN, mendapatkan IP baru
.....................................................................................................................................24
Gambar 2.3-1 Tampilan awal Wireshark...................................................................25
Gambar 2.3-2 Menghubungkan ke VPN....................................................................25
Gambar 2.3-3 Memilih interface untuk dipantau.......................................................26
Gambar 2.3-4 Rekaman tanpa menggunakan VPN, tampak informasi dari paket data
.....................................................................................................................................27
Gambar 2.3-5 Berbagai rekaman menggunakan VPN, tampak muncul paket data
terenkripsi pada rekaman.............................................................................................28

BAB 1
LANDASAN TEORI
1.1

Virtual Private Network


Menurut bahasa, definisi dari VPN, atau lebih dikenal dengan Virtual
Private Network, dapat dibagi ke dalam 3 kata, yaitu (Cisco System Inc.,
2015)
Virtual, mendefinisikan bahwa jaringan yang ada terbentuk secara virtual
atau tidak nyata. Dalam VPN, jaringan terbentuk secara logik, di mana
client-client yang terhubung dengan jaringan VPN melalui jaringan publik
tidak tergantung pada hal-hal fisik yang berhubungan dengan jaringan
tempat perangkatnya terhubung, seperti topologi fisik jaringan, media

transmisi (wireless atau wired), dan sebagainya.


Private, menyatakan bahwa proses komunikasi yang terjadi antar client
yang ada (atau antar client dengan server) terjadi secara rahasia. Ini
menyatakan bahwa client yang berasal dari luar jaringan tidak dapat
mengambil informasi ke dalam jaringan, kecuali client tersebut telah

melalui proses autentifikasi yang dilakukan oleh server jaringan VPN


Network (jaringan), adalah sekumpulan perangkat-perangkat keras yang
terhubung satu dengan yang lain dan saling melakukan proses komunikasi.
Lokasi dari perangkat-perangkat tidak menjadi penghalang dalam
terbentuknya hubungan. Dalam konsep VPN, network menggambarkan
client-client yang terhubung layaknya seperti network yang pada umumnya
dikenal, seperti jaringan komputer pada suatu perkantoran, LAN, dan
sebagainya.
Dari penjelasan di atas, dapat disimpulkan bahwa VPN adalah sebuah

jaringan komputer rahasia yang terbentuk secara logis di atas sebuah


jaringan publik.

Gambar 1.1-1 Jaringan VPN


(https://en.wikipedia.org/wiki/File:Virtual_Private_Network_overview.svg)

VPN umumnya digunakan pada beberapa jaringan-jaringan yang ingin


terhubung satu dengan yang lain tanpa perlu mengeluarkan biaya yang cukup
banyak untuk membuat sebuah jaringan penghubung baru secara fisik. Selain
itu, VPN juga banyak digunakan pada perusahaan-perusahaan yang
menggunakan jaringan komputer dan menghadapai masalah geografis dalam
membangun jaringannya.
Beberapa perbedaan antara sebuah jaringan privat fisik pada umumnya
dengan VPN adalah (Djokovic, 2013)

Pada VPN, user dapat mengakses jaringan privat di mana pun ia berada.
Berbeda dengan jaringan privat fisik, di mana user hanya dapat mengakses

jaringan pada lokasi tertentu


VPN menggunakan metode-metode enkripsi dalam mengirim paket-paket

data, sehingga membuat VPN menjadi lebih aman


VPN dapat memanfaatkan jaringan Internet

sebagai

backbone,

memudahkan dalam pembangunan jaringan dan juga menghemat biaya


untuk membangun jaringan backbone

Skalabilitas yang tinggi. Konfigurasi VPN yang mudah membuat


pembangunan jaringan VPN dapat lebih fleksibel dalam mengikuti
perkembangan jaringan yang ada
Dalam sebuah pembangunan VPN, terdapat 4 faktor utama yang perlu

diperhatikan agar komunikasi VPN yang ada menjadi aman dan terkendali

Authentication, adalah faktor yang menentukan keabsahan pengirim data

yang ada
Access Control, adalah faktor yang membatasi hak akses user ke dalam

jaringan VPN
Confidentiality, memastikan bahwa data-data yang dikirim di dalam VPN

terjaga kerahasiaannya dari user-user di luar jaringan VPN


Data Integrity, adalah faktor yang menjaga integritas dari paket-paket data
yang terkirim agar tidak berubah selama proses komunikasi berlangsung

1.1.1

Cara Kerja VPN


VPN bekerja layaknya sebuah mode transportasi menghubungkan tempattempat terpisah.
Analogikan berbagai macam jaringan-jaringan dengan pulau dan
Internet sebagai lautan. Terdapat berbagai macam jaringan yang ada di
Internet, baik itu privat maupun tidak, dan terdapat pula berbagai macam cara
untuk menghubungkan pulau-pulau tersebut. Salah satu cara yang cukup
dikenal adalah melalui komunikasi normal layaknya kapal feri. Akan tetapi,
cara ini tidaklah aman karena kegiatan komunikasi dapat dilihat oleh siapa saja.
Terdapat cara lain, yaitu dengan membangun sebuah jalur khusus (leased
line) komunikasi untuk beberapa jaringan, layaknya jembatan. Cara ini
memiliki keuntungan, di antaranya komunikasi terjadi secara langsung sehingga
dapat menghemat waktu dalam proses komunikasi. Akan tetapi, kelemahan dari
cara ini adalah faktor jarak (distance). Apabila pulau-pulau yang ingin
dihubungkan memiliki jarak yang jauh, biaya pembangunan jembatan akan
menjadi sangat besar.

Dari berbagai macam permasalahan inilah, muncul solusi bernama VPN,


layaknya sebuah kapal selam. Kapal selam ini dapat menghubungkan
berbagai macam pulau-pulau yang ada, dengan tetap menjaga kerahasiaan
dari komunikasi yang terjadi. Karena, VPN bekerja dengan cara mengenkripsi
paket-paket data yang dikirim antar jaringan. Selain itu, terdapat kemudahan
dalam mengembangkan VPN, layaknya menambah armada kapal selam.
Dengan semakin banyaknya jaringan yang ingin terhubung, cukup dengan
melakukan sedikit konfigurasi pada server VPN yang ada, dan jaringan
langsung dapat terhubung dengan VPN. (Tyson & Crawford, 2011)
1.1.2

Klasifikasi VPN
Secara umum, terdapat 2 jenis VPN, yaitu (Cisco System Inc., 2008)
Remote access VPN, atau dikenal juga dengan Virtual Private Dial-up
Network (VPDN), adalah salah satu tipe dari VPN di mana administrator
cukup mengkonfigurasi server VPN pada satu tempat dan kemudian
membagikan akun dial-up kepada user-user yang akan menggunakan. Tipe
ini umumnya banyak digunakan pada perusahaan besar yang pekerjanya
tersebar di berbagai daerah dan sering berkomunikasi dengan jaringan
pusat

Gambar 1.1-2 Remote access VPN (Yuda, 2011)

Site-to-site VPN, adalah tipe VPN yang digunakan untuk menghubungkan


satu jaringan dengan jaringan lain. Umumnya tipe VPN ini digunakan

perusahaan yang memiliki lebih dari satu jaringan yang tersebar dan perlu
untuk

dihubungkan.

Meskipun

dapat

menghemat

biaya

dalam

pembangunan jalur penghubung antar jaringan, pembuatan tipe VPN ini


memerlukan dedicated equipment dan large-scale encryption

Gambar 1.1-3 Site-to-site VPN (Yuda, 2011)

1.1.3

Teknologi pada VPN


Dalam perkembangannya, VPN mulai menggunakan berbagai macam
teknologi untuk meningkatkan keamanan serta kestabilan dari jaringan VPN
yang terbentuk. Di antaranya

Penggunaan berbagai macam protokol enkripsi untuk mengamankan


paket-paket data yang terkirim. Dalam aplikasinya, berbagai macam
VPN pada masa kini mulai menggunakan protokol enkripsi untuk
mengamankan paket-paket data yang dikirim antar jaringan yang
terhubung. Beberapa protokol yang sering digunakan adalah
o IPSec (IP Security), memberikan fitur berupa algoritma enkripsi yang
lebih kuat dan metode autentifikasi yang lebih mumpuni. Memiliki 2
metode enkripsi, yaitu tunnel dan transfer. Penggunaan protokol ini
harus pada device yang mendukung, serta semua device harus
memiliki konfigurasi dan certificate yang sama
o PPTP/MPPE, yang mendukung VPN multi-protokol. Tetapi protokol
ini tidak menyediakan enkripsi data

o L2TP/IPsec, dibaca L2TP over IPSec. Merupakan pengembangan dari


IPSec di mana terdapat improvisasi keamanan dalam Layer 2
Tunneling Protocol (L2TP). Protokol ini banyak digunakan pada

remote access VPN


Integritas data. Dalam komunikasi VPN, selain enkripsi data selama
proses komunikasi, integritas dari data juga perlu diperhatikan. Ini
diperlukan untuk memastikan bahwa tidak ada data yang berubah selama
proses transfer paket data. Salah satu contoh adalah IPSec. Protokol IPSec
memiliki mekanisme yang menjaga agar data yang dienkripsi tidak
diganggu gugat. Bila data telah diganggu dan berubah, paket data tersebut

akan dihapus
Anti-relay, adalah kemampuan pada VPN untuk mendeteksi dan menolak

paket data yang dikirim ulang. Ini diperlukan untuk menghindari spoofing
Data Tunneling. Tunneling adalah proses membungkus paket data asli di
dalam paket data lain untuk menyembunyikan paket data tersebut selama
proses pengiriman paket data. Tunneling merupakan salah satu bagian
utama dari kerja VPN, akan tetapi tunneling saja tidak dapat memberikan
keamanan pada paket data. Pada prosesnya, tunneling menggunakan 3
protokol berbeda
o Passenger protocol, yaitu protokol asli yang digunakan pada data
orisinil, contohnya IPX, NetBeui, dan IP
o Encapsulation protocol, adalah protokol yang digunakan untuk proses
enkapsulasi, seperti GRE, IPSec, PPTP, atau L2TP
o Carrier protocol, adalah protokol yang digunakan untuk mengirim

data. Umumnya berupa protokol pada jaringan publik


AAA (Authentication, Authorization, and Accounting)

Server.

Teknologi ini digunakan (terutama pada remote access VPN) untuk lebih
meningkatkan keamanan dari jaringan VPN tersebut. Dalam aplikasinya,
teknologi ini mencakup
o Authentication, yaitu proses autentikasi user yang ingin memasuki
VPN

10

o Authorization, yaitu pemberian hak akses pada client yang berhasil


terautentifikasi
o Accounting, adalah proses merekam aktivitas dari client
1.2

OpenVPN

Gambar 1.2-4 Logo OpenVPN


(https://en.wikipedia.org/wiki/File:Ovpntech_logo-s_REVISED.png)
OpenVPN merupakan sebuah aplikasi open source yang banyak
digunakan untuk membangun sebuah VPN. OpenVPN menggunakan protokol
keamanan yang dirancang sendiri, menggunakan SSL/TSL untuk pertukaran
key. OpenVPN diciptakan oleh James Yonan
1.2.1

Sejarah OpenVPN
Open VPN bermula dari keinginan James Yonan untuk membuat sebuah
aplikasi yang dapat membangun VPN yang aman secara mudah.
Pada September 2001, Yonan sedang berada di Asia dan ingin
menghubungkan komputer di kantornya dengan internet provider Asia atau
Rusia. Mengetahui keamanan dari server internet provider yang digunakannya,
membuat Yonan menjadi lebih tertarik kepada dunia VPN. Pada masanya,
terdapat 2 kelompok yang mengembangkan VPN, yaitu yang mengedepankan
keamanan, dan yang lebih condong ke kegunaan (usability). Pada waktu itu,
Yonan tidak dapat menemukan solusi yang dapat menggabungkan kedua
kelompok. IPSec pada masa itu sangatlah sulit untuk dikonfigurasi, meskipun
memberikan fitur keamanan yang dapat diandalkan. Akan tetapi. Strukturnya
yang kompleks menjadikannya rentan terhadap serangan seperti bugs.
Akhirnya, Yonan menemukan berbagai macam solusi dari kelompok usability
yang akhirnya menjadi tolak ukurnya dalam membangun OpenVPN.

11

OpenVPN pertama, yaitu OpenVPN 0.90, dirilis pada 13 Mei 2001,


memasuki ranah virtual networking. Versi ini masih belum mampu untuk
mengenkapsulasi paket data IP dalam UDP, dan hanya menggunakan Blowfish
cipher dan SHA HMAC untuk metode enkripsinya. Kemudian, OpenVPN versi
1.0 rilis pada 23 Maret 2001, dengan dukungan berupa autentikasi SSL/TSL.
(Packt Publishing, 2015)
1.2.2

Teknologi pada OpenVPN


Dalam pengoperasiannya, OpenVPN menggunakan berbagai macam
teknologi untuk membangun sebuah jaringan VPN yang mumpuni, di antaranya
(Wikipedia, 2015)
OpenVPN menggunakan protokol OpenSSL sebagai protokol enkripsinya.
Selain

itu,

OpenVPN

juga

dapat

menggunakan

HMAC

packet

authentication untuk menambahkan keamanan pada jaringan


OpenVPN memiliki berbagai macam cara untuk melakukan proses
autentifikasi user pada jaringan. Di antaranya yaitu menggunakan pre-

shared keys, certificate, dan menggunakan username-based authentication


OpenVPN dapat berjalan pada protokol TCP (Transmission Control
Protocol) dan UDP (User Datagram Protocol). Selain itu, dimulai dari versi
2.3.x, OpenVPN mulai mendukung IPv6 sebagai protokol pada virtual
network di dalam tunnel. OpenVPN bekerja baik dengan berbagai tipe
server proxy (termasuk HTTP) dan juga dapat bekerja melewati NAT.
OpenVPN memberikan 2 tipe networking interface, yaitu melalui IP tunnel
(TUN) dan Ethernet TAP. OpenVPN telah memiliki port interface official,

yaitu port 1194


OpenVPN juga dapat dikembangkan lebih jauh dengan menggunakan
third-party plugins yang dapat dipanggil pada entry point tertentu. Di
antaranya yaitu integrasi dengan RADIUS, autentikasi PAM, autentikasi
terhadap database seperi MySQL dan SQLite, dan sebagainya

12

BAB 2
PERANCANGAN DAN ANALISA

2.1

Topologi
Dalam sebuah jaringan terdapat topologi yang digunakan untuk
merancang arsitektur dan bentuk jalur komunikasi pada jaringan itu sendiri.
Topologi adalah sebuah peta yang menggambarkan bagaimana hubungan antar
komponen dalam sebuah jaringan terjadi, baik secara fisik maupun secara logis.

Gambar 2.1-5 Topologi jaringan

Berdasarkan Studi Kasus yang diberikan, pada jaringan ini akan


digunakan topologi Star, di mana Access Point yang digunakan untuk
menghubungkan client-client dengan server.Selain itu, pada jaringan ini
digunakan koneksi wireless.

2.2

Rancangan
Berdasarkan dari hasil perancangan topologi jaringan, maka jaringan
client-server dapat mulai dibangun dan dikonfigurasi.

13

Secara

garis

besar,

pembuatan

jaringan

client-server

dengan

menggunakan OpenVPN terbagi dalam dua bagian, yaitu

2.2.1

Konfigurasi server OpenVPN

Konfigurasi client OpenVPN

Konfigurasi server OpenVPN


Pada sebuah jaringan yang memanfaatkan VPN (Virtual Private
Network), dibutuhkan sebuah server yang berfungsi sebagai administrator
terhadap client-client yang terhubung ke dalam jaringan VPN. Saat sebuah
client baru ingin terkoneksi dengan jaringan VPN, server akan melakukan
autentifikasi terhadap client, dan memasukan client ke dalam jaringan bila
client berhasil melakukan autentifikasi dan otorisasi.
Langkah-langkah dalam melakukan konfigurasi sebuah server VPN
dengan menggunakan OpenVPN adalah sebagai berikut
1. Buka root terminal pada Debian, lalu ketikan password untuk admin
2. Lakukan update pada Debian untuk memastikan bahwa semua komponen
OS yang ada berada dalam versi terkini untuk menghindari masalah dalam
instalasi. Hal ini dapat dilakukan dengan memberikan command apt-get
update dan apt-get upgrade pada root terminal Debian

14

Gambar 2.2-6 Melakukan update dan upgrade package

3. Setelah melakukan update (dan upgrade), install OpenVPN pada Debian


dengan mengetik apt-get install openvpn pada root terminal.
Bila muncul prompt pada layar terminal, ketik Y/y lalu Enter

Gambar 2.2-7 Menginstal package OpenVPN

4. Setelah proses instalasi selesai, maka OpenVPN telah terinstall di Debian


dan siap untuk dikonfigurasi. OpenVPN telah menyediakan berbagai
template untuk memudahkan konfigurasi VPN pada Debian. Untuk
mengkonfigurasi OpenVPN dengan menggunakan template tersebut, copy

15

data yang terdapat pada /usr/share/doc/openvpn/examples/easy-rsa/ ke


dalam direktori openvpn di /etc/openvpn dengan menggunakan perintah
cp a (copy all, menduplikasi semua file dan direktori dari target). Bila
proses copy berhasil, akan muncul folder baru di dalam direktori
/etc/openvpn

Gambar 2.2-8 Line command operasi copy (atas) dan hasil dari copy (bawah)

5. Setiap VPN (termasuk OpenVPN) memiliki sertifikat unik yang berfungsi


sebagai autentikasi setiap client yang ingin terhubung dengan jaringan
VPN tertentu. Untuk membuat (generate) sebuah sertifikat VPN dalam
OpenVPN dapat dilakukan dengan mengeksekusi file berikut pada terminal
(direktori aktif tempat anda bekerja harus berada pada /etc/openvpn/easyrsa/{versi yang anda gunakan}). Saat pembuatan sertifikat, akan muncul
form pengisian data untuk identifikasi VPN, bagian ini dapat anda
kosongkan

Gambar 2.2-9 Command line untuk meng-generate server certificate

16

6. Setelah sertifikat berhasil dibuat, diperlukan enkripsi untuk public key yang
akan digunakan antar client dan server VPN. Pada OpenVPN, digunakan
metode enkripsi Diffie-Hellman. Untuk membuat enkripsi Diffie-Hellman
pada OpenVPN dapat dilakukan dengan mengeksekusi file build-dh

Gambar 2.2-10 Proses meng-generate enkripsi Diffie-Hellman

7. Setelah proses enkripsi aktif, anda dapat mulai membuat (generate) public
key untuk client. Anda dapat melakukan ini dengan mengeksekusi file
build-key-server ditambah nama dari server. Akan muncul form pengisian
identitas dari server, anda dapat mengosongkan form ini. Bila muncul
prompt untuk sign the certificate dan commit sertifikat, masukan y lalu
Enter

17

Gambar 2.2-11 Proses generate server key (atas) dan konfirmasinya (bawah)

8. Untuk menghindari UDP flood dan serangan DDoS pada server VPN,
maka perlu dibuat sebuah key baru. Untuk melakukannya, ketik command
openvpn

--genkey

--secret

keys/ta.key pada terminal

untuk membuat sebuah key baru


9. Setelah keys dan sertifikat yang dibutuhkan untuk client telah siap, maka
server dapat mulai dikonfigurasi untuk menciptakan sebuah VPN baru.
Untuk melakukannya, buatlah sebuah file bernama server.conf pada
direktori /etc/openvpn (dapat dilakukan dengan berbagai command untuk
text editor, seperti nano atau gedit). Lalu ketikan konfigurasi berikut pada
file

18

Gambar 2.2-12 File konfigurasi server.conf

10. Langkah selanjutnya adalah membuat file konfigurasi untuk koneksi TCP
pada jaringan. Hal ini dapat dilakukan dengan mengisi konfigurasi berikut
pada file baru bernama server-tcp.conf (anda dapat membuatnya dari
menduplikasi isi file server.conf ke dalam file baru ini dengan command
cp, lalu mengubah isinya sesuai konfigurasi di bawah ini)

19

Gambar 2.2-13 File konfigurasi server-tcp.conf


11. Setelah konfigurasi server dibuat, maka sertifikat dan keys yang telah
dibuat perlu dipindahkan ke direktori yang yang sesuai pada file
konfigurasi server (pada konfigurasi ini, direktori tersebut adalah
/etc/openvpn/keys). Untuk memindahkan file-file tersebut, direktori yang
diperlukan harus sudah siap. Bilai direktori belum ada, direktori ini dapat
dibuat dengan menggunakan command mkdir. Setelah direktori tersebut
terbentuk, pindahkan file-file yang dibutuhkan dengan command cp

Gambar 2.2-14 Command line untuk membuat direktori keys dan mengisinya
dengan keys dan certificate

12. Maka

konfigurasi

TCP

dan

UDP

server

telah

selesai.

Untuk

mengkonfigurasi agar server OpenVPN menggunakan konfigurasi ini,


lakukah

perubahan

dengan

menggunakan

command

gedit

/etc/default/openvpn (atau menggunakan text editor lainnya).

20

Hapus comment pada baris AUTOSTART=all (konfigurasi tampak


seperti gambar). Lalu simpan perubahan

Gambar 2.2-15 Mengkonfigurasi Autostart pada OpenVPN

13. Setelah file default dikonfigurasi, restart service OpenVPN dengan


command /etc/init.d/openvpn atau service openvpn restart pada terminal.
Bila sukses, akan muncul nama server yang berhasil dieksekusi. Untuk
melihat apakah server OpenVPN telah aktif, ketik lsof i | grep
openvpn

Gambar 2.2-16 Melihat server VPN yang berjalan, dengan menggunakan


command lsof -i

14. Untuk memberikan koneksi jaringan Internet pada client OpenVPN, perlu
dilakukan konfigurasi untuk forwarding pada server. Untuk melakukannya,
buatlah

sebuah

file

baru

dengan

command

gedit

/etc/sysctl.d/forwarding.conf (atau command text editor


lainnya). Lalu isi dengan konfigurasi berikut

21

Gambar 2.2-17 Membuat file konfigurasi forwarding.conf


15. Simpan

perubahan

file.

Lalu

ketik

/etc/sysctl.d/forwarding.conf.

command
Bila

sysctl

muncul

isi

p
dari

konfigurasi file, maka konfigurasi telah berhasil dilakukan

Gambar 2.2-18 Mengeksekusi file konfigurasi forwarding.conf

16. Kemudian, atur konfigurasi iptables pada Debian untuk jalur UDP dan TCP
pada OpenVPN. Ketikan perintah
iptables -t nat -I POSTROUTING -s 10.8.0.0/24 -o
venet0 -j MASQUERADE
iptables -t nat -I POSTROUTING -s 10.9.0.0/24 -o
venet0 -j MASQUERADE
pada root terminal Debian. Setelah memasang konfigurasi, ketikan
iptables -t nat -L untuk melihat hasil konfigurasi

22

Gambar 2.2-19 Hasil konfigurasi iptables

17. Hal berikutnya yang perlu dilakukan adalah menyimpan konfigurasi


iptables yang telah dibuat. Ini perlu dilakukan karena konfigurasi iptables
akan selalu di-reset kembali ke konfigurasi awal setiap kali Debian
mengalami reboot atau shutdown. Untuk menyimpan konfigurasi iptables,
ketik

command

iptables-save

/etc/nama_file_konfigurasi.conf.
Maka, akan terbentuk file .conf yang berisi konfigurasi iptables

Gambar 2.2-20 Hasil file konfigurasi iptables yang tersimpan

>

23

18. Untuk membuat Debian me-restore konfigurasi iptables setiap boot, maka
perlu dibuat konfigurasi di direktori /etc/network/if-up.d/. Pada direktori
ini, buatlah sebuah file dengan nama iptables, lalu isi dengan perintah
berikut.

Gambar 2.2-21 Isi file konfigurasi iptables

Simpan file ini, lalu ketikan command chmod +x iptables untuk


mengubah hak akses file, sehingga dapat dieksekusi oleh Debian
19. Server telah selesai dikonfigurasi dan siap digunakan untuk komunikasi
OpenVPN
2.2.2

Konfigurasi client OpenVPN


Selain server pada VPN, client yang akan terhubung ke dalam jaringan
VPN perlu dikonfigurasi agar dapat diautentifikasi oleh server dan diotorisasi
sehingga dapat masuk ke dalam jaringan VPN. Untuk mengkonfigurasi client
OpenVPN, berikut langkah yang perlu dilakukan
1. Pada server OpenVPN di direktori /etc/openvpn, buatlah sebuah direktori
untuk menyimpan konfigurasi yang akan digunakan client, seperti keys dan
certificate. Misalkan pada contoh ini, dibuat sebuah direktori clientconfig

Gambar 2.2-22 Membuat direktori baru untuk menyimpan file OpenVPN


client

24

2. Kemudian simpan key dan ceritificate dari /etc/easy-rsa/2.0/keys/ ke dalam


direktori ini. Hal ini dapat dilakukan dengan command cp easyrsa/2.0/keys/{ca.crt,ta.key}

nama_direktori_baru/

pada terminal Debian

Gambar 2.2-23 Menyimpan server certificate dan key pada direktori baru

3. Setelah key dan certificate siap pada direktori, buatlah dua file profil .ovpn
untuk masing-masing koneksi UDP dan TCP. Profil .ovpn ini akan
digunakan aplikasi OpenVPN client untuk mengenali server VPN yang
akan dihubungkannya. Untuk membuat file ini, pindah ke direktori
/etc/openvpn/clientconfig (direktori yang telah dibuat), lalu buat dua file
dengan command text editor (seperti gedit atau nano). Lalu isikan file-file
tersebut dengan command berikut. Perhatikan pada bagian yang diblok,
berikan IP sesuai dengan IP yang terdapat pada Debian

25

Gambar 2.2-24 Konfigurasi profil OpenVPN dengan protokol TCP (kiri) dan
UDP (kanan)
4. Setelah konfigurasi profil OpenVPN selesai, maka akan terdapat 4 file pada
direktori ini. Yaitu : ca.crt berisi certificate server, ta.key untuk public key
pada server, UDP.ovpn adalah profil OpenVPN untuk koneksi UDP, dan
TCP.ovpn untuk koneksi TCP

Gambar 2.2-25 Hasil file OpenVPN yang siap diberikan ke client

5. Kemudian, pindahkan keempat file berikut ke komputer client. Pada


instruksi ini, pemindahan file menggunakan Apache Web Server yang telah
terinstal sebelumnya (anda dapat menginstalnya dengan menggunakan
command apt-get install apache2)

26

6. Awal

mula,

kompresi

semua

file

di

dalam

direktori

/etc/openvpn/clientconfig (atau direktori tempat anda menyimpan file-file


untuk

OpenVPN

client).

Lalu

pindahkan

file

kompresi

ke

/var/www/fileconfig (sebuah direktori baru).

Gambar 2.2-26 Memindahkan file konfigurasi client ke direktori baru di


/var/www/
7. Ubah hak akses pada file kompresi, sehingga file dapat dibuka dan diambil
oleh client

Gambar 2.2-27 Mengubah hak akses file kompresi

8. Pada

komputer

client,

akses

web

server

dengan

mengetik

ip_server/direktori_tempat_zip pada Web browser. Lalu download file


kompresi yang ada

27

Gambar 2.2-28 Mengakses file dari browser di komputer client

9. Kemudian, install aplikasi OpenVPN client pada komputer client (file


instalasi dapat ditemukan pada Website OpenVPN, https://openvpn.net/).
Setelah instalasi selesai, extract file-file client dari file kompresi ke dalam
direktori konfigurasi OpenVPN pada client (umumnya terdapat pada
C:\Program

Files\OpenVPN\config

untuk

komputer

dengan

OS

Windows)

Gambar 2.2-29 Memindahkan file konfigurasi ke direktori kerja OpenVPN


client

10. Buatlah dua direktori baru, TCP untuk komunikasi TCP dan UDP untuk
komunikasi UDP. Isi kedua folder dengan ca.crt, ta.key, dan profil .ovpn
yang bersesuaian

28

Gambar 2.2-30 Folder baru untuk file konfigurasi OpenVPN

Gambar 2.2-31 Isi dari folder konfigurasi TCP (atas) dan UDP (bawah)

11. Setelah komputer client memiliki file OpenVPN yang dibutuhkan, maka
client siap untuk dapat terkoneksi dengan server OpenVPN
12. Untuk terhubung dengan server, klik kanan OpenVPN pada Start Menu,
lalu pilih Run as administrator. Bila muncul prompt, klik Yes

29

Gambar 2.2-32 Menjalankan OpenVPN dengan hak administrator

13. Akan muncul ikon OpenVPN pada tray icon. Klik kanan pada icon, lalu
pilih koneksi yang dibutuhkan (TCP atau UDP), lalu klik Connect

Gambar 2.2-33 Mengakses VPN melalui profil OpenVPN yang telah dibuat

14. Akan muncul jendela log dari OpenVPN dan prompt untuk login user.
Gunakan user dan password dari Debian (bila belum ada, anda dapat buat
akun baru dengan command useradd s /bin/false pada terminal di server
VPN). Lalu Enter
15. Bila berhasil, akan muncul notifikasi yang menandakan bahwa anda telah
berhasil masuk ke dalam jaringan VPN dengan IP yang ditampilkan

30

Gambar 2.2-34 Client telah terhubung dengan jaringan VPN, mendapatkan IP baru

2.3

Analisa
Setelah melakukan konfigurasi, maka jaringan VPN yang dibutuhkan
telah tersedia. Dalam VPN, paket data yang dikirim akan dienkripsi oleh
perangkat lunak yang digunakan, dalam kasus ini yaitu OpenVPN.
Dalam keadaan normal saat suatu device berkomunikasi dengan device
lain tanpa menggunakan VPN, paket-paket data yang terkirim tidak terenkripsi,
membuat informasi yang dikirim menjadi rentan dari serangan hacker.
Sedangkan, saat sebuah device bertukar informasi dengan device lain
dalam sebuah jaringan VPN, paket-paket data yang dikirim akan terenkripsi,
membuat hacker sulit untuk mengambil informasi dari paket-paket data yang
ada.
Pada bagian ini, penulis menganalisa apakah pada jaringan OpenVPN
yang telah dibuat terjadi proses enkripsi yang mengamankan paket-paket data
yang terkirim mau pun yang diterima client VPN. Untuk melakukan analisa ini,
penulis menggunakan perangkat lunak Wireshark yang memiliki kemampuan
untuk membaca paket-paket data yang dikirim melalui port-port komunikasi
yang dipilih.

31

Gambar 2.3-35 Tampilan awal Wireshark

Untuk melakukan analisa ini, penulis mengikuti langkah-langkah berikut


1. Hubungkan perangkat komputer dengan VPN terlebih dahulu. Hal ini dapat
dilakukan dengan menjalankan aplikasi OpenVPN Client dengan
menggunakan hak administrator
2. Pada taskbar, akan muncul icon OpenVPN. Klik kanan pada icon ini, lalu
pilih profil OpenVPN yang telah terpasang. Kemudian, pilih Connect

Gambar 2.3-36 Menghubungkan ke VPN

32

3. Bila proses autentifikasi pada VPN berjalan sukses, maka akan muncul
notifikasi bahwa IP komputer telah berubah sesuai dengan IP range yang
telah dikonfigurasi pada server VPN
4. Setelah masuk ke dalam jaringan VPN, jalankan aplikasi Wireshark
5. Kemudian pilih interface yang akan dipantau oleh Wireshark. Pada analisa
ini, penulis menggunakan WiFi dikarenakan koneksi pada VPN
menggunakan jaringan wireless. Setelah memilih interface, klik Start

Gambar 2.3-37 Memilih interface untuk dipantau

6. Wireshark akan memantau paket-paket data yang terkirim dari interface


yang terpilih. Untuk memulai pertukaran data, lakukan komunikasi pada
jaringan VPN, misalkan bertukar dokumen dengan sesama client VPN
Penulis melakukan dua kali perekaman menggunakan Wireshark, yaitu
pertama pada komunikasi tanpa VPN, dan yang kedua adalah komunikasi
menggunakan VPN.
Pada komunikasi tanpa VPN, akan terlihat bahwa informasi-informasi
yang

terkirim

tidak

terenkripsi,

membuat

aplikasi

Wireshark

dapat

33

menampilkan informasi dari paket-paket data tersebut, seperti file apakah yang
terkirim, tipe dari file yang dikirim, dan konten-kontennya.

Gambar 2.3-38 Rekaman tanpa menggunakan VPN, tampak informasi dari


paket data

Pada komunikasi menggunakan VPN, akan terlihat bahwa Wireshark


tidak dapat menemukan paket data asli yang dikirim oleh client VPN.
Wireshark hanya akan menemukan paket-paket data terenkripsi yang tidak
dapat memunculkan informasi mengenai client VPN. Ini menunjukan bahwa
VPN yang dibuat telah mengaplikasikan metode enkripsi pada paket-paket data
yang terkirim, membuat device yang tidak termasuk dalam VPN tidak dapat
mengambil informasi dari komunikasi yang terjadi.

34

35

Gambar 2.3-39 Berbagai rekaman menggunakan VPN, tampak muncul paket data
terenkripsi pada rekaman

BAB 3
PENUTUP

36

1.1 Kesimpulan
Kesimpulan dari Studi Kasus ini adalah jaringan OpenVPN melakukan
enkripsi pada paket-paket data yang dikirim pada jaringan VPN. VPN
melakukan enkripsi ini untuk melindungi paket-paket data yang ada dari devicedevice di luar jaringan yang mencoba untuk mengambil informasi dari
komunikasi antar client VPN. Dengan paket-paket data yang terenkripsi, device
di luar jaringan VPN tidak dapat mengambil informasi yang terdapat pada paket
tersebut, membuat komunikasi antar client VPN menjadi rahasia dan aman.

1.2 Saran
Hal yang harus diperhatikan dalam melakukan Studi Kasus ini adalah:
1. Perhatikan konfigurasi dari OpenVPN yang dilakukan. Kesalahan dalam
konfigurasi dapat membuat server VPN tidak dapat berjalan
2. Pastikan key dan certificate yang digunakan harus berasal dari server VPN
yang akan digunakan. Bila tidak, maka OpenVPN client tidak akan dapat
terhubung dengan server VPN
3. Dalam mengkonfigurasi profil OVPN, pastikan anda mengingat informasi
server, seperti alamat IP server, direktori tempat key dan certificate pada
komputer, dan sebagainya. Hal ini perlu diperhatikan agar OpenVPN client
dapat mengontak server saat client ingin terhubung
4. Sebelum melakukan analisa dengan Wireshark, pastikan bahwa anda telah
sukses terhubung dengan VPN. Hal ini dapat diketahui dari alamat IP device
anda yang berubah menjadi alamat IP VPN
5. Pastikan anda menggunakan OpenVPN client versi terkini. Hal ini perlu

37

dilakukan untuk menghindari masalah dan bug pada versi OpenVPN yang
lama

DAFTAR PUSTAKA
Cisco System Inc., 2008. How Virtual Private Networks Work. [Online]
Available at: http://www.cisco.com/c/en/us/support/docs/security-vpn/ipsecnegotiation-ike-protocols/14106-how-vpn-works.html
[Diakses 2015 Desember 28].
Cisco System Inc., 2015. Virtual Private Network. [Online]
Available at: https://www.scribd.com/doc/252361854/VPN
[Diakses 2015 Desember 28].
Djokovic, M., 2013. Virtual Private Network. [Online]
Available at: https://www.scribd.com/doc/125961164/VPN
[Diakses 2015 Desember 28].
Packt Publishing, 2015. Advantages and History of OpenVPN. [Online]
Available at: https://www.packtpub.com/books/content/advantages-and-historyopenvpn
[Diakses 28 Desember 2015].
Tyson, J. & Crawford, S., 2011. HowStuffWork - How VPN Works. [Online]
Available at: http://computer.howstuffworks.com/vpn.htm
[Diakses 28 Desember 2015].
Wikipedia, 2015. OpenVPN. [Online]
Available at: https://en.wikipedia.org/wiki/OpenVPN
[Diakses 28 Desember 2015].
Yuda, A., 2011. Virtual Private Network. [Online]
Available at: https://www.scribd.com/doc/58507342/VPN
[Diakses 2015 Desember 28].

Anda mungkin juga menyukai