1 PERANCANGAN KEAMANAN DATABASE SERVER MYSQL

advertisement
PERANCANGAN KEAMANAN DATABASE SERVER MYSQL BERBASIS
SISTEM OPERASI OPEN SOURCE PADA PT. PLN P3B
SUMATERA UPT PALEMBANG
Mustafa Fajar Saputra
Jurusan Teknik Informatika
STMIK PalComTech Palembang
Abstrak
Kebutuhan akan keamanan informasi dari data-data yang terdapat pada database sangat
diperlukan bagi perusahaan terutama pada PT PLN P3B Sumatera UPT Palembang.
Penggunaaan database server MySQL pada PT PLN P3B Sumatera UPT Palembang,
yang masih berada pada satu mesin dengan web server memungkinkan seluruh client
bisa langsung mengakses ke mesin. Hal ini dapat membuka celah keamanan terhadap
database server MySQL, karena telah diperolehnya secara mudah untuk bisa akses
langsung ke mesin. Untuk alasan ini, usulan yang terbaik adalah memiliki web server dan
database server pada mesin yang berbeda, serta melengkapi beberapa mekanisme
pengamanan terhadap database server MySQL, antara lain dengan mekanisme packet
filtering menggunakan IPTables, enkripsi transmisi data menggunakan SSL dan
mekanisme user access limitation. Dengan dilakukannya pengoptimalan keamanan
terhadap database server MySQL, maka akan meningkatkan keamanan informasi dari
data-data yang terdapat pada database MySQL serta akan terhindar dari resiko terhadap
pengaksesan oleh pihak yang tidak berwenang yang bisa merugikan perusahaan.
Kata Kunci : MySQL, Keamanan Database Server, SSL, Packet Filtering
PENDAHULUAN
Kemajuan teknologi informasi yang pesat serta potensi pemanfaatannya secara luas,
haruslah dilengkapi dengan sistem keamanan yang memadai. Umumnya sistem keamanan
lebih banyak terfokus pada antivirus dan keamanan jaringan, namun kurang memperhatikan
kerawanan dan ancaman yang berbahaya pada database server. Database server dirancang
sebagai media penyimpanan data-data yang mempuyai sifat rahasia dan hanya diperuntukkan
kepada pihak-pihak internal organisasi. Oleh karena itu diperlukan sebuah mekanisme untuk
melakukan pengamanan terhadap database server.
Penggunaaan database server MySQL pada PT PLN P3B Sumatera UPT Palembang,
yang masih berada pada satu mesin dengan web server memungkinkan seluruh client bisa
langsung mengakses ke mesin. Hal ini dapat membuka celah keamanan terhadap database
server MySQL, karena telah diperolehnya secara mudah untuk bisa akses langsung ke mesin.
Untuk alasan ini, yang terbaik adalah memiliki web server dan database server pada mesin
yang berbeda, serta mengoptimalkan keamanan database server MySQL dengan
menggunakan mekanisme packet filtering antara network dan database server, hal tersebut
dilakukan untuk membatasi server dengan IP address mana saja yang dapat melakukan
koneksi terhadap database server. Lalu menggunakan mekanisme enkripsi transmisi data
pada koneksi antara web server dan database server, hal tersebut dilakukan dengan
menggunakan Secure Socket Layer antara web server dan database server. Kemudian
menggunakan mekanisme user access limitation, yaitu dengan melakukan pembatasan hak
akses dari user MySQL.
Dalam penelitian ini masalah yang dibahas adalah bagaimana merancang keamanan
database server MySQL berbasis sistem operasi open source pada PT PLN P3B Sumatera
1
UPT Palembang. Tujuan dari penelitian ini adalah membuat langkah-langkah pengamanan
database server MySQL di PT PLN P3B Sumatera UPT Palembang, guna menjaga keamanan
informasi dari database terhadap resiko penyalahgunaan informasi oleh pihak yang tidak
berwenang.
LANDASAN TEORI
Linux
Menurut Handaya dkk (2010:2), nama Linux sendiri diturunkan dari pencipta awalnya,
Linus Torvalds, dari Universitas Helsinki, Finlandia yang sebetulnya mengacu pada kernel
dari suatu sistem operasi, suatu penamaan yang bisa digunakan untuk mengacu kepada suatu
kumpulan lengkap perangkat lunak yang bersama-sama dengan kenel menyusun suatu sistem
operasi yang lengkap.
Database Server
Menurut Saputra (2011:3), database server merupakan mesin yang berisi database,
termasuk tabel, procedure, dan trigger yang menangani manajemen data, keamanan, dan
penanganan kesalahan. Database server bertugas melayani permintaan query database dari
client.
MySQL
Menurut Saputra (2011:5), MySQL merupakan standar penggunan database di dunia
untuk pengolahan data. MySQL adalah sebuah server database open source yang bekerja
menggunakan SQL Language (Structure Query Language) umumnya digunakan bersama
PHP untuk membuat aplikasi server yang dinamis dan powerful.
Beberapa fitur yang dimiliki oleh MySQL antara lain :
1. MySQL termasuk RDBMS (Relationship Database Management System) yaitu jenis
DBMS (Database Management System) yang mendukung adanya relationship atau
hubungan antar tabel.
2. MySQL memiliki arsitektur client-server dimana server database MySQL terinstal di server
dan client MySQL dapat berada di komputer yang sama dengan server atau dapat juga di
komputer lain yang berkomunikasi dengan server melalui jaringan bahkan internet.
3. MySQL mendukung SQL standar.
4. MySQL mendukung sub select, views, store procedure, trigger, replication, transaksi, dan
foreign key.
5. MySQL tersedia fungsi GIS.
6. MySQL bersifat free (bebas didownload) dan open source.
7. MySQL stabil, tangguh dan juga bersifat fleksibel dengan berbagai pemrograman.
8. Arsitektur yang sangat baik dengan pilihan berbagai storage engine, seperti MyISAM,
InnoDB, MEMORY, BLACKHOLE, ARCHIVE dan lain-lain.
9. MySQL memiliki security yang baik dan mendapat dukungan dari banyak komunitas.
Packet Filtering
Kebijakan dalam mengevaluasi informasi dalam setiap aliran paket data dapat
diterapkan pada operasi packet filtering. Seperti yang dikemukakan oleh Wahana Komputer
(2005:314), bahwa packet filtering merupakan mekanisme pengotrolan data yang
diperbolehkan mengalir dari jaringan external ke jaringan internal atau sebaliknya dengan
mengunakan beberapa parameter seperti alamat asal dan tujuan, port asal dan tujuan, serta
protokol transport. Salah satu tool dalam sistem operasi Linux yang berfungsi sebagai packet
filtering antara lain adalah IPTables.
2
IPTables
Salah satu aplikasi firewall yang digunakan pada sisitem operasi Linux adalah
IPTables. Seperti yang dikemukakan oleh Handaya dkk (2010:331), bahwa IPTables
merupakan suatu aplikasi dalam sistem operasi Linux yang berfungsi sebagai alat untuk
melakukan filter terhadap lalu lintas data untuk mengamankan suatu jaringan.
Firewall IPTables packet filtering memiliki tiga aturan (policy), yaitu:
a. Input
Mengatur paket data yang memasuki firewall dari arah intranet maupun internet. Kita bisa
mengelola komputer mana saja yang bisa mengakses firewall dan yang lain tidak boleh.
b. Output
Mengatur paket data yang keluar dari firewall ke arah intranet maupun internet. Biasanya
output tidak diset, karena bisa membatasi kemampuan firewall itu sendiri.
c. Forward
Mengatur paket data yang melintasi firewall dari arah internet ke intranet maupun
sebaliknya. Policy forward paling banyak dipakai saat ini untuk mengatur koneksi internet
berdasarkan port, mac address dan alamat IP.
Selain aturan (policy), firewall IPTables juga mempunyai parameter yang disebut dengan
target, yaitu status yang menentukkan koneksi di IPTables diizinkan lewat atau tidak. Target
ada tiga macam yaitu:
a. Accept
Akses diterima dan diizinkan melewati firewall.
b. Reject
Akses ditolak, koneksi dari komputer klien yang melewati firewall langsung terputus,
biasanya terdapat pesan Connection Refused. Reject target tidak menghabiskan bandwidth
internet karena akses langsung ditolak, hal ini berbeda dengan drop.
c. Drop
Akses diterima, tetapi paket data langsung dibuang oleh kernel, sehingga pengguna tidak
mengetahui kalau koneksinya dibatasi oleh firewall, pengguna melihat seakan-akan server
yang dihubungi mengalami permasalahan teknis. Pada koneksi internet yang sibuk dengan
trafik tinggi drop target sebaiknya jangan digunakan.
Enkripsi
Salah satu teknik keamanan data yang tidak kalah penting adalah enkripsi. Seperti
yang dikemukakan oleh Wahana Komputer (2005:329), bahwa enkripsi merupkan sebuah
sistem yang menciptakan dimana data-data yang dikirim menjadi bentuk yang tersandi.
SSL
Menurut Wahana Komputer (2005:333), SSL atau Secured Socket Layer adalah
metode enkripsi yang dikembangkan oleh Netscape untuk memberikan keamanan di internet
yang medukung beberapa protokol enkripsi dan memberikan autentikasi client dan server.
SSL beroperasi pada transport layer dan menciptakan saluran enkripsi yang aman untuk data
serta dapat mengenkripsi banyak tipe data, sehingga data rahasia atau penting bisa terkirim
tanpa khawatir ada usaha perubahan ditengah jalan.
SSL mendukung kriptografi public key, sehingga server dapat melakukan autentikasi
dengan metode yang sudah dikenal umum seperti RSA dan DSS (Digital Signature
Standard). Selain itu SSL dapat melakukan verifikasi integritas sesi yang sedang berjalan
dengan menggunakan algoritma digest seperti MD5 dan SHA. Hal ini menghindarkan
pembajakan suatu sesi.
3
Komponen–komponen yang ada pada implementasi Secure Socket Layer antara lain :
a. CA (Certificate Authority)
CA adalah sebuah entitas pada PKI (Public Key Infrastructure) yang berfungsi untuk
melakukan legalisasi terhadap sertifikat SSL yang akan digunakan pada suatu organisasi.
b. CSR (Certificate Signing Request)
CSR adalah sebuah permintaan dengan format PKCS10 yang merupakan sebuah salinan
dari certificate yang belum disahkan. Informasi yang terdapat pada sebuah CSR yaitu :
1. Informasi organisasi seperti nama organisasi, negara, propinsi, kota dan lain
sebagainya.
2. Public key dari entitas yang akan menggunakan certificate tersebut seperti web server,
email server, VPN dan lain sebagainya.
HASIL DAN PEMBAHASAN
1. HASIL
a. Analysis
Dari hasil analisa penulis yang dilakukan dalam penelitian, didapatkan bahwa belum
dioptimalkannya keamanan database server MySQL. Dimana database server MySQL masih
berada pada satu mesin dengan web server, memungkinkan seluruh client bisa langsung
mengakses ke mesin. Hal tersebut dapat membuka celah keamanan terhadap database server
MySQL, karena bisa diperolehnya secara mudah untuk akses langsung ke mesin. Berikut ini
gambaran topologi jaringan yang ada pada PT PLN P3B Sumatera UPT Palembang.
Gambar 1. Topologi Jaringan PT PLN P3B Sumatera UPT Palembang
4
b. Design
Untuk mengoptimalkan keamanan pada database server penulis mengusulkan agar
dilakukan pemisahan web server dengan database server sehingga database server berada
pada satu mesin tersendiri, serta melengkapi beberapa mekanisme pengamanan terhadap
database server MySQL, antara lain dengan menggunakan mekanisme packet filtering antara
network dan database server, hal tersebut dilakukan untuk membatasi server dengan IP
address mana saja yang dapat melakukan koneksi terhadap database server. Lalu
menggunakan mekanisme enkripsi transmisi data pada koneksi antara web server dan
database server, hal tersebut dilakukan dengan menggunakan Secure Socket Layer antara web
server dan database server. Kemudian menggunakan mekanisme user access limitation, yaitu
dengan melakukan pembatasan hak akses dari user MySQL. Sehingga arsitektur keamanan
koneksi database akan terihat seperti gambar di bawah ini.
Gambar 2. Arsitektur Keamanan Koneksi Database
Berikut ini adalah gambar topologi jaringan yang diusulkan. Penulis hanya
menambahkan sebuah komputer server untuk database server MySQL, sehingga topologi
jaringannya terlihat seperti pada gambar dibawah ini.
Gambar 3. Topologi Jaringan yang Diusulkan
5
2. PEMBAHASAN
Pada komputer sever yang akan digunakan sebagai database server, OS yang penulis
gunakan adalah Linux Ubuntu 11.04 LTS. Setelah selesai dilakukan instalasi OS Linux
Ubuntu 11.04 LTS, dilanjutkan dengan dilakukan pengkonfigurasian IP Address, MySQL,
SSL, dan IPTables.
a. Konfigurasi IP Address
Langkah awal yaitu dilakukan pendeteksian ethernet card dengan perintah ifconfig –a..
Lalu dilanjutkan dengan pengisian konfigurasi IP pada file /etc/network/interfaces. Lalu
setelah hasil konfigurasi IP disimpan, kemudian dilakukan restart ethernet agar konfigurasi
menjadi permanen dengan perintah /etc/init.d/networking restart.
b. Konfigurasi MySQL
1) Terlebih dahulu yaitu dengan melakukan instalasi database MySQL dengan menjalankan
perintah apt-get install mysql-server mysql-common.
2) Setelah terinstal kemudian dilanjutkan dengan dilakukan penghapusan akses user anonim
terhadap MySQL server. Lalu perlu dilakukan pengubahan terhadap nama user database
administrator yaitu root MySQL, sehingga menjadi nama user yang tidak mudah ditebak
oleh pengguna, serta dilakukan juga perubahan terhadap password database administrator
tersebut. Lalu dilakukan juga penghapusan tehadap database test.
mysql> delete from db where user='';
Query OK, 2 rows affected (0.07 sec)
mysql> delete from user where user='';
Query OK, 2 rows affected (0.00 sec)
mysql>
mysql> update user set user='uptplm' where user='root';
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3 Changed: 3 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.08 sec)
mysql>
mysql> update user set password=PASSWORD('PLNp3bsUPTplg') where
user='uptplm';
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3 Changed: 3 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql>
mysql> drop database test;
Query OK, 0 rows affected (0.39 sec)
mysql> quit;
Bye
Gambar 4. Konfigurasi Keaman pada Database MySQL
c. Konfigurasi SLL
1) Pastikan OpenSSL telah terinstall dengan mengtik perintah dpkg -l | grep openssl. Jika
sudah terinstall lalu aktifkan servis SSL support .
2) Pindah kedalam direktori /etc/mysql/ untuk membuat dan menyimpan SSL certificate,
kemudian buat Certificate of Authority. Lalu Buat Certificate Signing Request untuk Server
Certificate. Lakukan pengesahan CSR (Certificate Signing Request) dengan menggunakan
6
3)
4)
5)
6)
CA (Certificate of Authority) agar certificate tersebut dapat digunakan sebagai alat
autentikasi.
Aktifkan ssl-ca, ssl-cert, dan ssl-key dengan pada file /etc/mysql/my.cnf.
Buat sertifikasi SSL untuk aplikasi client yaitu dengan membuat Certificate Signing
Request. Lalu Lakukan pengesahan CSR client dengan mengunakan Certificate of
Authority. Lalu kopikan file sertifikat SSL yang dibuat untuk client, yaitu ca-cert.pem,
client-cert.pem, dan client-key.pem, ke komputer yang terinstall web server.
Buat database yang akan digunakan oleh aplikasi dan buat user MySQL yang memiliki
akses terbatas pada database tersebut yang dikhususkan mengunakan SSL untuk bisa
mengakses database tersebut.
lakukan tes koneksi ke MySQL server menggunakan user SSL, lalu lihat enkripsi SSL yang
digunakan.
root@dbserver:/etc/mysql# mysql --ssl-ca=ca-cert.pem -h 10.43.80.11
-u scada -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.1.63-0ubuntu0.11.04.1 (Ubuntu)
Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input
statement.
mysql>
Gambar 5. Melakukan Koneksi ke MySQL Menggunakan SSL
mysql> use korporat;
Database changed
mysql>\s
-------------mysql Ver 14.14 Distrib 5.1.63, for debian-linux-gnu (i686) using readline 6.2
Connection id:
Current database:
Current user:
SSL:
Current pager:
Using outfile:
Using delimiter:
Server version:
Protocol version:
Connection:
Server characterset:
Db
characterset:
Client characterset:
Conn. characterset:
TCP port:
Uptime:
5
korporat
[email protected]
Cipher in use is DHE-RSA-AES256-SHA
stdout
''
;
5.1.63-0ubuntu0.11.04.1 (Ubuntu)
10
10.43.80.11 via TCP/IP
latin1
latin1
latin1
latin1
3306
17 min 21 sec
Threads: 1 Questions: 115 Slow queries: 0
tables: 23 Queries per second avg: 0.110
--------------
Opens: 99
Flush tables: 1
Open
mysql>
Gambar 6. Melihat Enkripsi SSL yang Digunakan
d. Konfigurasi IPTables
Konfigurasi firewall IPTables dibuat bertujuan untuk memberikan izin koneksi hanya
kepada komputer web server (10.43.80.12) dengan komputer database server (10.43.80.11),
7
sedangkan komputer-komputer lain tidak diizinkan untuk melakukan koneksi ke database
server. Berikut langkah-langkah yang dilakukan.
1) Lakukan pengecekan apakah IPTables telah terinstal dengan menjalankan perintah dpkg -l
| grep iptables.
2) Jika telah terinstal, maka buka file /etc/rc.local, lalu isikan pada file tersebut dengan
konfigurasi IPTables seperti berikut.
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
iptables -A INPUT -p tcp -i eth0 -s 10.43.80.12 --sport 1024:65535 --dport 3306
-m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp -o eth0 --sport 3306 -d 10.43.80.12 --dport 1024:65535
-m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp -i eth0 -s 10.43.80.11 --sport 1024:65535 --dport 3306
-m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp -o eth0 --sport 3306 -d 10.43.80.11 --dport 1024:65535
-m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp -i eth0 -s 10.43.80.0/24 --sport 1024:65535 --dport
3306 -m state --state NEW,ESTABLISHED -j REJECT
iptables -A OUTPUT -p tcp -o eth0 --sport 3306 -d 10.43.80.0/24 --dport
1024:65535 -m state --state ESTABLISHED -j REJECT
iptables -A INPUT -p icmp -i eth0 -s 10.43.80.12 -j ACCEPT
iptables -A INPUT -p icmp -i eth0 -s 10.43.80.0/24 -j DROP
exit 0
Gambar 7. Mengisi File rc.local Dengan konfigurasi IPTables.
Lalu simpan perubahan pada file tersebut, kemudian lakukan restart komputer dengan
menjalankan perintah reboot.
3) Setelah itu, lakukan pengecekan status firewall dengan menjalankan perintah iptables -L –n
–v, output seperti dibawah ini menunjukkan bahwa firewall dalam kondisi aktif.
8
root@dbserver:~# iptables -L -n -v
Chain INPUT (policy ACCEPT 10 packets, 1773 bytes)
pkts bytes target
prot opt in
out
source
destination
0
0 ACCEPT
tcp -- eth0
*
10.43.80.12
0.0.0.0/0
tcp spts:1024:65535 dpt:3306 state NEW,ESTABLISHED
0
0 ACCEPT
tcp -- eth0
*
10.43.80.11
0.0.0.0/0
tcp spts:1024:65535 dpt:3306 state NEW,ESTABLISHED
0
0 REJECT
tcp -- eth0
*
10.43.80.0/24
0.0.0.0/0
tcp spts:1024:65535 dpt:3306 state NEW,ESTABLISHED reject-with icmp-portunreachable
0
0 ACCEPT
icmp -- eth0
*
10.43.80.12
0.0.0.0/0
0
0 DROP
icmp -- eth0
*
10.43.80.0/24
0.0.0.0/0
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target
prot opt in
out
source
destination
Chain OUTPUT (policy ACCEPT 11 packets, 1813 bytes)
pkts bytes target
prot opt in
out
source
destination
0
0 ACCEPT
tcp -- *
eth0
0.0.0.0/0
10.43.80.12
tcp spt:3306 dpts:1024:65535 state ESTABLISHED
0
0 ACCEPT
tcp -- *
eth0
0.0.0.0/0
10.43.80.11
tcp spt:3306 dpts:1024:65535 state ESTABLISHED
0
0 REJECT
tcp -- *
eth0
0.0.0.0/0
10.43.80.0/24
tcp spt:3306 dpts:1024:65535 state ESTABLISHED reject-with
icmp-port-unreachable
root@dbserver:~#
Gambar 8. Firewall Dalam Kondisi Aktif
4) Lalu simpan (back up) firewall rules dengan perintah iptables-save, agar kita dapat
mengembalikan (restore) konfigurasi firewall tanpa harus merestart komputer.
root@dbserver:~# iptables-save > /home/firewall.rules
root@dbserver:~#
Gambar 9. Melakukan Back Up Terhadap IPTables
e. Pengujian Hasil Konfigurasi
1) Dilakukan uji koneksi dengan melakukan ping dari beberapa client terhadap database
server (10.43.80.11), berikut ini hasil yang didapatkan.
Gambar 10. Ping Dari Client 10.43.80.1/24
9
Gambar 11. Ping Dari Client 10.43.80.23/24
Gambar 12. Ping Dari Komputer 10.43.80.12/24
Dari hasil diatas terlihat bahwa hanya komputer dengan IP Address 10.43.80.12 yang
bisa melakukan koneksi ke komputer database server, sedangkan akses dari komputer lain
tidak bisa.
2) Uji keamanan transmisi data antara web server dengan database server dilakukan dengan
penginputan user, password dan database pada halaman web Untuk menangkap data yang
10
ditransmisikan dipergunakan aplikasi Wireshark. Lalu dibuat perbandingan antar transmisi
data mengunakan SSL dan transmisi data tanpa SSL berikut hasil yang didapat.
Gambar 13. Menjalankan Wireshark
Gambar 14. Menginputkan Data Dengan Mengunakan Koneksi Tanpa SSL
11
Gambar 15. Data yang Tertangkap Wireshark Saat Ditransminsikan Tanpa
Mengunakan SSL
Pada hasil diatas yang tertangkap adalah user dan database, karena password pada
saat pembuatan di database MySQL menggunakan enkripsi, maka data password yang didapat
dalam keadaan teracak. Selanjutnya akan berbeda jika mempergunkan koneksi transmisi
dengan SSL, hasil yang didapat seperti berikut.
Gambar 16. Menginputkan Data Dengan Mengunakan Koneksi SSL
12
Gambar 17. Data yang Tertangkap Wireshark Dalam Keadaan Terenkripsi
Setelah dilakukan uji keamanan transmisi data diatas, terlihat bahwa dengan
menggunakan SSL, berarti kita menggunakan jalur transmisi data yang terenkripsi, artinya
seluruh data tidak akan dapat terbaca apabila tertangkap saat ditransmisikan, kecuali jika telah
sampai pada komputer tujuan yang berhak, karena komputer tersebut memiliki kunci untuk
mendekripsikan data yang terenkripsi tersebut. Hal ini menjadikan keamanan transmisi data
menjadi optimal.
PENUTUP
Berdasarkan hasil penelitian yang telah dilakukan, penulis dapat menarik kesimpulan
bahwa dengan melakukan pemisahan database server MySQL dengan web server, dapat
mengurangi beban kerja dari mesin server, sehingga kinerja mesin menjadi lebih optimal,
karena database server MySQL berada pada satu mesin tersendiri, akan membuat mesin
server berfokus hanya pada fungsinya sendiri.
Dengan dilakukan pemisahan, dan dibuatnya mekanisme packet filtering, dimana
hanya komputer web server yang bisa mengakses database server MySQL, sedangkan client
yang lain tidak diizinkan terkoneksi langsung ke database MySQL, dan dilakukan juga
pembatasan hak akses user MySQL, akan menyulitkan penggunaan database MySQL oleh
orang yang tidak berhak.
Penggunaan SSL dalam transmisi data akan membuat seluruh data yang dikirim
menjadi terenkripsi, sehingga bila data tersebut sampai kepada client yang tidak berhak, maka
data tidak dapat terbaca oleh client tersebut.
DAFTAR PUSTAKA
Elcom. 2012. Computer Networking. Yogyakarta: CV Andi Offset.
Handaya, Wilfridus Bambang Triadi dkk. 2010. Linux Sistem Administrator. Bandung:
Infotmatika.
Koswara, Eko. 2012. Jurus Kilat Mahir Ubuntu. Bekasi: Dunia Komputer.
Kusnadi dkk. 2008. Sistem Operasi. Yogyakarta: CV Andi Offset.
13
Kustanto dan Daniel T. Saputro. 2008. Membangun Server Internet dengan Mikrotik OS.
Yogyakarta: Gava Media.
Saputra, Agus. 2011. Panduan Praktis Menguasai Database Server MySQL. Jakarta: PT
Elex
Media Komputindo.
Sugeng, Winarno. 2010. Jaringan Komputer dengan TCP/IP. Bandung: Modula.
Sukmaaji, Anjik dan Rianto. 2008. Jaringan Komputer: Konsep Dasar Pengembangan
Jaringan dan Keamanan Jaringan. Yogyakarta: CV Andi Offset.
Wahana Komputer. 2005. Panduan Lengkap Pengembangan Jaringan Linux. Yogyakarta:
CV Andi Offset.
Yugianto, Gin-Gin dan Oscar Rachman. 2012. Router: Teknologi, Konsep, Konfigurasi, dan
Troubleshooting. Bandung: Informatika.
Stiawan, Deris. 2009. Fundamental Internetworking Development and Design Life Cycle,
(online), (http://deris.unsri.ac.id/materi/jarkom/network_development_ cycles.pdf,
diakses tanggal 5 November 2012).
14
Download