Anda di halaman 1dari 60

PROTOTIPE REMOTE ACCESS SERVICE (RAS)

DI VIRTUAL PRIVATE NETWORK (VPN)


DENGAN METODE SECURE SOCKET LAYER
(SSL) MENGGUNAKAN RASPBERRY PI

REMOTE ACCESS SERVICE IN A VIRTUAL


PRIVATE NETWORK WITH SECURE SOCKET
LAYER METHOD USING RASPBERRY PI

PROYEK AKHIR

Yanuar Rivandi Mulki


6302100059

PROGRAM STUDI D3 TEKNIK KOMPUTER


FAKULTAS ILMU TERAPAN
UNIVERSITAS TELKOM
BANDUNG, 2015
“Maka, nikmat Tuhan-Mu manakah yang kamu dustakan?”, hanya untaian syukur yang
pantas dihadiahkan bagi Sang Pemberi Kekuatan dan Sumber Inspirasi, Allah Azza Wajalla

“Ridho-Nya adalah ridho Orang Tua”, doaku menyertaimu Orang Tuaku

“Sebaik-baik manusia ialah yang paling bermanfaat”, kupersembahkan untuk kemaslahatan


LEMBAR PENGESAHAN PROYEK AKHIR

PROTOTIPE REMOTE ACCESS SERVICE DI VIRTUAL PRIVATE


NETWORK DENGAN METODE SECURE SOCKET LAYER
MENGGUNAKAN RASPBERRY PI

Penulis
Yanuar Rivandi Mulki
NIM 6302100059

Pembimbing I
Isa Puncuna, S.T.
NIP 13671133-3

Pembimbing II
Nina Hendrarini, S.T., M.T.
NIP 14671401-1

Ketua Program Studi


Henry Rossi Andrian, S.T., M.T.
NIP 0982056-1

Tanggal Pengesahan: 10 Agustus 2015


PERNYATAAN

Dengan ini saya menyatakan bahwa:

1. Proyek Akhir ini adalah asli dan belum pernah diajukan untuk mendapatkan
gelar akademik (Ahli Madya, Sarjana, Magister dan Doktor), baik di Fakultas
Ilmu Terapan Universitas Telkom maupun di perguruan tinggi lainnya;

2. karya tulis ini murni gagasan, rumusan, dan penelitian saya sendiri, tanpa
bantuan pihak lain, kecuali arahan tim pembimbing atau tim promotor atau
penguji;

3. dalam karya tulis ini tidak terdapat cuplikan karya atau pendapat yang telah
ditulis atau dipublikasikan orang lain, kecuali secara tertulis dengan jelas
dicantumkan sebagai acuan dalam naskah dengan menyebutkan nama
pengarang dan dicantumkan dalam daftar pustaka;

4. saya mengijinkan karya tulis ini dipublikasikan oleh Fakultas Ilmu Terapan
Universitas Telkom, dengan tetap mencantumkan saya sebagai penulis; dan

Pernyataan ini saya buat dengan sesungguhnya dan apabila pada kemudian hari
terdapat penyimpangan dan ketidakbenaran dalam pernyataan ini maka saya
bersedia menerima sanksi akademik berupa pencabutan gelar yang telah diperoleh
karena karya tulis ini, serta sanksi lainnya sesuai norma yang berlaku di Fakultas
Ilmu Terapan Universitas Telkom.

Bandung, 15 Juli 2015

Pembuat pernyataan,

Yanuar Rivandi Mulki


KATA PENGANTAR

Syukur Alhamdulillah atas segala Ridho dan Kekuatan yang dilimpahkan Allah SWT
kepada penulis baik selama penulis menjalani nikmat kehidupan maupun terkhusus
pada saat penulis menjalani nikmat pengerjaan dan penyelesaian Proyek Akhir ini
yang berjudul PROTOTIPE REMOTE ACCESS SERVICE DI VIRTUAL PRIVATE NETWORK
DENGAN METODE SECURE SOCKET LAYER MENGGUNAKAN RAPBERRY PI.
Penyusunan buku Proyek Akhir ini bertujuan untuk melengkapi syarat kelulusan
dan memberikan informasi bagi pembaca. Dalam penyusunan buku dan
penyelesaian Proyek Akhir ini penulis dibantu oleh beberapa pihak. Sehingga sudah
sepatutnya bagi penulis untuk mengucapkan terima kasih kepada:

1. Ibunda Fitrah Andriana dan Ayahanda Achmad Ariawan, serta adik saya
Machfito Imanu yang tanpa lelah memberikan doa dan semangat yang
tulus.

2. Bapak Isa Puncuna selaku Pembimbing I dan Ibu Nina Hendrarini selaku
Pembimbing II, yang telah memberikan bimbingan, saran, serta kritikan
yang sangat bermanfaat bagi penyelesaian proyek akhir ini.

3. Nabila Ariani, Sahabat dan teman terbaik saya yang telah membantu
memberikan doa dan dukungan yang luar biasa.

4. Sahabat-sahabat PCE 10-05, NE 10-02, UKM dan semua teman-teman di


Telkom University yang selalu berbagi canda tawa, berbagi ilmu, semangat,
pengalaman, suka dan duka. Terima kasih semangatnya, Semoga
pertemanan kita tidak akan pernah putus sampai akhir hayat.

5. Semua pihak yang telah memberikan bantuan yang tidak dapat disebutkan
satu per satu.

i
Penulis menyadari bahwa Proyek Akhir ini masih banyak terdapat kekurangan.Oleh
karena itu, penulis mengharapkan saran dan kritik konstruktif demi perbaikan
Proyek Akhir ini di masa mendatang.Semoga Proyek Akhir ini dapat memberikan
manfaat bagi pengguna.

Bandung, 15 Juli 2015

Penulis

ii
ABSTRAK

Pada saat ini banyak perusahaan yang menggunakan jaringan internal sendiri untuk
menghubungkan antara kantor pusat dengan kantor cabangnya, hal ini tentunya
memakan biaya yang sangat mahal. Untuk menghemat biaya dapat dibangun suatu
jaringan private yang menumpang jaringan publik. Permasalahan keamanan juga
merupakan hal penting dalam keandalan suatu jaringan. Virtual Private Network
(VPN) adalah salah satu cara untuk membuat sambungan any-to-any di atas
jaringan publik seperti internet dengan memperhatikan faktor keamanan pada
VPN. Remote Access Virtual Private Network dengan menggunakan Raspberry Pi
dapat digunakan untuk membuat VPN server dengan budget seminimal mungkin
yang bisa menghubungkan pengguna yang bergerak (mobile) dari berbagai lokasi
yang berbeda ke jaringan internal kantor. VPN dengan Raspberry Pi ini dapat
digunakan oleh perusahaan skala kecil hingga menengah yang ingin membangun
jaringan private diatas jaringan publik.

Kata Kunci: VPN, Remote Access, jaringan private, raspberry pi.

iii
ABSTRACT

These time, many companies use their own internal network to connect between
head office and branches, it is certainly a cost which is very expensive. To save
costs, it can be built a private network that based on public network. Security issues
are also important in the reliability of a network. Virtual Private Network (VPN) is one
way to make the connection any-to-any over public networks such as the Internet by
taking into account safety factors on the VPN. Remote Access Virtual Private
Network using the Raspberry Pi can be used to create a VPN server with a minimum
budget that could connect mobile users (mobile) from different locations to the
internal office network. VPN with Raspberry Pi can be used by small to medium
scale companies who want to build a private network over a public network.

Keywords: VPN, Remote Access,private network, raspberry pi

iv
DAFTAR ISI

KATA PENGANTAR ...................................................................................................................... i


ABSTRAK ................................................................................................................................... iii
ABSTRACT ................................................................................................................................. iv
DAFTAR ISI ................................................................................................................................. v
DAFTAR GAMBAR .................................................................................................................... vii
DAFTAR TABEL .......................................................................................................................... ix
BAB 1 PENDAHULUAN .............................................................................................................. 1
1.1 Latar Belakang ................................................................................................................. 1
1.2 Rumusan Masalah............................................................................................................ 2
1.3 Tujuan .............................................................................................................................. 2
1.4 Batasan Masalah .............................................................................................................. 2
1.5 Definisi Operasional ......................................................................................................... 3
1.6 Metode Pengerjaan ......................................................................................................... 3
1.7 Jadwal Pengerjaan ........................................................................................................... 5
BAB 2 TINJAUAN PUSTAKA ........................................................................................................ 6
2.1 Virtual Private Network ................................................................................................... 6
2.2 Remote Access Service ..................................................................................................... 7
2.3 SSL VPN ............................................................................................................................ 7
2.4 Asymmetric Encryption .................................................................................................... 9
2.5 SSL/TLS Security ............................................................................................................. 10
2.6 Raspberry Pi ................................................................................................................... 10
BAB 3 ANALISIS DAN PERANCANGAN..................................................................................... 11
3.1 Gambaran Sistem Saat Ini .............................................................................................. 11
3.2 Analisis Kebutuhan Sistem ............................................................................................. 11
3.3 Kebutuhan Perangkat Keras dan Perangkat Lunak........................................................ 12
3.3.1 Spesifikasi Perangkat Keras ........................................................................ 12
3.3.2 Spesifikasi Perangkat Lunak ....................................................................... 15
BAB 4 IMPLEMENTASI DAN PENGUJIAN................................................................................. 16
4.1 Implementasi ................................................................................................................. 16

v
4.1.1 Pembuatan di Sisi Server ............................................................................ 16
4.1.2 Konfigurasi di sisi laptop 1 (Server) ............................................................ 31
4.2 Pengujian ....................................................................................................................... 37
4.2.1 Skenario Pengujian ..................................................................................... 37
4.2.2 Pengujian Startup VPN ............................................................................... 38
4.2.3 Pengujian Koneksi VPN .............................................................................. 40
4.2.4 Pengujian Akses Server .............................................................................. 41
4.2.5 Pengujian Scanning Port ............................................................................ 42
4.2.6 Pengujian Monitoring Data ........................................................................ 44
BAB 5 KESIMPULAN ................................................................................................................ 46
5.1 Kesimpulan .................................................................................................................... 46
5.2 Saran .............................................................................................................................. 46
DAFTAR PUSTAKA .................................................................................................................... 47

vi
DAFTAR GAMBAR

Gambar 2. 1 Gambaran Umum RAS VPN SSL.......................................................................................... 7


Gambar 2. 2 Assymetric Encryption dengan SSL/TLS [8]......................................................................... 9
Gambar 3. 1 Topologi RAS VPN SSL Raspberry yang digunakan dalam Proyek Akhir ini ...................... 11
Gambar 4. 1 Konfigurasi Putty untuk koneksi SSH ke Raspi ................................................................. 16
Gambar 4. 2 Login ke Raspi dengan PuTTY ........................................................................................... 17
Gambar 4. 3 Command untuk konfigurasi alamat IP raspberry ........................................................... 17
Gambar 4. 4 Konfigurasi alamat IP pada raspi ...................................................................................... 17
Gambar 4. 5 Konfigurasi Address Reservation pada akses poin ........................................................... 18
Gambar 4. 6 Perintah ifconfig untuk melihat konfigurasi network ...................................................... 18
Gambar 4. 7 Perintah untuk menginstall OpenVPN Server di raspi ..................................................... 19
Gambar 4. 8 Membuat workspace VPN Server .................................................................................... 19
Gambar 4. 9 Perintah untuk mengkonfigurasi file vars ........................................................................ 19
Gambar 4. 10 Konfigurasi file vars ........................................................................................................ 19
Gambar 4. 11 Konfigurasi awal kunci.................................................................................................... 20
Gambar 4. 12 Perintah membuat CA .................................................................................................... 20
Gambar 4. 13 Perintah membuat kunci server ..................................................................................... 20
Gambar 4. 14 Pembuatan key untuk klien ............................................................................................ 21
Gambar 4. 15 Proses membuat kunci untuk klien ................................................................................ 21
Gambar 4. 16 Membuat kunci des3...................................................................................................... 22
Gambar 4. 17 Membuat kunci DH ........................................................................................................ 22
Gambar 4. 18 Membuat HMAC Key ...................................................................................................... 22
Gambar 4. 19 Mengedit file server.conf ............................................................................................... 22
Gambar 4. 20 Konfigurasi server.conf .................................................................................................. 24
Gambar 4. 21 perintah untuk edit sysctl.conf ...................................................................................... 24
Gambar 4. 22 Konfigurasi sysctl.conf.................................................................................................... 24
Gambar 4. 23 Reload konfigurasi pada sysctl.conf ............................................................................... 25
Gambar 4. 24 Membuat file firewall-openvpn-rules.sh" ...................................................................... 25
Gambar 4. 25 Konfigurasi file firewall-openvpn-rules.sh ..................................................................... 25
Gambar 4. 26 Memberikan izin chmod 700 ......................................................................................... 25
Gambar 4. 27 Merubah kepemilikan file menjadi milik root ................................................................ 25
Gambar 4. 28 Reboot raspberry............................................................................................................ 26
Gambar 4. 29 Membuat file Defaults.txt .............................................................................................. 26
Gambar 4. 30 Konfigurasi yang ada di dalam file Defaults.txt.............................................................. 26
Gambar 4. 31 Membuat file OVPN.SH .................................................................................................. 26
Gambar 4. 32 Isi dalam file MakeOVPN.sh ........................................................................................... 27
Gambar 4. 33 Memberikan izin eksekusi terhadap file MakeOVPN.sh ................................................ 27
Gambar 4. 34 Penggunaan file MakeOVPN.sh...................................................................................... 27
Gambar 4. 35 Memberikan akses untuk semua user ke folder openVPN ............................................ 28

vii
Gambar 4. 36 Tampilan utama WinSCP ................................................................................................ 28
Gambar 4. 37 Mengambil file konfigurasi (.ovpn) ................................................................................ 29
Gambar 4. 38 File konfigurasi yang sudah dimasukkan ke OpenVPN Client ........................................ 29
Gambar 4. 39 Masukkan password pada OpenVPN GUI Client ............................................................ 30
Gambar 4. 40 Laptop 1 dapat IP VPN 10.8.0.10 ................................................................................... 30
Gambar 4. 41 Melakukan PING ke OpenVPN Server ............................................................................ 30
Gambar 4. 42 Jaringan tun0 sudah up pada OpenVPN Server.............................................................. 31
Gambar 4. 43 OpenVPN Server(raspberry) melakukan PING VPN ke laptop 1 (server) ....................... 31
Gambar 4. 44 Konfigurasi alamat IP di laptop 1 ................................................................................... 32
Gambar 4. 45 Konfigurasi IP wireless access point ............................................................................... 32
Gambar 4. 46 Alamat IP pada raspberry ............................................................................................... 33
Gambar 4. 47 XAMPP Control Panel ..................................................................................................... 33
Gambar 4. 48 Konfigurasi httpd xampp ................................................................................................ 34
Gambar 4. 49 Konfigurasi pada file httpd.conf ..................................................................................... 34
Gambar 4. 50 Konfigurasi .htaccess ...................................................................................................... 35
Gambar 4. 51 Web Server sudah berjalan dengan baik ........................................................................ 35
Gambar 4. 52 Web Server-2 sudah berjalan dengan baik .................................................................... 35
Gambar 4. 53 Menambahkan akun kedalam FTP Server ...................................................................... 36
Gambar 4. 54 Menentukan folder yang akan di sharing pada FTP Server............................................ 36
Gambar 4. 55 Alamat IP yang bisa mengakses FTP Server hanya IP VPN. ............................................ 37
Gambar 4. 56 Startup VPN Server......................................................................................................... 38
Gambar 4. 57 Sesaat sesudah di start dan di lakukan ifconfig, dev tun sudah berjalan....................... 38
Gambar 4. 58 network tun sudah berjalan ........................................................................................... 39
Gambar 4. 59 Masukkan password untuk terkoneksi ke jaringan VPN ................................................ 39
Gambar 4. 60 Notifikasi bahwa sukses terkoneksi ke jaringan VPN ..................................................... 40
Gambar 4. 61 Ping dari laptop 1 ke Raspberry sukses .......................................................................... 40
Gambar 4. 62 Ping ke Laptop 1 dari Raspberry sukses ......................................................................... 40
Gambar 4. 63 Tidak diberikan izin untuk mengakses web server melalui jaringan umum .................. 41
Gambar 4. 64 Tidak bisa akses web server saat belum terkoneksi ke VPN .......................................... 41
Gambar 4. 65 Tampilan web server yang bisa diakses melalui IP VPN ................................................. 42
Gambar 4. 66 Hasil scan IP range jaringan umum ................................................................................ 42
Gambar 4. 67 Hasil scan port melalui Nmap ........................................................................................ 43
Gambar 4. 68 Hasil scan IP range VPN tidak bisa diketahui ................................................................. 43
Gambar 4. 69 Melakukan pengunggahan melalui FTP ......................................................................... 44
Gambar 4. 70 username, password dan nama file yang diunggah bisa di sniff oleh Wireshark .......... 44
Gambar 4. 71 Melakukan unggah melalui VPN .................................................................................... 45
Gambar 4. 72 Hasil sniffing FTP nihil .................................................................................................... 45

viii
DAFTAR TABEL

Tabel 1. 1 Jadwal Pengerjaan .................................................................................................................. 5


Tabel 3.3. 1 Spesifikasi Raspberry Pi 2 Model B.................................................................................... 13
Tabel 3.3. 2 Spesifikasi Laptop 1 (Server FTP dan Web) ....................................................................... 13
Tabel 3.3. 3 Spesifikasi Laptop 2 (klien) ................................................................................................ 14
Tabel 4. 1 Konfigurasi server.conf......................................................................................................... 22

ix
BAB 1
PENDAHULUAN

1.1 Latar Belakang

Di masa lalu, perusahaan yang hendak menghubungkan cabang-cabang kantornya


dalam suatu jaringan akan mengunakan saluran sewa secara titik ke titik (point to
point) yang tentu saja biayanya besar.

Seiring dengan maraknya penggunaan Internet, banyak perusahaan yang kemudian


beralih menggunakan internet sebagai bagian dari jaringan mereka untuk
menghemat biaya. Akan tetapi permasalahan keamanan masih menjadi faktor
utama dalam realibilitas dalam suatu jaringan. Virtual Private Network (VPN) adalah
salah satu cara untuk membuat sambungan any to any di atas jaringan publik
seperti internet, tanpa klien yang satu dengan klien yang lain saling mengetahui
yang merupakan suatu cara untuk membuat sebuah jaringan bersifat “private” dan
aman dengan menggunakan jaringan public.

Dalam sebuah jaringan komputer, keamanan di dalam pengiriman serta


penerimaan data sangat penting untuk menjamin bahwa data yang dikirim tidak
jatuh ke pihak ketiga, terutama jika data tersebut bersifat rahasia. Untuk itu perlu
dilakukan implementasi metode-metode pengamanan data pada jaringan. Banyak
metode yang dapat diimplementasikan, seperti penggunaan tanda tangan digital,
enkripsi ataupun pemasangan firewall.

Remote Access Virtual Private Network biasanya digunakan untuk


menguhubungkan pengguna yang mobile dari berbagai lokasi yang jauh (remote).
Biasanya jenis VPN ini digunakan oleh pegawai perusahaan yang ingin terhubung ke
jaringan khusus perusahaannya dari berbagai lokasi yang jauh.

Pada VPN yang berbasis SSL, SSL VPN menggunakan algoritma cryptographic untuk
mengenkripsi data sehingga hanya komputer-komputer yang berkomunikasi yang
dapat membaca dan mengerti pesan yang dikirim. SSL mendukung berbagai

1
algoritma enkripsi sehingga modifikasi terhadap aplikasi tidak dibutuhkan dan
pengguna tidak perlu membuat sistem keamanan untuk setiap aplikasi atau setiap
komputer. SSL merupakan salah satu solusi yang baik bagi remote access VPN atau
pengguna yang mobile. Sehingga dengan dibangunnya suatu layanan VPN yang
berbasis SSL merupakan alternatif yang efektif untuk solusi keamanan untuk suatu
jaringan.

1.2 Rumusan Masalah

Rumusan masalah yang akan dibahas di dalam proyek akhir ini adalah, Bagaimana
para karyawan sebuah perusahaan dapat mengakses jaringan internal perusahaan
mereka walaupun para karyawan tersebut berada di jaringan atau lokasi yang
berbeda secara aman tanpa perlu takut data yang sedang diakses bisa di baca oleh
orang lain.

1.3 Tujuan

Adapun tujuan dari proyek akhir ini adalah untuk mengimplementasikan suatu
layanan yang berbasiskan Remote Access VPN dengan Raspberry Pi agar para
karyawan sebuah perusahaan dapat mengakses jaringan internal perusahaannya
dari jaringan publik dengan aman.

1.4 Batasan Masalah

Adapun batasan masalah dalam proyek akhir ini adalah :

1. Konfigurasi Remote Access VPN dengan Raspberry Pi berupa konfigurasi


pada sistem operasi.
2. Sistem operasi yang digunakan pada VPN server adalah Raspbian yang
berjalan di Raspberry Pi 2.
3. Implementasi konfigurasi Remote Access VPN dengan Raspberry Pi berupa
simulasi jaringan lokal dengan menggunakan minimal 2 komputer.
4. VPN (Virtual Private Network) diimplementasikan dengan menggunakan IP
versi 4 (IPv4).
5. Tidak membahas sistem keamanan lain selain SSL.

2
1.5 Definisi Operasional

Pada proyek akhir ini akan dibangun prototipe RAS VPN dengan Metode SSL agar
tingkat keamanan akses data semakin meningkat saat melakukan koneksi ke dalam
jaringan internal. Virtual Private Network (VPN) adalah suatu jaringan pribadi yang
dibuat denganmenggunakan jaringan publik (Charlie, 1999).

Sedangkan layanan yang umumnya menggunakan VPN adalah Layanan Remote


Access,yaitu sebuah kemampuan atau fitur untuk mengakses resource-resource
pada suatu layanan maupun jaringan komputer dari lokasi manapun (Van Vugt,
2006).

Untuk meningkatkan keamanan dari VPN itu sendiri, akan digunakan metode SSL.
Secure Socket Layer (SSL) itu sendiri adalah protokol kemananan yang umum
digunakan untuk berkomunikasi lewat internet secara aman dengan mengenkripsi
jalur komunikasi dan akses data (Joseph, 2005).

1.6 Metode Pengerjaan

Metode yang digunakan untuk menyelesaikan Proyek Akhir ini addalah metode
terstruktur dan memiliki beberapa tahapan, antara lain:

1. Studi Literatur

Studi literatur yaitu membaca dan memahami referensi-referensi


sumber, serta mempelajari dokumentasi-dokumentasi yang mendukung
untuk menyusun dasar teori yang digunakan untuk menyusun Proyek
Akhir.

2. Analisis Kebutuhan Sistem

Analisa kebutuhan sistem digunakan untuk menentukan kebutuhan


minimal sistem yang akan dirancang. Kemudian menentukan spesifikasi
perangkat keras dan perangkat lunak yang akan digunakan pada sistem.

3. Desain Sistem

3
Pada tahap ini akan dirancang topologi yang akan digunakan,
menentukan class dan range IP address yang digunakan, mendesain
topologi dan menentukan skenario pengujian sistem.

4. Implementasi Sistem

Tahap implementasi sistem dilakukan berdasarkan tahap analisa


kebutuhan sistem dan perancangan sistem dengan membuat vpnserver
pada sistem operasi Ubuntu 12.04 LTS dan integrasi SSL itu sendiri pada
VPN

5. Pengujian

Pada tahap ini akan diuji vpnserver dengan metode SSL yang telah
terintegrasi di dalamnya dengan mengkasesnya dari jaringan publik dan
mengakses kedalam jaringan internal yang dibuat menggunakan fitur
Remote Access.Tahap ini bertujuan apakah integrasi metode SSL pada
VPN Server telah bekerja baik dalam penggunaan Remote Access.

6. Dokumentasi

Penyusunan laporan dan dokumentasi proyek akhir dilakukan


selama waktu penyusunan proyek akhir.

4
1.7 Jadwal Pengerjaan

Jadwal pengerjaan proyek akhir ini adalah sebagai berikut:

Tabel 1. 1 Jadwal Pengerjaan

Jadwal Pengerjaan (2015)

No Kegiatan Februari Maret April Mei Juni

1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4

1 Studi Literatur

Analisa
2 Kebutuhan
Sistem

Perancangan
3
Sistem

Implementasi
4
Sistem

Pengujian
5
Sistem

Analisa
6 Pengujian
Sistem

7 Dokumentasi

5
BAB 2
TINJAUAN PUSTAKA

2.1 Virtual Private Network

Virtual Private Network (VPN) adalah sebuah teknologi komunikasi yang


memungkinkan untuk dapat terkoneksi ke jaringan publik dan menggunakannya
untuk dapat bergabung dengan jaringan lokal. Dengan cara tersebut maka akan
didapatkan hak dan pengaturan yang sama seperti halnya berada di dalam kantor
atau LAN itu sendiri, walaupun sebenarnya menggunakan jaringan milik publik.[6]

VPN dapat terjadi antara dua end-system atau dua komputer atau antara dua atau
lebih jaringan yang berbeda. VPN dapat dibentuk dengan menggunakan teknologi
tunneling dan enkripsi. Koneksi VPN juga dapat terjadi pada semua layer pada
protokol OSI, sehingga komunikasi menggunakan VPN dapat digunakan untuk
berbagai keperluan. Dengan demikian, VPN juga dapat dikategorikan sebagai
infrastruktur WAN alternatif untuk mendapatkan koneksi point-to-point pribadi
antara pengirim dan penerima. Dan dapat dilakukan dengan menggunakan media
apa saja, tanpa perlu media leased line atau frame relay.

Ada beberapa teknik yang dikenal untuk mengembangkan VPN di atas jaringan
Internet yaitu Point to Point Tunnelling Protocol (PPTP), Layer 2 Tunneling Protocol
(L2TP), Secure Socket Layer / Transport Layer Security (SSL/TLS) dan Internet
Protocol Security (IPSec). Kelompok kerja IPSec (di bawah area keamanan)
berkonsentrasi pada proteksi lapisan jaringan dengan merancang mekanisme
keamanan pengacakan (kriptografi). Mekanisme secara fleksibel dapat mendukung
kombinasi dari autentifikasi, integritas, kontrol akses, dan kerahasiaan.

Pada VPN yang berbasis SSL, SSL VPN menggunakan algoritma cryptographic untuk
mengenkripsi data sehingga hanya komputer-komputer yang berkomunikasi yang
dapat membaca dan mengerti pesan yang dikirim. SSL mendukung berbagai
algoritma enkripsi sehingga modifikasi terhadap aplikasi tidak dibutuhkan dan

6
pengguna tidak perlu membuat sistem keamanan untuk setiap aplikasi atau setiap
komputer. SSL merupakan salah satu solusi yang baik bagi remote access VPN atau
pengguna yang mobile. Sehingga dengan dibangunnya suatu layanan VPN yang
berbasis SSL merupakan alternatif yang efektif untuk solusi keamanan untuk suatu
jaringan.[2]

2.2 Remote Access Service

Remote Access merupakan sebuah kemampuan untuk mengakses resource pada


suatu layanan maupun jaringan komputer dari lokasi manapun. Penerapan remote
access VPN akan memberikan sebuah kemampuan untuk mengakses resource pada
suatu layanan maupun jaringan komputer melalui jalur private yang lebih aman.[5]

Model topologi jaringan Remote Access Service yang umum digunakan biasanya
terdiri dari sebuah komputer sebagai server, server pendukung lain seperti web
server, fileserver, dan server-server yang lain dan komputer client dengan bentuk
topologi seperti pada gambar 1 dimana Komputer klien yang sedang tidak
mengakses jaringan LAN, akan mengakses Server di kantor melalui jaringan internet
:

Gambar 2. 1 Gambaran Umum RAS VPN SSL

2.3 SSL VPN

Secure Socket Layer (SSL) adalah protokol yang digunakan untuk berkomunikasi
lewat internet secara aman. Teknologi SSL menggunakan konsep teknologi
kriptografi kunci publik untuk bisa mencapai komunikasi yang aman antar server

7
dan pengunjung (client). Kedua pihak yang berkomunikasi ini (server dan client)
saling mengirimkan data yang disamarkan dan untuk membacanya digunakan sandi
dan kunci yang dimiliki kedua pihak yang berkomunikasi tersebut, sehingga pihak
lain yang mencoba menyadap data yang dikirim tersebut tidak akan dapat
membacanya karena sandi dan kunci yang dibutuhkan tersebut hanya dimiliki oleh
kedua pihak yang berkomunikasi.

SSL VPN memegang peranan penting untuk pengawasan transaksi pertukaran


data/akses sehingga harus mempunyai mekanisme untuk memblokir akses ke
jaringan private server ketika jumlah akses bersamaan melebihi batas yang telah
ditentukan. SSL VPN gateway harus mempunyai mekanisme sehingga setiap client
memiliki administratornya sendiri yang mempunyai kewenangan seperti mengatur
hak akses dari client, mengatur akses user pada sumber daya mereka. Perlu
memeriksa sertifikat yang diterimanya agar lebih yakin bahwa client sedang
berkomunikasi dengan server yang diinginkan. Client memeriksa sertifikat digital itu
dengan membandingkan tanda tangan CA (certificate of authority) pada sertifikat
digital itu dengan daftar OS yang dimiliki. Penyertaan sertifikat digital CA utama
pada browser akan menghindarkan client dari pemalsuan sertifikat CA utama. [8]

Adapun algoritma kriptografi yang saat ini umumnya digunakan adalah:

1. Untuk kriptografi Public Key: RSA, Diffie-Hellman, DSA atau


Fortezza.

2. Untuk enkripsi simetris: RC2, RC4, IDEA, DES, Triple DES atau AES.

3. Untuk fungsi hash searah: MD5 atau SHA.

Sedangkan Mode Operasi yang ada di SSL VPN yaitu:

1. Static routes : untuk mendukung pembentukan VPN dengan


menggunakan rute statis yang di assign oleh admin secara
permanen dengan software operasi.

8
2. Unrestricted : untuk mendukung pembentukan VPN dengan
menggunakan mode berdasarkan kebutuhan support dari user,
biasanya dilakukan secara dinamis dan on demand.

2.4 Asymmetric Encryption


SSL/TLS (Transport Layer Security) menggunakan salah satu teknologi enkripsi
terbaik yang disebut enkripsi asimetric untuk memastikan identitas dari mitra VPN.
Kedua mitra enkripsi memiliki dua kunci masing-masing: satu publik dan satu privat.
Kunci publik itu diserahkan kepada mitra komunikasi, untuk meningkatkan datanya.
Oleh karena algoritma mathematical yang terpilih digunakan untuk menciptakan
pasangan kunci public/private, hanya kunci pribadi penerima itu yang dapat
mengurangi data yang disandikan oleh kunci publiknya.

Gambar 2. 2 Assymetric Encryption dengan SSL/TLS [8]

Pada Gambar 2 di atas, suatu pesan teks dienkripsi pada Sydney dengan kunci
publik dari London. Kode acak dikirim kepada London, di mana hal itu dapat
diuraikan menggunakan kunci pribadi London. Hal ini bisa dilakukan sebaliknya
untuk data dari London ke Sydney, yang dienkripsi oleh kunci publik Sydney di
London dan hanya dapat didideskripsikan oleh kunci pribadi Sydney di Sydney.

9
Suatu prosedur yang serupa dapat juga digunakan untuk tujuan pengesahan:
London mengirim suatu nomor acak yang besar kepada Sydney, di mana nomor ini
disandikan dengan kunci pribadi dan dikembalikan. Di London, kunci publik Sydney
dapat memecahkan kode nomor. Jika nomor yang dikirim dan dideskripsi sesuai,
kemudian pengirim harus memiliki kunci pribadi Sydney. Ini disebut tanda tangan
digital.[8]

2.5 SSL/TLS Security


SSL juga yang dikenal sebagai TLS, adalah suatu protokol yang awalnya dirancang
oleh Netscape Communications Corporation untuk memastikan integritas data dan
keaslian untuk perkembangan Internet pada tahun 1990. Semua orang yang
menggunakan browser modern dapat mengambil bagian di dalam komunikasi yang
dienkripsi. SSL/TLS adalah satu teknologi yang terkenal dan digunakan di mana-
mana di web untuk perbankan, e-commerce, atau aplikasi di mana keleluasaan
pribadi lain manapun dan keamanan diperlukan. SSL bisa dapat dikendalikan, dapat
di debugged, diuji, dan yang diperbaiki oleh kedua-duanya, yaitu oleh pengembang
sumber dan kepemilikan yang terbuka dan banyak korporasi.[2]

2.6 Raspberry Pi
Rasberry Pi adalah sebuah Mini PC berukuran sebesar Kartu ATM yang
dikembangkan pertama kali oleh Raspberry Pi Foundation yang bermarkas di UK.
Jenis komputer mini Raspberry Pi diproduksi kedalam dua jenis Board Configuration
Tipe A dan B yang diproduksi oleh Newark Element dan Egoman. Kedua perusahaan
tersebut menjualnya secara Online. Raspberry Pi memiliki dua model yaitu model A
dan model B. Secara umum Raspberry Pi Model B, 512MB RAM. Perbedaan model
A dan B terletak pada memory yang digunakan, Model A menggunakan memory
256 MB dan model B 512 MB. Selain itu model B juga sudah dilengkapai dengan
ethernet port (kartu jaringan) yang tidak terdapat di model A. Desain Raspberry Pi
didasarkan seputar SoC (System-on-a-chip) Broadcom BCM2835, yang telah
menanamkan prosesor ARM1176JZF-S dengan 700 MHz, VideoCore IV GPU, dan
256 Megabyte RAM (model B). Penyimpanan data didisain tidak untuk
menggunakan hard disk atau solid-state drive, melainkan mengandalkan kartu SD
(SD memory card) untuk booting dan penyimpanan jangka panjang.[12]

10
BAB 3
ANALISIS DAN PERANCANGAN

3.1 Gambaran Sistem Saat Ini

Pembangunan VPN Server ini bertujuan sebagai tunnel keamanan saat


menggunakan jaringan umum, dimana ketika klien ingin berhubungan langsung
dengan server yang berbeda jaringan, klien tetap bisa terhubung dengan server
tanpa mengesampingkan keamanannya.

3.2 Analisis Kebutuhan Sistem

Pada sistem RAS VPN yang sudah banyak dipakai, client akan melakukan remote
access terhadap layanan-layanan yang terdapat pada server. Dimana client
memerlukan untuk mengakses file yang memerlukan koneksi langsung ke server.
Sebelum client dapat mengakses file maupun layanan-layanan yang terdapat pada
server jaringan lokal, client membuat koneksi dengan sebuah VPN Server sebagai
mekanisme kemananan komunikasi data, untuk menjaga keamanan data pada saat
koneksi dengan server, kemudian pada VPN Server akan melakukan forwarding
kepada layanan yang diinginkan oleh client, kemudian layanan yang diinginkan oleh
client yang telah terkoneksi vpn akan me-reply layanan yang diinginkan tersebut.
Dengan menggunakan koneksi VPN untuk mengakses layanan yang terdapat pada
jaringan lokal, koneksi dari client ke server dapat dilakukan dengan aman. Topologi
yang akan digunakan ada pada gambar dibawah:

Gambar 3. 1 Topologi RAS VPN SSL Raspberry yang digunakan dalam Proyek Akhir ini

11
Client dapat mengakses server-server seperti fileserver, webserver, dan server-
server yang lain setelah client melakukan koneksi melalui vpn, sehingga
pengaksesan server-server tersebut dilakukan melalui network interface vpn,
sehingga pengaksesan data dari server dapat dilakukan dengan aman.

Dari sistem yang sudah ada diatas, maka akan dibutuhkan suatu metode
pengamanan VPN agar dapat menjaga data-data komunikasi dan mengenkripsi
akses data dan jalur komunikasi agar dapat jauh lebih aman, yaitu menggunakan
metode SSL VPN.

SSL VPN menggunakan infrastruktur publik yang sudah ada di internet untuk
melakukan pertukaran data(misal: antara kantor pusat sebuah perusahaan dan
kantor cabangnya).Karena dilewatkan pada jaringan internet publik, permasalahan
konsep SSL VPN muncul sama seperti jaringan IP pada umumnya. Salah satu
masalah jaringan internet (IP public) adalah tidak mempunyai dukungan yang baik
terhadap keamanan. SSL VPN dapat digunakan untuk mengatasi persoalan
keamanan tersebut. Dasar dari konsep SSL VPN ini adalah penggunaan infrastruktur
IP untuk hubungan suatu server dengan client-nya dengan cara pengalamatan
secara private dengan melakukan pengamanan terhadap transmisi paket data. Di
dalam proses kerjanya, SSL terdiri dari beberapa fase, yaitu:

1. Negosiasi antar peer terhadap algoritma yang didukung oleh masing-


masing peer/endpoint tersebut.

2. Pertukaran Public Key Infrastructure (PKI) untuk mekanisme enkripsi dan


autentikasi berbasis sertifikat.

3. Enkripsi simetris maupun enkripsi asimetris.

3.3 Kebutuhan Perangkat Keras dan Perangkat Lunak

3.3.1 Spesifikasi Perangkat Keras


Kebutuhan spesifikasi perangkat keras yang digunakan dalam mengerjakan Proyek
Akhir ini yaitu:

12
a. Raspberry Pi

Raspberry Pi digunakan sebagai VPN Server. Model yang digunakan adalah


Raspi Model 2 B dengan spesifikasi sebagai berikut:

Tabel 3.3. 1 Spesifikasi Raspberry Pi 2 Model B

Jenis Hardware Spesifikasi

Prosesor 900 Mhz ARM Cortex A7 CPU

RAM 2 GB RAM

Memori MicroSD 8GB

OS Raspbian NOOBS

b. Laptop 1

Laptop 1 digunakan sebagai server utama yang mempunyai layanan Web


Server dan FTP Server,nantinya juga sebagai untuk pengujian sniffing akses
ftp klien baik melalui IP publik maupun IP VPN. Spesifikasi laptop 1 adalah
sebagai berikut:

Tabel 3.3. 2 Spesifikasi Laptop 1 (Server FTP dan Web)

Jenis Hardware Spesifikasi

Prosesor AMD-A6 3400M APU

RAM 8GB RAM

Memori 640 GB

Interface Jaringan yang digunakan Ethernet dan Wireless

OS Windows 8.1

13
c. Laptop 2

Laptop 2 digunakan sebagai klien yang akan mengkases web server dan FTP
server pada laptop 1 dan terhubung pada jaringan VPN.

Tabel 3.3. 3 Spesifikasi Laptop 2 (klien)

Jenis Hardware Spesifikasi

Prosesor Intel Core i3

RAM 4GB RAM

Memori 500 GB

Interface Jaringan yang digunakan Wireless

OS Windows 8.1

d. Switch

Switch yang di gunakan adalah switch TP-LINK TL-SF1005D 5 port.

e. Wireless Access Point

Wireless AP digunakan untuk media penghubung klien ke dalam jaringan


lokal. Spesifikasinya adalah TP-LINK TL-WA500G 54M

14
3.3.2 Spesifikasi Perangkat Lunak
Berikut ini kebutuhan spesifikasi perangkat lunak yang digunakan dalam
mengerjakan Proyek Akhir, yaitu:

Nama Software Fungsi Penempatan

OpenVPN Server Aplikasi untuk VPN Server (RPi)


membangun VPN

XAMPP v3.2.1 Aplikasi untuk Laptop 1 (Server)


membangun Web Server

FileZilla Server v0.9.41 Aplikasi untuk Laptop 1 (Server)


membangun FTP Ser ver

PuTTY v0.64 Aplikasi untuk koneksi Laptop 1 (Server)


jaringan SSH ke Raspberry
Pi

WinSCP v.5.7.3 Aplikasi untuk SSH File Laptop 1 (Server)


Transfer

nMAP v6.49 Aplikasi untuk melakukan Laptop 2 (Klien)


Port Scanning

Wireshark v1.12.6 Aplikasi untuk melakukan Laptop 2 (Klien)


Packet Sniffing

OpenVPN Client v7 Aplikasi untuk Laptop 2 (Klien)


menghubungkan klien
VPN ke VPN Server

15
BAB 4
IMPLEMENTASI DAN PENGUJIAN

4.1 Implementasi

Implementasi dalam proyek akhir ini terdiri dari pembuatan pembuatan OpenVPN
Server, Webserver dan FTP Server.

4.1.1 Pembuatan di Sisi Server

4.1.1.1 Pembuatan OpenVPN Server pada Raspberry


Raspberry yang sudah ter install OS Raspbian dihidupkan. Pada Windows, jalankan
aplikasi PuTTY untuk menginisialisasi koneksi SSH ke Raspbian. Di dalam kolom Host
Name, input alamat IP raspberry dan port isikan 22, lalu klik Open.

Gambar 4. 1 Konfigurasi Putty untuk koneksi SSH ke Raspi

16
Setelah masuk kedalam konsol, ketikkan "pi" di kolom login as dan ketikkan
"raspberry" di kolom password.

Gambar 4. 2 Login ke Raspi dengan PuTTY

Untuk konfigurasi alamat IP di Raspberry, ketikkan "nano /etc/network/interfaces".

Gambar 4. 3 Command untuk konfigurasi alamat IP raspberry

Setelah GPU nano dibuka, disana bisa dikonfigurasi alamat IP Raspberry dengan
memodifikasi "iface eth0 inet", bisa diberikan secara statis (static), ataupun dinamis
(DHCP).

Gambar 4. 4 Konfigurasi alamat IP pada raspi

Disini penulis memberikan inputan MAC Address raspberry di Address Reservation


dengan alamat IP "192.168.200.200" agar setiap raspberry dinyalakan, raspberry
akan diberikan alamat IP 192.168.200.200.

17
Gambar 4. 5 Konfigurasi Address Reservation pada akses poin

Setelah dikonfigurasi, lakukan perintah dikonsol dengan mengetikkan "sudo service


networking restart" dan lakukan perintah "ifconfig" untuk melihat apakah "eth0"
sudah mendapatkan alamat IP yang diinginkan atau belum.

Gambar 4. 6 Perintah ifconfig untuk melihat konfigurasi network

Untuk menginstall OpenVPN Server di Raspi, gunakan perintah "sudo apt-get install
openvpn".

18
Gambar 4. 7 Perintah untuk menginstall OpenVPN Server di raspi

Setelah instalasi selesai, gunakan perintah "cp -r


/usr/share/doc/openvpn/examples/easy-rsa/2.0 /etc/openvpn/easy-rsa" untuk
membuat workspace konfigurasi VPNServer di /etc/openvpn/easy-rsa.

Gambar 4. 8 Membuat workspace VPN Server

Setelah proses salin selesai, pindah kedalam folder easy-rsa dan gunakan perintah
"nano vars" untuk mengkonfigurasi file vars.

Gambar 4. 9 Perintah untuk mengkonfigurasi file vars

Pada bagian "export EASY_RSA", hapus inputan "pwd" menjadi


"/etc/openvpn/easy-rsa", setelah selesai di save, lalu close.

Gambar 4. 10 Konfigurasi file vars

19
Apabila file vars telah dikonfigurasi, maka file vars tadi dapat dijalankan untuk
menginialisasi pembuatan sertifikat dan kunci yang dibutuhkan. Ketikkan perintah
"./clean-all" yang akan menghapus semua konfigurasi lama yang pernah dibuat
dalam folder keys.

Gambar 4. 11 Konfigurasi awal kunci

Implementasi pada Proyek Akhir ini akan menggunakan 3 jenis kunci, kunci dan
sertifikat ini merupakan implementasi dari konsep Asymmetric Encryption dari SSL,
dimana kunci dan sertifikat akan bertindak sebagai kunci dan kunci privat pada
komputer server dan komputer klien yang akan terkoneksi melalui remote access
VPN, kunci dan sertifikat tersebut yaitu: CA (Certificate Authority),key dan kunci DH
(Diffie-Hellman). CA merupakan sertifikat yang digunakan untuk autentikasi yang
menandakan bahwa itu berasal dari server yang sah. CA dibuat dengan perintah
"./build-ca"

Gambar 4. 12 Perintah membuat CA

Pembuatan key terdapat 2 jenis, yaitu key untuk server dan untuk klien. Key untuk
server hanya diperbolehkan mempunyai satu key, sedangkan untuk klien dapat
dibuat lebih dari satu. Server key dan Client key merupakan kunci private
asymmetric encryption yang harus dimiliki oleh server maupun klien. Key pada klien
merupakan sinkronisasi dari kunci server yang terdapat di VPN server dan
menandakan bahwa klien tersebut merupakan klien dari VPN server tersebut.
Server key dapat dibuat dengan perintah "./build-key-server [namaserver]".

Gambar 4. 13 Perintah membuat kunci server

Untuk pembuatan key pada klien dapat menggunakan perintah "./build-key-pass


[namaklien]".

20
Gambar 4. 14 Pembuatan key untuk klien

Sama seperti saat membuat key untuk server, pada pembuatan key untuk klien
menunjukkan bahwa kunci-kunci tersebut dibuat dengan menggunakan parameter
yang berasal dari file openssl.conf

Gambar 4. 15 Proses membuat kunci untuk klien

Masukkan perintah seperti pada gambar untuk membuat key des3.

21
Gambar 4. 16 Membuat kunci des3

Kunci DH merupakan metode enkripsi dengan algoritma kunci publik yang


memungkinkan dua pihak dapat membentuk suatu kunci rahasia untuk
menciptakan komunikasi yang aman.

Gambar 4. 17 Membuat kunci DH

Untuk menghindari adanya hacker yang bisa spam dengan request acak, maka
lakukan perintah seperti gambar dibawah untuk membuat HMAC key.

Gambar 4. 18 Membuat HMAC Key

Setelah semua kunci terbentuk, maka server dapat dikonfigurasi dengan mengedit
file "server.conf" pada folder "/etc/openvpn".

Gambar 4. 19 Mengedit file server.conf

Parameter pada file "server.conf" dikonfigurasi sesuai dengan kebutuhan.

Tabel 4. 1 Konfigurasi server.conf

Parameter Keterangan

Local 192.168.200.200 merupakan alamat IP raspberry yang


akan digunakan sebagai VPN Server.

Dev tun Menciptakan tunnel routing IP

22
Parameter Keterangan

Proto udp Protokol yang digunakan adalah UDP

Ca: /etc/openvpn/easy-rsa/keys/ca.crt Lokasi sertifikat dan kunci-kunci yang


digunakan oleh server
Cert: /etc/openvpn/easy-
rsa/keys/Server.crt

Key: /etc/openvpn/easy-
rsa/keys/Server.key

Dh: /etc/openvpn/easy-
rsa/keys/dh1024.pem # If you changed
to 2048, change that here!
Server 10.8.0.0 255.255.255.0 Mode konfigurasi server dan suplai dari
subnet VPN. Dengan parameter
tersebut artinya IP dari VPN Server
adalah 10.8.0.1 dan sisanya untuk klien.

Ifconfig 10.8.0.1 10.8.0.2 Endpoint untuk server dan remote

Push route 10.8.0.1 255.255.255.0 Menambahkan tabel routing klien


kedalam OpenVPN Server

Push route 10.8.0.0 255.255.255.0 Menambahkan tabel routing klien


kedalam subnet OpenVPN

Push route 192.168.200.200 Melakukan routing ke jaringan intranet


255.255.255.0 dengan alamat 192.168.200.0/24
melalui alamat tunnel server 10.8.0.1

Client-to-client Mengizinkan agar client dapat saling


melihat satu sama lain

23
Gambar 4. 20 Konfigurasi server.conf

Untuk melakukan konfigurasi agar Raspberry bisa melakukan forward traffic


gunakan perintah "nano /etc/sysctl.conf".

Gambar 4. 21 perintah untuk edit sysctl.conf

Hapus hashtag komen pada bagian "net.ipv4.ipf_forward=1".

Gambar 4. 22 Konfigurasi sysctl.conf

Setelah konfigurasi di simpan, lakukan reload pada sysctl.conf dengan perintah


"sysctl -p".

24
Gambar 4. 23 Reload konfigurasi pada sysctl.conf

Untuk mengizinkan agar traffic OpenVPN dapat melalui firewall yang aktif di
Raspberry, perlu membuat file "firewall-openvpn-rules.sh".

Gambar 4. 24 Membuat file firewall-openvpn-rules.sh"

Isikan file tersebut sesuai dengan yang ada pada gambar dibawah ini.

Gambar 4. 25 Konfigurasi file firewall-openvpn-rules.sh

Setelah disimpan, berikan izin mode 700 dengan perintah "chmod 700" dan
merubah kepemilkan file menjadi milik root user dengan perintah "chown root".

Gambar 4. 26 Memberikan izin chmod 700

Gambar 4. 27 Merubah kepemilikan file menjadi milik root

Setelah selesai, copy dan paste link dari "firewall-openvpn-rules.sh" pada


"/etc/network/interfaces". Setelah selesai, reboot raspberry agar service openVPN
dapat berjalan.

25
Gambar 4. 28 Reboot raspberry

Setelah raspberry reboot, buatlah file "Defaults.txt" pada folder


"/etc/openvpn/easy-rsa/keys".

Gambar 4. 29 Membuat file Defaults.txt

Isikan file "Defaults.txt" dengan yang ada pada gambar dibawah berikut:

Gambar 4. 30 Konfigurasi yang ada di dalam file Defaults.txt

Setelah disimpan, sekarang buat file "MakeOVPN.sh"

Gambar 4. 31 Membuat file OVPN.SH

File "MakeOVPN.sh" disini bisa dieksekusi yang tujuannya mempermudah server


membuat file konfigurasi (.ovpn) yang akan digunakan pada klien nantinya, dengan
hanya memasukkan nama key dari klien, file konfigurasi (.ovpn) akan tergenerate
dengan otomatis.

26
Gambar 4. 32 Isi dalam file MakeOVPN.sh

Berikan izin "MakeOVPN.sh" dengan perintah "chmod 700" dan eksekusi file nya
dengan menggunakan perintah "./MakeOVPN.sh".

Gambar 4. 33 Memberikan izin eksekusi terhadap file MakeOVPN.sh

Setelah dijalankan, akan diminta nama klien yang key nya akan di jadikan
konfigurasi, disini dicontohkan nama klien "Client3".

Gambar 4. 34 Penggunaan file MakeOVPN.sh

Setelah semua selesai, saatnya meng-copy kan file konfigurasi yang telah dibuat
(Client3.ovpn) dengan menggunakan file explorer SSH. Disini menggunakan WinSCP
untuk file explorernya, terlebih dahulu berikan izin akses untuk semua user di folder
openvpn dengan perintah "chmod 777".

27
Gambar 4. 35 Memberikan akses untuk semua user ke folder openVPN

Setelah aplikasi WinSCP dibuka, login seperti di PuTTY dengan memasukkan alamt
IP, username dan passwordnya.

Gambar 4. 36 Tampilan utama WinSCP

Setelah itu, masuk ke "/etc/openvpn/easy-rsa/keys" dan copy file konfigurasi


(.ovpn) yang diinginkan ke dalam folder komputer Windows.

28
Gambar 4. 37 Mengambil file konfigurasi (.ovpn)

Setelah .ovpn letakkan file konfigurasi (.ovpn) ke dalam "C:\Program


Files\OpenVPN\config", lalu jalankan aplikasi OpenVPN untuk Windows, dan pilih
file konfigurasi yang diinginkan lalu klik Connect.

Gambar 4. 38 File konfigurasi yang sudah dimasukkan ke OpenVPN Client

Setelah klik Connect, aplikasi akan meminta password (yang sudah di buat saat
membuat kunci klien), setelah diisi klik OK atau tekan enter.

29
Gambar 4. 39 Masukkan password pada OpenVPN GUI Client

Jika password benar, maka akan langsung dapat IP VPN, dalam hal ini Laptop 1
(server) mendapatkan IP 10.8.0.10.

Gambar 4. 40 Laptop 1 dapat IP VPN 10.8.0.10

Apabila sukses,d apat melakukan tes awal dengan PING ke VPNServer(raspberry).

Gambar 4. 41 Melakukan PING ke OpenVPN Server

30
Gambar 4. 42 Jaringan tun0 sudah up pada OpenVPN Server

Gambar 4. 43 OpenVPN Server(raspberry) melakukan PING VPN ke laptop 1 (server)

4.1.2 Konfigurasi di sisi laptop 1 (Server)

4.1.2.1 Webserver
Konfigurasi WebServer dan FTP Server dilakukan di laptop 1, sebelumnya telah
dilakukan install aplikasi XAMPP terhadap laptop 1. Setelah melakukan
penginstallan di laptop 1, atur IP address laptop 1 sebagai gateway server utama di
simulasi jaringan VPN ini, dengan alamat IP 192.168.200.1.

31
Gambar 4. 44 Konfigurasi alamat IP di laptop 1

Lakukan konfigurasi juga pada wireless access point dengan memberikan IP statis
yaitu 192.168.200.100.

Gambar 4. 45 Konfigurasi IP wireless access point

32
Terakhir, pastikan alamat IP OpenVPN Server(raspberry) sudah mendapatkan IP
192.168.200.200.

Gambar 4. 46 Alamat IP pada raspberry

Lakukan start pada modul Apache, MySQL(optional) dan FileZilla(FTP).

Gambar 4. 47 XAMPP Control Panel

33
Pada file httpd-xampp.conf, lakukan konfigurasi untuk membatasi alamat IP yang
bisa mengakses xampp hanya IP VPN.

Gambar 4. 48 Konfigurasi httpd xampp

Lakukan hal yang sama untuk membatasi alamat IP yang bisa mengakses Web
Server dengan melakukan konfigurasi di file "http.conf"

Gambar 4. 49 Konfigurasi pada file httpd.conf

34
Terakhir, lakukan konfigurasi yang sama pada file ".htaccess" agar membatasi
alamat IP yang bisa mengakses folder htdocs di Web Server.

Gambar 4. 50 Konfigurasi .htaccess

Lakukan pengujian pada komputer server dengan mengakses 127.0.0.1(localhost).

Gambar 4. 51 Web Server sudah berjalan dengan baik

Gambar 4. 52 Web Server-2 sudah berjalan dengan baik

35
4.1.2.2 FTP Server

Untuk membuat FTP Server digunakan FileZilla Server. Setelah FTP Server di
jalankan, langkah berikutnya membuat akun untuk mengakses file yang disediakan
oleh FTP Server.

Gambar 4. 53 Menambahkan akun kedalam FTP Server

Gambar 4. 54 Menentukan folder yang akan di sharing pada FTP Server.

36
Gambar 4. 55 Alamat IP yang bisa mengakses FTP Server hanya IP VPN.

4.2 Pengujian

Pada Proyek Akhir ini pengujian akan dilakukan terhadap RAS VPN dengan
beberapa skenario. Simulasi akan dilakukan melalui jaringan lokal, dengan
arsitektur simulasi seperti yang telah dirancang pada Gambar 3.2.1

4.2.1 Skenario Pengujian

Pada skenario pengujian akan dilakukan terhadap konektivitas remote


access VPN yang berbasis SSL. Adapun skenario-skenario yang akan dilakukan
adalah sebagai berikut:

1. Pengujian Startup VPN (Server ataupun Client).

2. Pengujian Koneksi PING antara server dengan klien.

3. Pengujian akses ke server dimana klien akan mencoba mengakses terhadap


layanan web server ataupun FTP server. Baik saat menggunakan IP VPN
maupun saat tidak menggunakan IP VPN.

4. Pengujian keamanan berupa tes port scanning dan packet sniffing.

37
4.2.2 Pengujian Startup VPN

4.2.2.1 Pengujian Startup VPN Server

Untuk pengujian startup OpenVPN Server dilakukan pada VPN Server yaitu pada
Raspberry Pi, dilakukan dengan perintah "service openvpn start" atau "service
openvpn restart".

Gambar 4. 56 Startup VPN Server

Setelah server menampilkan status OK, saat melakukan perintah "ifconfig" pastikan
disana sudah ada network tun0 yang menandakan bahwa network VPN telah
terbentuk.

Gambar 4. 57 Sesaat sesudah di start dan di lakukan ifconfig, dev tun sudah berjalan

4.2.2.2 Pengujian Startup Klien

Untuk melakukan startup pada klien, jalankan aplikasi OpenVPN Client GUI, pada
konfigurasi yang sudah diletakkan pada folder "config" klik Connect, lalu masukkan
password dan jika berhasil, maka klien akan mendapatkan alamat IP VPN.

38
Gambar 4. 58 network tun sudah berjalan

Gambar 4. 59 Masukkan password untuk terkoneksi ke jaringan VPN

39
Gambar 4. 60 Notifikasi bahwa sukses terkoneksi ke jaringan VPN

4.2.3 Pengujian Koneksi VPN

Pengujian akan dilakukan PING alamat IP VPN dari VPN Server ke Server maupun
sebaliknya.

Gambar 4. 61 Ping dari laptop 1 ke Raspberry sukses

Gambar 4. 62 Ping ke Laptop 1 dari Raspberry sukses

40
4.2.4 Pengujian Akses Server

Pengujian dilakukan dengan skenario pertama mengkases web dan ftp server tanpa
terkoneksi dengan VPN dan skenario kedua mengakses web dan ftp server dengan
terkoneksi VPN.

4.2.4.1 Pengujian Tanpa VPN Server

Seperti pada gambar di bawah, klien yang terkoneksi di jaringan publik mencoba
langsung masuk ke web server, hasilnya ditolak. Sedangkan apabila langsung
mengetikkan alamat web server VPN tanpa tersambung VPN, yang dihasilkan hanya
error.

Gambar 4. 63 Tidak diberikan izin untuk mengakses web server melalui jaringan umum

Gambar 4. 64 Tidak bisa akses web server saat belum terkoneksi ke VPN

41
4.2.4.2 Pengujian Dengan Koneksi VPN

Sedangkan ketika sudah terkoneksi ke VPN, saat browser di refresh, maka akses
untuk membuka web server sudah bisa dilakukan. Hasilnya seperti pada gambar
dibawah.

Gambar 4. 65 Tampilan web server yang bisa diakses melalui IP VPN

4.2.5 Pengujian Scanning Port

Pada pengujian scanning IP range dan scanning port yang dilakukan dengan
amplikasi Nmap, mendapatkan hasil sebagai berikut:

1) Pada scan jaringan umum dengan IP dengan range 192.168.200.1-255


didapatkan hasil beberapa device yang terkoneksi ke dalam jaringan
tersebut, termasuk pada VPN Server yang ada pada Raspberry
(192.168.200.200), namun pada bagian Port, menunjukkan bahwa port VPN
yang telah dibuat (port 1194 UDP) tidak terdeteksi oleh Nmap.

Gambar 4. 66 Hasil scan IP range jaringan umum

42
Gambar 4. 67 Hasil scan port melalui Nmap

2) Sedangkan pada saat scanning IP range VPN 10.8.0.1-20 dengan kondisi


tidak terkoneksi ke VPN, maka didapatkan hasil Nmap tidak mampu
mendeteksi adanya jaringan di IP 10.8.0.1-20.

Gambar 4. 68 Hasil scan IP range VPN tidak bisa diketahui

43
4.2.6 Pengujian Monitoring Data

Pada pengujian monitoring data dilakukan monitoring dari proses transfer FTP yang
dilakukan, baik yang melalui VPN maupun yang tidak melalui RAS VPN. Proses akses
dilakukan klien untuk mengunggah data dari harddisk ke server. Adapun hasil yang
didapatkan adalah sebagai berikut:

1) Monitoring data yang tidak menggunakan RAS VPN SSL akan menampilkan
hasil yang akan ditunjukkan gambar-gambar dibawah ini:

Gambar 4. 69 Melakukan pengunggahan melalui FTP

Gambar 4. 70 username, password dan nama file yang diunggah bisa di sniff oleh Wireshark

Pada gambar di atas diketahui bahwa klien mengakses FTP server tanpa VPN
dengan alamat IP server 192.168.200.1, dan saat aplikasi Wireshark sedang

44
mensniffing paket data ftp yang berlangsung, didapati username dan password
yang melakukan akses terhadap FTP server. Dan juga bisa diketahui pula nama file
yang di unggah ke FTP server tersebut.

2) Pada proses monitoring data melalui remote access VPN SSL, username dan
password tidak diketahui dan tidak bisa di sniffing oleh Wireshark.

Gambar 4. 71 Melakukan unggah melalui VPN

Gambar 4. 72 Hasil sniffing FTP nihil

Dengan kedua gambar diatas dapat diperoleh hasil bahwa dengan menggunakan
RAS VPN SSL terbukti data yang ditransfer akan terlebih dahulu dilakukan enkripsi,
sehingga informasi tentang username, password dan nama file yang diunggah klien
tidak dapat diketahui, sehingga proses transfer data yang melalui VPN SSL menjadi
aman.

45
BAB 5
KESIMPULAN

5.1 Kesimpulan

Pada Proyek Akhir yang dilakukan terdapat beberapa kesimpulan yang dapat
diambil, diantaranya:

1) Konfigurasi Remote Access VPN dengan metode SSL pada Raspberry Pi


dapat dilakukan dengan menggunakan OpenVPN yang telah mendukung
untuk membangun jaringan VPN yang berbasis SSL.

2) Service seperti web server dan FTP server dapat berjalan baik dilingkungan
VPN yang berbasis SSL dan RAS yang berbasis VPN akan melakukan enkripsi
terhadap kunci dan proses transfer data dari server ke client maupun
sebaliknya.

5.2 Saran

1) Untuk pengembangan lebih lanjut, perlu dilakukan analisis lebih detail


terhadap mekanisme pengujian keamanan RAS VPN menggunakan
Raspberry Pi, dan juga perbandingan protokol keamanan yang digunakan
dalam lingkungan VPN, seperti contohnya pengaplikasian pada protokol
keamanan IPSec.

2) Perlu dilakukan penerapan RAS VPN nyata dengan menyewa IP VPN agar
dapat diakses dimanapun oleh klien meskipun klien sedang tidak berada di
dalam satu jaringan.

46
DAFTAR PUSTAKA

[1] Bauer, Michael, 2003, Building Secure Servers With Linux, O’Reilly.

[2] Feilner, Markus, 2009, Beginning OpenVPN 2.0.9: Build and Integrate Virtual
Private Networks Using OpenVPN, PACKT.

[3] Feilner, Markus, 2006, OpenVPN:Building and Integrating Virtual Private


Networks, PACKT.

[4] Negus, Cristoper, 2007, Ubuntu Linux Toolbox, WILEY.

[5] Sander, Van Vugt, 2006, Beginning Ubuntu Server Administration: From
Novice to Professional, Apress.

[6] Scott, Charlie, 1999, Virtual Private Network 2nd Edition, O’Reilly.

[7] Scroder, Carla, 2007, Linux Networking Cookbook, O’Reilly.

[8] Steinberg, Joseph, 2005, SSL VPN: Understanding, Evaluating, and Planning
Secure, Web-Based Remote Access, PACKT.

[9] Tanembaum,A.S., 2003, Computer Networks, Prentice Hall, NewJersey.

[10] Irawan, Budhi., 2005, Jaringan Komputer. Graha Ilmu. Yogyakarta.

[11] _____, Langkah Mudah Administrasi Jaringan Menggunakan Linux Ubuntu 9,


ANDI.

[12] Wallace, Shawn, 2014, Getting Started with Raspberry Pi, O'Reilly.

47

Anda mungkin juga menyukai