II-1 BAB II TINJAUAN PUSTAKA 2.1 Penelitian Terdahulu

advertisement
BAB II
TINJAUAN PUSTAKA
2.1 Penelitian Terdahulu
1.
Shofi Nur Fathiya : 2011 (Pembuatan Java API untuk Dynamic
Graph Software watermarking dengan enumerasi parent pointer
graph)
Dalam penelitian ini mengemukakan bahwa suatu software
harus
mempunyai
data
kepemilikan
di
dalamnya
agar
seseorang tidak dapat merubah isi serta menyebarkannya.
Solusi yang terbaik adalah dengan menggunakan metode
watermarking yang diimplementasikan dalam bentuk API. API
ini mengaplikasikan metode Dynamic Graph Watermarking
(DGW). Dan menggunakan teknik enumerasi graf Parent
Pointer Graph karena teknik ini lebih sederhana dari teknik
enumerasi lainnya.
2.
Aghus Sofwan : 2010 (Perancangan Permainan Cannon 3D
pada Sistem Operasi Linux menggunakan API OPENGL dan
LAZARRUS 0.9.22)
Dalam penelitian ini mengemukakan bahwa untuk membuat
sebuah permainan berbasis 3D di Linux dibutuhkan API
(Application Programming Interface) yang dapat menjembatani
antara aplikasi dan kartu grafis. Pembuatan Permainan Cannon
3D dengan sistem deteksi tubrukan pada sistem operasi Linux
II-1
II - 2
ini menggunakan API grafis OpenGL dengan Lazarus. Sistem
deteksi tubrukan yang dibangun berhasil mendeteksi tubrukan
yang terjadi dengan baik. Pada saat mendeteksi tubrukan
walaupun sistem berjalan lambat tetap dapat mendeteksi
tubrukan dengan baik.
3.
Eka Budi Mahardhika Putra : 2009 (Implementasi Manajemen
Interface untuk Konfigurasi Server Di Linux secara Remote)
Dalam penelitian ini mengemukakan bahwa untuk manajemen
interface untuk konfigurasi server menggunakan metode API
untuk
berinteraksi, antara program di sisi klien dengan low
level service yang disediakan oleh Operating System di sisi
server. Data yang dikirim ke server akan dienkripsi oleh server
API yang akan meneruskan request yang diminta oleh klien
keproses yang sesuai di low level sistem server. System ini
dengan menggunakan metode API yang dibangun sangat
membantu dalam proses pengiriman data ke server.
2.2 Landasan Teori
2.2.1 Server
Iwan Sofana (2008 : 42) Server adalah pemilik
informasi yang menyediakan dirinya untuk memberikan
service atau layanan. Server juga berarti sebuah komputer
yang bertugas untuk menyimpan file yang harus selalu
II - 3
terhubung dengan internet agar file dapat dilihat/digunakan
oleh orang yang sedang terhubung ke internet.
Server
adalah
sebuah
sistem
komputer
yang
menyediakan jenis layanan tertentu dalam sebuah jaringan
komputer. Server didukung dengan prosesor yang bersifat
scalable dan RAM yang besar, juga dilengkapi dengan sistem
operasi khusus, yang disebut sebagai sistem operasi jaringan
atau network operating system. Server juga menjalankan
perangkat lunak administratif yang mengontrol akses terhadap
jaringan dan sumber daya yang terdapat di dalamnya, seperti
halnya berkas atau alat pencetak (printer), dan memberikan
akses kepada workstation anggota jaringan. (Melwin Syafrizal,
2010 : 125)
Melwin Syafrizal (2010 : 126) menyimpulkan “Server
adalah sebuah sistem komputer yang menyediakan jenis
layanan tertentu dalam sebuah jaringan komputer (Sumber
daya) yang dapat diakses oleh client”. Server didukung
dengan prosesor yang bersifat scalable dan RAM yang besar,
juga dilengkapi dengan sistem operasi khusus, yang disebut
sebagai sistem operasi jaringan atau network operating
system.
Server
juga
menjalankan
perangkat
lunak
administratif yang mengontrol akses terhadap jaringan dan
sumber daya yang terdapat di dalamnya, seperti halnya
II - 4
berkas atau alat pencetak (printer), dan memberikan akses
kepada workstation anggota jaringan.
Fungsi server sangat banyak, misalnya untuk situs
internet, ilmu pengetahuan, atau sekedar penyimpanan data.
Namun yang paling umum adalah untuk mengkoneksikan
komputer client ke Internet.
Umumnya, sistem operasi server terdapat aplikasiaplikasi yang menggunakan arsitektur klien/server. Contoh
dari aplikasi ini adalah DHCP Server, Mail Server, HTTP
Server, FTP Server, DNS Server dan lain sebagainya. Setiap
sistem operasi server umumnya membundel layanan-layanan
tersebut atau layanan tersebut juga dapat diperoleh dari pihak
ketiga. Setiap layanan tersebut akan merespons terhadap
request dari klien. Sebagai contoh, klien DHCP akan
memberikan request kepada server yang menjalankan server
DHCP; ketika sebuah klien membutuhkan alamat IP, klien
akan memberikan perintah/request kepada server, dengan
bahasa yang dipahami oleh server DHCP, yakni protokol
DHCP itu sendiri.
Komputer server berfungsi sebagai sentral dari
komputer-komputer
lainnya.
Komputer
server
mengatur
manajemen komputer klien, penyimpanan data utama, dan
pengatur komputer-komputer yang terhubung ke jaringan.
II - 5
Dengan komputer server, manajemen komputer klien menjadi
sangat mudah. Kita dapat mengeset hak akses ke suatu
sumber daya serta pengontrolan lainnya seperti kontrol akses
internet, file, printer, dan lain-lain. Komputer server juga
menangani request data dari klien/workstation. Komputer
server harus mempunyai memori RAM yang besar, prosesor
kecepatan tinggi, dan tidak boleh sering dimatikan mendadak.
Beberapa komputer server yang terkenal ialah IBM e-series
dan HP.
2.2.2 Remote Server
Thomas Murcko menyatakan Komputer yang tidak
terkait pada keyboard pengguna, tetapi dimana ia memiliki
beberapa tingkat pengendalian, apakah itu di ruangan yang
sama, bagian lain dari bangunan, atau bagian lain dari dunia.
Juga disebut Komputer remote atau remote host.
Remote
server
adalah
mengendalikan
atau
mendapatkan hak akses ke komputer server dalam jaringan
komputer.
Remote
server
ini
memungkinkan
seorang
pengguna dapat mengoperasikan server dari jarak jauh tanpa
harus secara fisik berhadapan dengan komputer server.
Seorang
pengguna
dapat
melakukan
pemeliharaan,
maintenance, atau dapat menjalankan sebuah program.
II - 6
a. Remote SSH (Secure Shell)
Secure Shell (SSH) adalah suatu protokol yang
memfasilitasi sistem komunikasi yang aman diantara dua
sistem yang menggunakan arsitektur client/server serta
kemungkinan seorang user untuk login ke server secara
remote. (Winarto.I , 2010:107)
Berbeda
dengan
telnet
dan
FTP
yang
menggunakan plain text, SSH meng-enkripsi data selama
proses komunikasi sehingga menyulitkan intruder yang
mencoba mendapatkan password yang tidak dienkripsi.
Fungsi utama aplikasi ini adalah untuk mengakses mesin
secara remote. Bentuk akses remote yang biasa diperoleh
akses pada mode teks maupun mode grafis/X apabila
konfigurasinya mengijinkan.
SSH dirancang untuk menggantikan serviceservice di sistem Unix/Linux yang menggunakan sistem
plain text (seperti Telnet, FTP, Flogin, RSH, RCP, dll).
Untuk menggantikan RCP (remote copy) dapat digunakan
SCP (secure copy).
Implementasi penggunaan SSH, maka semua
percakapan antara server dan client di-enkripsi. Apabila
percakapan tersebut disadap, penyadap tidak mungkin
memahami isinya. Bayangkan seandainya anda sedang
melakukan maintenance
server dari jauh, tentunya
II - 7
dengan account yang punya hak khusus, tanpa setahu
anda, account dan password tersebut disadap orang lain.
Kemudian server dirusak setelahnya.
Implementasi SSH yang banyak dipakai saat ini
adalah OpenSSH, aplikasi ini telah dimasukkan kedalam
berbagai macam distribusi Linux, Redhat Linux versi 9
sudah menyediakan program tersebut dalam format
RedHat Package Manager (RPM).
Protokol SSH menyediakan layanan sbb :

Pada saat awal terjadinya koneksi, client melakukan
pengecekan apakah host yang dihubungi sudah
terdaftar pada client atau tidak.

Client mengirimkan proses autentifikasi ke server
menggunakan teknik enkripsi 128 bit sehingga
sangat sulit untuk dibaca tanpa mengetahui kode
enkripsinya.

Client dapat mem-forward aplikCasi Xwindows/X11
ke server.(Idris Winarto)
b. FTP Server (File Transfer Protokol)
Winarto.I
(2010:115)
menyatakan
“FTP
merupakan sebuah protocol yang digunakan untuk
melakukan pemindahan satu atau lebih file dari suatu local
host menuju remote host atau host tujuan”. FTP memiliki
II - 8
kemampuan yang tidak terbatas pada pemindahan file
saja, namun juga sangat memungkinkan pengguna untuk
dapat melakukan remote (pengendalian) secara jarak
jauh.
Kemampuan transfer data dari satu komputer ke
komputer
yang
dengan
file
sistem
yang
berbeda
merupakan kemampuan lain yang dimiliki oleh FTP.
Sebagai contoh, sebuah localhost yang menggunakan
sistem
operasi
windows
98
(sistem
file
FAT
32)
menghubungkan diri dengan sebuah remote host yang
menggunakan sistem operasi Mandrake (dengan file
sistem ex2fs).
Contoh lain, sebuah mesin localhost RedHat
(dengan file sistem ex3fs) menghubungkan diri dengan
sebuah server yang memiliki sistem operasi windows
2003 dengan file sistem NTFS.
FTP menggunakan protokol Transmission Control
Protocol (TCP) untuk komunikasi data antara klien dan
server, sehingga di antara kedua komponen tersebut akan
dibuat sebuah sesi komunikasi sebelum transfer data
dimulai. Sebelum membuat koneksi, port TCP nomor 21 di
sisi server akan "mendengarkan" percobaan koneksi dari
II - 9
sebuah klien FTP dan kemudian akan digunakan sebagai
port pengatur (control port) untuk :

membuat sebuah koneksi antara klien dan server,

untuk mengizinkan klien untuk mengirimkan sebuah
perintah FTP kepada server dan juga

mengembalikan respons server ke perintah tersebut.
Sekali koneksi kontrol telah dibuat, maka server
akan mulai membuka port TCP nomor 20 untuk
membentuk sebuah koneksi baru dengan klien untuk
mentransfer data aktual yang sedang dipertukarkan saat
melakukan pengunduhan dan penggugahan.
FTP hanya menggunakan metode autentikasi
standar, yakni menggunakan username dan password
yang dikirim dalam bentuk tidak terenkripsi. Pengguna
terdaftar dapat menggunakan username dan passwordnya untuk mengakses, men-download, dan meng-upload
berkas-berkas
yang
ia
kehendaki.
Umumnya,
para
pengguna terdaftar memiliki akses penuh terhadap
beberapa direktori, sehingga mereka dapat membuat
berkas, membuat direktori, dan bahkan menghapus
berkas. Pengguna yang belum terdaftar dapat juga
menggunakan metode anonymous login, yakni dengan
II - 10
menggunakan nama pengguna anonymous dan password
yang diisi dengan menggunakan alamat e-mail.
c. Remote MySQL
MySQL
database
server
adalah
RDBMS
(Relasional Database Management System) yang dapat
menangani data
yang bervolume besar dan tidak
menuntut resource yang besar. MySQL adalah database
yang paling popular diantara database yang lain.
Menurut Yudhi Hermawan (2003:46) “MySQL
merupakan database yang dikembangkan dari bahasa
SQL (Structured Query Language)”.
“MySQL
merupakan
database
yang
sangat
populer dikalangan pengembang situs yang sifatnya
dinamis”.(Dian Rakyat, 2005:3).
MySQL adalah program database yang mampu
mengirim dan menerima data dengan sangat cepat dan
multi user. MySQL memiliki dua bentuk lisensi, yaitu free
software
dan
shareware.
Penulis
sendiri
dalam
mengerjakan skripsi ini menggunakan MySQL yang free
software karena bebas menggunakan database ini untuk
keperluan pribadi atau usaha tanpa harus membeli atau
membayar lisensi, yang berada dibawah lisensi GNU/GPL
(general public license), yang dapat didownload pada
II - 11
alamat
resminya
http://www.mysql.com.
(Wahana
Komputer. 2010. Panduan Belajar MySQL database
server. Hal 5).
MySQL sangat popular utamanya untuk aplikasi
web. MySQL merupakan komponen database “M” yang
ada
di
LAMP,
BAMP,
MAMP,
dan
WAMP
(Linux/BSD/Mac/Windows-Apache-MySQLPHP/Perl/Python).
Selain
itu,
digunakan
di
tool
bugtracking seperti Bugzilla.
Heryanto,I dan Raharjo.B (2009 : 41) menyatakan
Remote MySQL digunakan untuk mengontrol database
server. Seorang administrator jaringan yang telah login ke
server dapat melihat semua isi dari database mysql,
menambah
database,
melakukan
perintah
membuat
query
pada
tabel,
database
ataupun
sesuai
keinginannya.
2.2.3 Aplikasi Web API (Application Programming Interface)
Antar muka web bisa mengirimkan informasi dalam
bentuk teks terformat (HTML), grafik/animasi, dan suara.
HTTP mengirimkan informasi dengan format HTML (Hyper
Text Markup Language). HTML merupakan format sederhana
dari standar SGML. Selain itu, HTTP juga dapat mengirimkan
informasi dalam bentuk lain.
II - 12
Aplikasi web terletak pada server, yang merupakan
perpanjangan
dari
web
server
untuk
mengirim
dan
memproses informasi. Informasi yang dikirim ke browser
menjadi dinamis dengan adanya alikasi tersebut. Proses
tersebut dapat dilakukan oleh CGI (Common Gateway
Interface) yang dapat dikembangkan dengan berbagai bahasa
pemrograman dalam berbagai platform selama menggunakan
standar yang ditetapkan.
Aplikasi berbasis web juga dapat dijalankan sebagai
script oleh processor seperti ASP atau PHP. Script dan
program tersebut akan memberikan informasi dalam format
HTML ke Web server untuk diteruskan ke browser dan juga
memproses informasi dari web server, misalnya menyimpan
data ke basis data. Perlu disadari bahwa aplikasi berbasis
web kebanyakan menggunakan database (database-driven
aplication). Contoh aplikasi web yang sering digunakan adalah
web mail yaitu aplikasi web untuk membaca dan mengirimkan
e-mail lewat browser.
Jubilee E, (2009:19) API (Application Programming
Interface) yaitu kumpulan struktur data, golongan objek dan
protocol yang disediakan oleh layanan system operasi yang
digunakan untuk mendukung pembentukan aplikasi. API ini
bisa mencakup dua hal yaitu :
II - 13

Language-dependent yang hanya tersedia pada bahasa
program tertentu yang biasanya menggunakan syntax dan
elemen tertentu pula agar API dapat digunakan pada
konteks khusus.

Language-independent
yang
dapat
ditulis
melalui
beberapa bahasa program khususnya antarmuka C-level
atau assembly. Jenis API ini berfungsi sebagai RPC
(Remote P_rocedure Call) yaitu teknologi komunikasi
inter-proses yang memungkinkan program komputer
membuat
prosedur
untuk
melaksanakan
perintah
program di komputer lain yang terhubung melalui suatu
jaringan.
Keberadaan
API
memungkinkan
suatu
aplikasi
terintegrasi dengan aplikasi atau layanan situs lain. Artinya
aplikasi dapat menerima aplikasi dari eksternal aplikasi itu
sendiri.
Didik D (2006 : 47) Pada saat ingin mengembangkan
aplikasi web database, bisa menggunakan solusi praktis dari
PERL, yaitu paket Database. Paket tersebut adalah layer
abstraksi database yang menyediakan API (Application
Programming Interface) tunggal untuk melakukan query ke
setiap database yang didukung oleh php.
II - 14
Paket Database menggunakan istilah DSN (Data
source
Name)
untuk
menggambarkan
pengalamatan
database. Adapun format yang digunakan adalah format URl
(Uniform Resource Identificator) contoh seperti berikut:

DSN untuk Koneksi ke SQLite
Sqlite ://c:/path/windows/file.db
Sqlite ://c:/path/unix/full/file.db

DSN untuk koneksi ke MySQL
Mysql://user@localhost/nama_database

DSN untuk koneksi Ke MS Access
Odbc(access)://user@/nama_data_sourse
2.2.4 Perangkat Lunak yang Digunakan
a. PHP
PHP adalah salah satu bahasa Server-side yang
didesain khusus untuk aplikasi web. PHP dapat disisipkan
diantara bahasa HTML dan karena bahasa Server side,
maka bahasa PHP akan dieksekusi di server, sehingga
yang dikirimkan ke browser adalah “hasil jadi” dalam
bentuk HTML, dan kode PHP anda tidak akan terlihat.
Secara khusus, PHP dirancang untuk membentuk
web dinamis. Artinya, ia dapat membentuk suatu tampilan
berdasarkan permintaan terkini. Misalnya anda bisa
menampilkan isi database ke halaman web. Pada
II - 15
prinsipnya, PHP mempunyai fungsi yang sama dengan
skrip-skrip seperti ASP, Cold Fusion ataupun Perl.
PHP adalah bahasa open source yang dapat
digunakan di berbagai mesin (linux, unix, windows) dan
dapat dijalankan secara runtime melalui console serta
dapat menjalankan perintah-perintah sistem.
b. MySQL
(Anhar : 2010 : 63) MySQL (My Strukture Query
Language) adalah sebuah perangkat lunak system
manajemen basis data SQL (Database Management
System) atau DBMS dari sekian bayak DBMS, seperti
Oracle, MS SQL, Postagre SQL, dan lain-lain. MySQL
merupakan DBMS yang multithread, multi-user yang
bersifat gratis dibawah lisensi GNU General Public
Licence (GPL). Tidak seperti apache yang merupakan
software yang dikembangkan oleh komunitas umum, dan
hak cipta untuk kode sumber dimiliki oleh penulisnya
masing-masing. Mysql dimiliki dan disponsori oleh sebuah
perusahaan
swedia
yaitu
Mysql
AB.
mySQL
AB
memegang hak cipta kode sumbernya. Kedua orang
swedia dan satu orang Finlandia yang mendirikan Mysql
AB adalah : David Axmark, Allan Larson, dan Michael
monty
Wildenius.
Seperti
yang
telah
disebutkan
II - 16
sebelumnya, mysql bersifat gratis atau open source
sehingga kita bisa menggunakannya secara gratis.
Pemrograman
PHP
juga
sangat
mendukung/support dengan database MySQL sehingga
apabila kita mempelajarinya dengan sungguh-sungguh
kita dapat mengaplikasikan PHP & MySQL dalam
membuat aplikasi website maupun dalam membuat
website.
c. Adobe Dreamweaver
Adobe
Dreamweaver
merupakan
program
penyunting halaman web keluaran Adobe Systems yang
dikenal sebagai Macromedia Dreamweaver keluaran
Macromedia.
Program
ini
banyak
digunakan
oleh
pengembang web karena fitur-fiturnya yang menarik dan
kemudahan penggunaannya. Versi terakhir Macromedia
Dreamweaver sebelum Macromedia dibeli oleh Adobe
Systems yaitu versi 8. Versi terakhir Dreamweaver
keluaran Adobe Systems adalah versi 10 yang ada dalam
Adobe Creative Suite 4 (sering disingkat Adobe CS4).
Program
aplikasi
Macromedia
Dreamweaver
menyertakan banyak perangkat yang berkaitan dengan
pengkodean dan fitur seperti HTML, CSS, Java Script,
Reference dan Java Script Debugger . Selain itu program
II - 17
aplikasi ini juga memungkinkan pengeditan Java Script,
XML dan dokumen teks lainnya secara langsung , yaitu
dengan menggunakan fasilitas kode editor.
Fitur – fitur pengeditan yang ditampilkan secara
visual
oleh
Macromedia
Dreamweaver
dapat
mempercepat penambahahan desain dan fungsi pada
halaman web tanpa harus menuliskan satu baris kode.
Semua elemen di dalam site dapat ditampilkan dan didrag
dari
panel-panel
(yang
terdapat
di
dalam
Macromedia Dreamweaver) ke dalam dokumen secara
langsung dan cepat . program aplikasi Macromedia
dreamweaver dapat mengimpor image atau movie yang
dibuat
dengan
program
aplikasi
lainnya,
seperti
macromedia flash, Macromedia Frameworks ataupun
Macromedia Director.
2.3 Kerangka konseptual
Kerangka konseptual penelitian adalah suatu hubungan atau
kaitan antara konsep satu terhadap konsep yang lainnya dari
masalah yang ingin diteliti. Berdasarkan tujuan penelitian di atas,
kerangaka konseptual terlihat pada gambar 2.1 .
II - 18
1. Tidak berada dikantor
2. Ditugaskan diluar kota
ADMIN
MAINTENENCE
APLIKASI
REMOTE
SERVER
KEBUTUHAN
PERUSAHAAN
1. Ada file yang
harus dikirim
2. Aplikasi yang
harus di instal
3. Cek database
Application Programming Interface
(API)
Secure Shell (SSH)
File Transfer Protocol
(FTP)
Fungsi FTP :
1. Download file
2. Upload file
3. Edit file
4. Hapus file
Faktor Maintenence
1. Database terhapus
2. File terhapus atau
hilang.
3. Jaringan Bermasalah
Fungsi SSH :
1. Penginstalan aplikasi
2. Kontrol jaringan server
3. Mengotomasi remote monitoring dan
penglolaan server
4. Mounting direktori di server remote
MySQL
Fungsi MySql :
1. Create Database
2. Update Database
3. Delete Database
4. View Database
KINERJA
SERVER
Gambar 2.1 Kerangka Konseptual
2.4 Defenisi Operasional
1. Admin / Administrator adalah orang yang bertugas untuk
mengelolah server
2. Kebutuhan Perusahaan merupakan kondisi yang diinginkan oleh
perusahaan.
II - 19
3. Maintenance adalah segala kegiatan yang bertujuan untuk
menjaga peralatan dalam kondisi terbaik. Proses maintenance
meliputi pengetesan, pengukuran, penggantian, penyesuaian
dan perbaikan.
4.
Aplikasi Remote Server adalah aplikasi yang dibangun oleh
penulis untuk mengontrol server dari jarak jauh. Server yang
diremote oleh aplikasi yaitu SSH, FTP, dan Mysql Server.
5. Application
Programming
Interface
adalah
metode
yang
digunakan dalam membuat aplikasi.
6. File
Transfer
Protocol
(FTP)
adalah
sebuah protokol
Internet yang berjalan di dalam lapisan aplikasi yang merupakan
standar untuk pengiriman berkas (file) komputer antar mesinmesin dalam sebuah jaringan.
7. Secure
Shell
memungkinkan
(SSH)
adalah
protokol
pertukaran data melalui saluran
jaringan yang
aman antara
dua perangkat jaringan.
8. MySQL adalah sebuah perangkat lunak sistem manajemen basis
data SQL yang multithread dan multi-user.
9. Kinerja Server merupakan hasil akhir yang ingin dicapai agar
server berjalan sesuai dengan fungsinya.
Download