IMPLEMENTASI HIGH-AVAILABILITY VPN CLIENT

Download Jurnal Ilmu Komputer - Volume 6 - No 1 – April 2013. ISSN : 1979-5661. -17-. IMPLEMENTASI HIGH-AVAILABILITY VPN CLIENT. PADA JARINGAN KOM...

0 downloads 685 Views 425KB Size
Jurnal Ilmu Komputer - Volume 6 - No 1 – April 2013

IMPLEMENTASI HIGH-AVAILABILITY VPN CLIENT PADA JARINGAN KOMPUTER FAKULTAS HUKUM UNIVERSITAS UDAYANA Putu Topan Pribadi Program Studi Teknik Informatika, Jurusan Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Udayana Email: [email protected] ABSTRAK Ketersediaan data/layanan sangat dibutuhkan, terutama bagi perusahaan-perusahaan yang sangat membutuhkan data-data ataupun layanan yang bersifat sangat penting. Apabila terjadi kerusakan data ataupun layanan, sangat dibutuhkan adanya server cadangan. Sesuai dengan dasar teori dari teknologi High-Availability, yaitu ilmu untuk menciptakan redundansi dalam setiap sistem dan subsistem untuk memastikan bahwa layanan tetap up dan tersedia. Sehingga dapat dianalogikan dalam implementasi, bila satu server gagal melayani service tertentu, maka tugas server tersebut otomatis akan dilempar ke server lainnya. HA akan diimplementasikan pada layanan VPN Client yang bertujuan untuk memastikan koneksi VPN tetap hidup, agar administrator dapat lebih mudah me-monitoring jaringan dari luar. Kata Kunci: Cluster Computing, High-availability, Failover, Heartbeat, VPN, OpenVPN ABSTRACT Availability of data/services are needed, especially for companies who desperately need the data or services that are very important. When the data and services are corrupt, it is necessary to have a backup server. According to the basic theory of High-Availability technology, the science of creating redundancy in each system and subsystem to ensure that services remain up and available. So that it can be analogized to the implementation, if the server fails to serve a particular service, then the task server will automatically be taken over by the other server. HA will be implemented on the VPN Client service that aims to make a VPN connection alive, so that the administrator can be easier to monitoring the network from outside. Keywords: Cluster Computing, High-availability, Failover, Heartbeat, VPN, OpenVPN

ISSN : 1979-5661

-17-

Jurnal Ilmu Komputer - Volume 6 - No 1 – April 2013

PENDAHULUAN

TINJAUAN PUSTAKA

Perkembangan teknologi memberi pengaruh

besar

bagi

segala

TCP/IP

aspek

TCP/IP

adalah

singkatan

dari

kehidupan, begitu banyak manfaat yang

Transmission Control Protocol/Internet

dapat kita implementasikan. Teknologi saat

Protocol. TCP bertugas menerima pesan

ini telah memberikan kemudahan dalam

elektronik dengan panjang sembarang dan

penyampaian

suatu

membaginya

perkembangan

di

infrastruktur

informasi. suatu

harus

Dalam

perusahaan,

sesuai

ke

dalam

bagian-bagian

berukuran 64kb. Dengan membagi pesan

dengan

menjadi bagian-bagian, perangkat lunak

kebutuhan, baik itu di perusahaan besar

yang mengontrol komunikasi jaringan

maupun kecil dan tentu saja sangat berbeda

dapat

dalam hal persyaratan dan infrastruktur,

menyerahkan prosedur pemeriksaan bagian

khususnya infrastruktur jaringan.

demi

mengirim

bagian.

tiap

Apabila

bagian

suatu

dan

bagian

Teknologi backup otomatis dan

mengalami kerusakan selama transmisi,

High Availability Server (HA) merupakan

maka program pengirim hanya perlu

teknologi

dibutuhkan

mengulang transmisi bagian itu dan tidak

dilingkungan perusahaan atau entitas bisnis

perlu mengulang dari awal (Anjik Sukmaaji,

yang menggunakan sistem komputerisasi.

2008: p22).

yang

banyak

Linux sebagai sebuah pilihan terbaik untuk sistem

server

macam

tools

menyediakan powerful

TCP/IP adalah standar komunikasi

berbagai

yang

data yang digunakan oleh komunitas

dapat

internet dalam proses tukar-menukar data

didayagunakan dengan biaya minimal. Seiring

teknologi

dalam jaringan internet. Protokol ini

perusahaan

tidaklah dapat berdiri sendiri, karena

dihadapkan pada berbagai kemungkinan

memang protokol ini berupa kumpulan

terjadinya

gangguan

sistem.

protokol (protocol suite). Protokol ini juga

Gangguan

dapat

berupa

kerusakan

merupakan protokol yang paling banyak

komputer,

storage,

data

corruption,

informasi

penggunaan

dari satu komputer ke komputer lain di

tersebut,

maka

pada

digunakan

saat

ini.

Data

tersebut

jaringan, dan bencana alam. Hal ini akan

diimplementasikan dalam bentuk perangkat

menyebabkan terhambatnya proses bisnis

lunak (Software) di sistem operasi. Istilah

dan kehilangan data yang mengakibatkan

yang diberikan kepada perangkat lunak ini

kerugian pada perusahaan.

adalah TCP/IP stack.

ISSN : 1979-5661

-18-

Jurnal Ilmu Komputer - Volume 6 - No 1 – April 2013

saat hanya setelah mereka menemukan kegagalan pada sistem utama. (Charles

Cluster Computing Cluster, dalam ilmu komputer dan

Bookman, 2002).

jaringan komputer adalah sekumpulan

High-availability cluster, yang juga

komputer

sering disebut sebagai Failover Cluster

(umumnya

server

jaringan)

independen yang beroperasi serta bekerja

pada

secara erat dan terlihat oleh klien jaringan

untuk tujuan meningkatkan ketersediaan

seolah-olah komputer-komputer tersebut

layanan yang disediakan oleh kluster

adalah satu buah unit komputer. Proses

tersebut. Elemen kluster akan bekerja

menghubungkan beberapa komputer agar

dengan memiliki node-node redundan,

dapat bekerja seperti itu dinamakan dengan

yang

Clustering. Komponen cluster biasanya

menyediakan layanan saat salah satu

saling terhubung dengan cepat melalui

elemen kluster mengalami kegagalan.

sebuah interkoneksi yang sangat cepat, atau

Ukuran yang paling umum dari kategori

bisa juga melalui jaringan lokal (LAN).

ini adalah dua node, yang merupakan

Karena menggunakan lebih dari

syarat

umumnya

kemudian

minimum

diimplementasikan

digunakan

untuk

untuk

melakukan

satu buah server, maka manajemen dan

redundansi. Implementasi kluster jenis

perawatan sebuah cluster jauh lebih rumit

ini akan mencoba untuk menggunakan

dibandingkan dengan manajemen server

redundansi komponen kluster untuk

mainframe

menghilangkan kegagalan di satu titik

tunggal

yang

memiliki

skalabilitas tinggi (semacam IBM AS/400),

(Single Point of Failure).

meski lebih murah.

2. Load-balancing Clusters

Cluster Computing terbagi ke dalam

Kluster kategori ini beroperasi dengan

bebrapa kategori, yaitu sebagai berikut:

mendistribusikan

beban

pekerjaan

1. High-availability Clusters

secara merata melalui beberapa node

High-availability adalah ilmu untuk

yang bekerja di belakang (back-end

menciptakan redundansi dalam setiap

node). Umumnya kluster ini akan

sistem dan subsistem untuk memastikan

dikonfigurasikan

bahwa layanan tetap up dan tersedia. HA

dengan

pada dasarnya menempatkan satu atau

balancing

lebih server cadangan dalam modus

elemen dalam sebuah kluster load-

siaga, yang bisa online dalam beberapa

balancing menawarkan layanan penuh,

ISSN : 1979-5661

-19-

sedemikian

rupa

front-end

load-

beberapa redundan.

Karena setiap

Jurnal Ilmu Komputer - Volume 6 - No 1 – April 2013

maka dapat dikatakan bahwa komponen

untuk memastikan bahwa mereka sudah up

kluster

dan merespon. (Charles Bookman, 2002).

tersebut

merupakan

sebuah

kluster aktif/kluster HA aktif, yang bisa menerima

semua

permintaan

Heartbeat

yang

adalah

Linux

High

Availability yang menggunakan teknik

diajukan oleh klien.

cluster, yang bisa digunakan untuk pada beberapa sistem operasi seperti Linux,

3. Compute Clusters Seringnya, penggunaan utama kluster

FreeBSD, OpenBSD, Solaris, MacOS, yang

komputer adalah untuk tujuan komputasi,

mengunggulkan kehandalan, ketersediaan,

daripada

dan serviceability (RAS).

penanganan

operasi

yang

berorientasi I/O seperti layanan Web

Heartbeat perlu dikombinasikan

atau basis data. Contoh, sebuah kluster

dengan resource yang diperlukan untuk

mungkin

membangun

mendukung

simulasi

failover

yang

memiliki

komputasional untuk perubahan cuaca

kemampuan menghentikan dan memulai

atau tabrakan kendaraan.

service yang diinginkan seperti service IP

Desain kluster ini, sering disebut sebagai

address, webserver, mounting blok hard

“Grid”. Beberapa compute cluster yang

disk , dsb. Heartbeat menjalankan script

dihubungkan secara erat yang didesain

inisialisasi untuk menjalankan service lain

sedemikian rupa, umumnya disebut

saat heartbeat dijalankan atau bisa juga

dengan “Supercomputing”. Beberapa

mematikan service lain saat heartbeat

perangkat lunak Middleware seperti MPI

dimatikan. Heartbeat juga melakukan

atau Paraller Virtual Machine (PVM)

perpindahan IP address dari satu server ke

mengizinkan

server yang lain (IP floating).

program

compute

clustering agar dapat dijalankan di

Fungsi

dalam kluster-kluster tersebut.

dari

Heartbeat

adalah

memeriksa layanan dari unit server, jika service tersebut mati maka akan langsung menggantikannya dengan server backup

Heartbeat Heartbeat

adalah

salah

satu

service. Berikut peran dari Heartbeat :

program yang terpisah atau termasuk dalam fungsi

utama

dari

aplikasi

1. Memonitor server online (bekerja atau

cluster.

tidak), bisa menggunakan ethernet, dan

Heartbeat bertujuan untuk terus mem-

juga menggunakan serial port.

polling server dalam konfigurasi cluster

2. Melakukan fail over dimana server master akan dialihkan ke server slave

ISSN : 1979-5661

-20-

Jurnal Ilmu Komputer - Volume 6 - No 1 – April 2013

jika terjadi kegagalan pada server

membuat koneksi point-to-point tunnel

master.

yang

telah

terenkripsi.

OpenVPN

menciptakan VPN sebenarnya, perluasan terenkripsi dari jaringan yang memerlukan

VPN VPN adalah singkatan dari virtual

kepercayaan bersama yang akan didirikan

private network, yaitu sebuah terowongan

antara

server

virtual (virtual tunnel) dari jaringan ke

menggunakan private keys, certificate, atau

jaringan lain yang terenkripsi. VPN server

username/password

dan VPN client harus saling ter-autentikasi.

authentikasi dalam membangun koneksi.

VPN mengkoneksikan dua jaringan seperti

Dimana

kantor-kantor cabang atau remote users

OpenSSL (Carla Schroder, 2008: p266).

untuk

dan

klien.

untuk

enkripsi

OpenVPN

melakukan

menggunakan

tunggal ke kantor. (Carla Schroder, 2008: p265).

Linux VPN adalah sebuah koneksi Virtual

Linux adalah nama yang diberikan

yang bersifat private mengapa disebut

kepada sistem operasi komputer bertipe

virtual karena pada dasarnya jaringan ini

Unix. Linux merupakan salah satu contoh

tidak ada secara fisik hanya berupa jaringan

hasil pengembangan preangkat lunak bebas

virtual dan mengapa disebut private karena

dan

jaringan ini merupakan jaringan yang

perangkat lunak bebas dan sumber terbuka

sifatnya private yang tidak semua orang

lainnya pada umumnya, kode sumber Linux

bisa mengaksesnya. VPN Menghubungkan

dapat

PC dengan jaringan publik atau internet

didistribusikan kembali secara bebas oleh

namun sifatnya private, karena bersifat

siapa saja.

private maka tidak semua orang bisa terkoneksi

ke

jaringan

ini

sumber

terbuka

dimodifikasi,

utama.

Seperti

digunakan

dan

Linux telah lama dikenal untuk

dan

penggunaannya di server, dan didukung

mengaksesnya. Oleh karena itu diperlukan

oleh

perusahaan-perusahaan

komputer

keamanan data.

ternama seperti Intel, Dell, HewlettPackard, IBM, Novell, Oracle Corporation, Red Hat, dan Sun Microsystems. Linux

OpenVPN OpenVPN adalah aplikasi open

digunakan sebagai sistem operasi di

source untuk Virtual Private Networking

berbagai macam jenis perangkat keras

(VPN), dimana aplikasi tersebut dapat

komputer, termasuk komputer desktop,

ISSN : 1979-5661

-21-

Jurnal Ilmu Komputer - Volume 6 - No 1 – April 2013

superkomputer, dan sistem benam seperti pembaca

buku

permainan

elektronik,

video

CentOS singkatan dari Community

sistem

(PlayStation

ENTerprise Operating System (Sistem

2,

Operasi

Perusahaan

buatan

PlayStation 3 dan XBox), telepon genggam

Komunitas/Masyarakat)

adalah

sistem

dan router.

operasi gratis yang dibuat dari source code Red Hat Enterprise Linux (RHEL). Proyek ini berupaya untuk 100% binari kompatibel

Linux Ubuntu Ubuntu

merupakan

salah

satu

dengan produk hulunya (RHEL). Dan tentu

distribusi Linux yang berbasiskan Debian

saja menggunakan paket RPM.

dan didistribusikan sebagai software bebas.

Karena CentOS dikompile dari

Nama Ubuntu berasal dari filosofi dari

SRPM

RHEL

maka

CentOS

100%

Afrika Selatan yang berarti “Kemanusiaan

kompatible dengan RHEL, isi dari CentOS

kepada sesama”. Ubuntu didesain untuk

hampir sama dengan RHEL. Bedanya pada

kepentingan penggunaan personal, namun

CentOS semua atribute RHEL dibuang,

versi server Ubuntu juga tersedia, dan telah

misalnya README.TXT RHEL diganti

dipakai secara luas.

menjadi README.TXT CentOS.

Proyek Ubuntu resmi disponspori oleh Canonical Ltd. yang merupakan

PERANCANGAN DAN KONFIGURASI

sebuah perusahaan yang dimiliki oleh

SISTEM

pengusaha

Afrika

Selatan

Mark

Shuttleworth. Tujuan dari distribusi Linux VPN Client (Active Node) 172.16.122.18

Ubuntu adalah membawa semangat yang terkandung di dalam Filosofi Ubuntu ke dalam dunia perangkat lunak. Ubuntu

VPN Server (GDLN) 222.124.220.234 VPN Client (Passive Node) 172.16.122.16

adalah sistem operasi lengkap berbasis Linux,

tersedia

secara

bebas

Server Fakultas Hukum Universitas Udayana

dan

VPN Server terletak di server

mempunyai dukungan baik yang berasal dari

komunitas

maupun

tenaga

ILKOM yang berada di GDLN UNUD,

ahli

dengan menggunakan distro Linux Ubuntu

profesional.

8.04

(IP

publik:

222.124.220.234).

Sedangkan untuk VPN Client, dibuatkan

Linux CentOS

dua buah server yaitu Primary Server

ISSN : 1979-5661

-22-

Jurnal Ilmu Komputer - Volume 6 - No 1 – April 2013

(Active Node) dengan menggunakan Linux

kedua node tersebut untuk memastikan

CentOS 5.5 (172.16.122.18) dan Secondary

node mana yang up dan merespon. Service

Server

dengan

VPN Client akan berpindah kembali ke

5.8

Active Node jika server sudah berjalan

(Passive

menggunakan

Node)

Linux

CentOS

(172.16.122.16), dimana nantinya Primary

normal.

Server akan menjadi server utama untuk service VPN Client dan Secondary Server

PENGUJIAN DAN ANALISIS

akan aktif jika Primary Server gagal

Untuk

melakukan

pengujian,

menjalankan service VPN Client atau server

pertama-tama stop VPN Client pada kedua

hang/mati.

node lalu jalankan heartbeat pada kedua

Untuk

dapat

mengakses

node. Pada Active Node, cek dengan

keseluruhan server yang berada di Fakultas

perintah ifconfig maka akan muncul

Hukum

interface eth0:0 dengan IP virtual yang

Universitas

administrator

jaringan

Udayana, harus

sudah ditentukan sebelumnya, dan juga

mempunyai koneksi VPN Client. Untuk

secara otomatis akan menjalankan VPN

koneksi

Client terlihat dari interface tun0 yang

VPN

penulis

juga

menggunakan

OpenVPN, karena OpenVPN merupakan

muncul dengan address-nya.

salah satu aplikasi VPN yang opensource.

Setelah itu matikan Active Node,

Untuk High-Availability service, penulis

dalam hal ini dianggap server mengalami

menggunkan

Komunikasi

kegagalan atau crash sehingga tidak dapat

Heartbeat antar server dilakukan melalui

menjalankan service VPN Client. Tunggu

interface Ethernet dengan cara mem-

sampai beberapa waktu sampai Active Node

broadcast ke jaringan IP yang sama.

dinyatakan benar-benar mati. Setelah itu,

Heartbeat.

Primary Server (Active Node) akan menjadi

server

utama

yang

pada Passive Node, cek dengan perintah

akan

ifconfig maka akan terlihat interface eth0:0

menjalankan service VPN Client jika server

dengan IP virtual-nya dan juga terlihat

berjalan normal dan tidak mengalami

interface tun0 dengan address-nya. Ini

kerusakan atau crash. Jika Active Node

menandakan bahwa Passive Node berhasil

mengalami downtime atau mati, maka

menjadi backup dari service VPN, sehingga

service VPN Client akan dipindahkan

service menjadi High-Availability.

secara otomatis oleh Heartbeat ke Passive

Jika Active Node aktif kembali dan

Node. Heartbeat akan terus mem-polling

menjalankan service VPN sebagaimana

ISSN : 1979-5661

-23-

Jurnal Ilmu Komputer - Volume 6 - No 1 – April 2013

Archlinux.org. 2012. Simple IP Failover with Heartbeat [Online] Tersedia: https://wiki.archlinux.org/index.ph p/Simple_IP_Failover_with_Heart beat. Bookman, Charles. 2002. Linux Clustering: Building and Maintaining Linux Clusters: United States of America. New Riders Publishing. Linux-ha.org. 2007. Ha.cf [Online] Tersedia: http://wiki.linuxha.org/ha.cf. Schroder, Carla. 2008. Linux Networking Cookbook: United States of America. O’Really Media, Inc. Smartnetsolution.com. 2011. VPN [Online] Tersedia: http://smartnetsolution.com/tutorial /VPN.pdf. Sukmaaji, Anjik. 2008. Jaringan Komputer: Yogyakarta. Andi. Telkomspeedy.com. 2010. Instalasi OpenVPN [Online] Tersedia: http://opensource.telkomspeedy.co m/wiki/index.php/Instalasi_OpenV PN.

mestinya, maka Passive Node akan kembali seperti semula, mematikan service VPNnya

sendiri

sehingga

tidak

terjadi

redundansi VPN service. Dalam High-availability cluster, hal yang sangat penting adalah penanganan failover. Ketersediaan data/service harus terpenuhi pada saat user menggunakan service tersebut.

KESIMPULAN Kesimpulan yang dapat penulis tarik dari penelitian ini adalah: 1. Dengan

adanya

sistem

High-

Availability VPN Client, layanan VPN tidak akan terganggu yang diakibatkan oleh kerusakan pada Primary Server karena

Secondary

Server

akan

mengambil alih tugas Primary Server dengan baik jika terjadi kegagalan. 2. High-Availability VPN Client sangat cocok diterapkan pada sistem yang sangat memerlukan koneksi VPN yang stabil. 3. Konsep

High-Availability

yang

diimplementasikan pada VPN Client di Fakultas Hukum Universitas Udayana merupakan salah satu solusi yang handal untuk membangun koneksi jaringan VPN. DAFTAR PUSTAKA

ISSN : 1979-5661

-24-