bab v implementasi

26
BAB V IMPLEMENTASI DAN PENGUJIAN Pada bab ini akan dibahas mengenai proses instalasi dan konfigurasi sistem, agar dapat berjalan sesuai dengan sistem dan infrastruktur teknologi informasi yang ada di B4T. Secara garis besar sistem yang dijalankan merupakan prototype system yang di implementasikan pada jaringan lokal, dimana media virtual dan fisik digunakan sebagai bahan evaluasi terhadap sistem. Aplikasi yang digunakan dalam skripsi ini berjalan pada Sistem Operasi Linux untuk Server dan Sistem Operasi Windows untuk Client yang terkoneksi, berikut ini merupakan kebutuhan pada proses installasi LDAP dan CAS. a. Sistem Operasi : Ubuntu server 12.04 LTS b. Web Server : Apache 2 dan Tomcat 6 c. Bahasa Pemrograman : PHP 5 dan Java 52

Upload: iqbal-ramadhan

Post on 20-Oct-2015

104 views

Category:

Documents


17 download

DESCRIPTION

bab V KP

TRANSCRIPT

Page 1: Bab v Implementasi

BAB V

IMPLEMENTASI DAN PENGUJIAN

Pada bab ini akan dibahas mengenai proses instalasi dan konfigurasi

sistem, agar dapat berjalan sesuai dengan sistem dan infrastruktur teknologi

informasi yang ada di B4T. Secara garis besar sistem yang dijalankan merupakan

prototype system yang di implementasikan pada jaringan lokal, dimana media

virtual dan fisik digunakan sebagai bahan evaluasi terhadap sistem.

Aplikasi yang digunakan dalam skripsi ini berjalan pada Sistem Operasi

Linux untuk Server dan Sistem Operasi Windows untuk Client yang terkoneksi,

berikut ini merupakan kebutuhan pada proses installasi LDAP dan CAS.

a. Sistem Operasi : Ubuntu server 12.04 LTS

b. Web Server : Apache 2 dan Tomcat 6

c. Bahasa Pemrograman : PHP 5 dan Java

d. Java Environment : Sun Java Development Kit versi 6

e. PEAR : php PEAR

f. LDAP : slapd versi 2.4

g. LDAP Admin : phpLDAPAadmin 1.2.0.5

h. Connector : libapache-mod-jk

i. SSL : OpenSSL

j. Pustaka CAS client : phpCAS 1.3.1

k. CMS : WordPress dan Moodle

52

Page 2: Bab v Implementasi

53

1.1 Instalasi dan Konfigurasi Sistem Operasi

Untuk proses instalasi sistem operasi yang digunakan, yaitu sistem operasi

Ubuntu server. Langkah-langkah proses instalasi nya dapat dilihat di lampiran C.

Setelah melakukan instalasi sistem, selanjutnya yaitu melakukan konfigurasi pada

perangkat jaringan. Langkah-langkah adalah sebagai berikut :

1. Masuk ke direktori /etc/network/interfaces, kemudian tambahkan konfigurasi

pada perangkat jaringan.

root@ldap:~# nano /etc/network/interfaces

auto eth0iface eth0 inet static address 192.168.20.12 netmask 255.255.255.0 network 192.168.20.0 broadcast 192.168.20.255 gateway 192.168.20.1

Skrip 4.1 Konfigurasi Network Interfaces

2. Setelah melakukan konfigurasi seperti langkah pertama, dilanjutkan dengan

merestart perangkat jaringan.

root@ldap:~# /etc/init.d/networking restart

3. Kemudian menambahkan inisialisasi nama host pada server dengan cara

menambahkan parameter seperti pada skrip 4.2 pada file /etc/hosts

127.0.0.1 localhost.localdomain localhost127.0.1.1 ldap.uinsgd.ac.id ldap192.168.20.12 ldap.uinsgd.ac.id ldap

# The following lines are desirable for IPv6 capable hosts

Page 3: Bab v Implementasi

54

::1 ip6-localhost ip6-loopbackfe00::0 ip6-localnetff00::0 ip6-mcastprefixff02::1 ip6-allnodesff02::2 ip6-allrouters

Skrip 4.2 Konfigurasi Hosts

4. Langkah selanjutnya yaitu membuat memberikan nama pada server, dan

mengaktifkannya. Caranya dengan mengetikkan perintah :

root@ldap:~# echo server1.example.com > /etc/hostnameroot@ldap:~# /etc/init.d/hostname.sh start

5. Cek apakah hostname telah berjalan, dengan perintah :

root@ldap:~# hostnameldap.uinsgd.ac.id

root@ldap:~# hostname -fldap.uinsgd.ac.id

6. Agar dapat melakukan konfigurasi pada komputer client maka diperlukan ssh

server. Cara menginstall ssh server yaitu dengan mengetikkan perintah

seperti berikut.

root@ldap:~# apt-get install ssh ssh-server

Jika sudah selesai cek melalui putty, dengan memasukkan ip address yang telah

dikonfigurasi pada putty kemudian klik tombol open. Apabila langkah-langkah

konfigurasi jaringan diatas telah benar, maka secara langsung server tersebut akan

meminta username dan password sistem tersebut.

Page 4: Bab v Implementasi

55

Gambar 4.1 Putty Configuration

1.2 Instalasi Server LDAP

Pembuatan server LDAP dilakukan sebagai tempat penyimpanan database

user. Pada skripsi ini digunakan OpenLDAP, OpenLDAP digunakan karena

sistem operasi yang digunakan berbasiskan Linux, yaitu Linux Debian Squeeze.

Langkah-langkah instalasi OpenLDAP seperti dibawah ini :

root@ldap:~# apt-get install slapd ldap-utils

Pada saat instalasi, installer akan menampilkan beberapa form isian yang

harus diisi, dibawah ini merupakan contoh dari form :

Omit OpenLDAP server configuration? ... NoDNS domain name : ... b4t.go.idName of your organization : ... Balai Besar Bahan Dan Barang TeknikAdmin Password : ... *********

Page 5: Bab v Implementasi

56

Confirm Password : ... *********OKBDBDo you want your database to be removed when slapd is purged? ... NoMove old database? ... YesAllow LDAPv2 Protocol? ... No

Skrip 4.3 Proses Instalasi OpenLDAP

Secara otomatis server LDAP telah berfungsi dan sudah dapat dijalankan,

maka selanjutnya adalah mengecek apakah server LDAP telah berjalan dengan

menggunakan ldapsearch utility, yang merupakan bagian dari paket ldap-utils.

Ketik perintah seperti dibawah ini :

root@ldap:~# ldapsearch –x –b dc=b4t,dc=go,dc=id

Jika tampil keluaran seperti gambar dibawah ini, maka server LDAP telah

berjalan :

Page 6: Bab v Implementasi

57

Gambar 4.2 Pengecekan Server LDAP

Setelah server LDAP berjalan, langkah selanjutnya yaitu menginstall tool

tambahan yaitu phpLDAPAdmin untuk manajemen LDAP server. Untuk

melakukan proses instalasi dapat dilakukan dengan mengetikkan perintah :

root@ldap:~# apt-get install phpldapadmin

Perintah diatas akan mencari paket dependensi phpLDAPAdmin dan melakukan

instalasi. Setelah proses instalasi selesai cek phpLDAPAdmin pada browser

dengan mengetikkan http://namaserver/phpldapadmin, apabila keluar seperti

gambar di bawah ini maka phpLDAPAdmin telah terinstall dengan benar.

Gambar 4.3 phpLDAPAdmin yang sudah di install

Page 7: Bab v Implementasi

58

1.3 Instalasi Server CAS

CAS (Central Authentication Service) merupakan sebuah aplikasi yang

memberikan layanan otentikasi terpusat seperti sebuah portal. Dikarenakan CAS

memiliki arsitektur Client/Server, maka pada tahap ini adalah instalasi server

CAS. Tahapan-tahapan untuk penginstalan server CAS akan dijelaskan sebagai

berikut :

1.3.1 Instalasi Tomcat 6

Tomcat merupakan servlet container yang umum digunakan pada

banyak sistem, dalam menginstall tomcat diperlukan Java Development

Kit untuk mengkompilasi maupun menjalankan program-program berbasis

java.

Langkah-langkah instalasi dan konfigurasi tomcat dengan

mengetikan perintah :

root@ldap:~# apt-get tomcat6 tomcat-webapps tomcat-common

Perintah diatas akan mencari paket dependensi jdk serta tomcat dan

melakukan instalasi untuk dapat menjalankan server CAS. Setelah

terinstall edit file /etc/default/tomcat6 dan sesuaikan parameter dengan

skrip 4.4 di bawah ini :

TOMCAT6_USER=tomcat6TOMCAT6_GROUP=tomcat6JAVA_HOME=/usr/lib/jvm/openjdk-6-jdkTOMCAT6_SECURITY=no

Skrip 4.4 Parameter Tomcat 6

Page 8: Bab v Implementasi

59

Setelah selesai melakukan konfigurasi pada tomcat, agar

konfigurasi yang baru dapat dijalankan, maka tomcat harus direstart

terlebih dahulu dengan perintah :

root@ldap:~# /etc/init.d/tomcat6 restart

Lakukan pengujian pada browser dengan mengetikkan

http://namaserver:8080, jika pada browser muncul tampilan seperti

gambar 4.4, maka instalasi tomcat telah berhasil dan dapat digunakan.

Gambar 4.4 Tomcat yang sudah di install

Selanjutnya edit file /etc/tomcat6/tomcat-users.xml seperti skrip

4.5 untuk menambahkan hak akses admin pada tomcat user :

<role rolename="tomcat"/> <role rolename="role1"/> <user username="tomcat" password="tomcat" roles="tomcat"/> <user username="both" password="tomcat" roles="tomcat,role1"/> <user username="role1" password="tomcat" roles="role1"/>

Page 9: Bab v Implementasi

60

--> <role rolename="admin,manager"/> <user name="iqbal" password="b4t" roles="admin,manager" />

Skrip 4.5 Penambahan Hak Akses Admin dan Manager

Buka browser kembali dengan url http://namaserver:8080, kemudian pada

halaman tomcat klik manager app untuk masuk ke halaman Tomcat Web

Application Manager, tak lupa masukkan username dan password yang

telah dibuat pada tomcat-users.xml :

Gambar 4.5 Tomcat Web Application Manager

1.3.2 Securing Web Server (HTTPS)

Dikarenakan server CAS membutuhkan mode https agar dapat

berjalan dengan baik, maka perlu ditambahkan protokol tambahan ssl

(secure socket layer) yang berfungsi sebagai protokol web server yang

disertai dengan enkripsi (https).

Page 10: Bab v Implementasi

61

Langkah selanjutnya adalah menyediakan layanan https pada web

server, untuk mengaktifkan layanan https tersebut ketikkan perintah :

root@ldap:~# a2enmod ssl

Perintah diatas akan membuat satu file konfigurasi baru pada direktori

/etc/apache2/site-enabled. Nama file default adalah default-ssl yang

merupakan file konfigurasi virtual host untuk protokol https.

1.3.3 Instalasi Mod_Jk untuk Mengintegrasikan Apache dan Tomcat

Mod_Jk adalah aplikasi yang berfungsi untuk menjembatani antara

apache2 dan tomcat6 (ProxyPass). Untuk menginstall Mod_Jk, ketikkan

perintah :

root@ldap:~# apt-get install libapache2-mod-jk

Setelah Mod_Jk terinstall, edit file

/etc/libapache2-mod-jk/workers.properties kemudian sesuaikan dengan

parameter yang ada pada server :

workers.tomcat_home=/opt/tomcat/workers.java_home=/usr/lib/jvm/java-6-sun-1.6.0.26/ps=/worker.list=ajp13_workerworker.ajp13_worker.port=8009worker.ajp13_worker.host=localhostworker.ajp13_worker.type=ajp13worker.ajp13_worker.lbfactor=1worker.loadbalancer.type=lbworker.loadbalancer.balance_workers=ajp13_worker

Skrip 4.6 Konfigurasi file workers.properties

Page 11: Bab v Implementasi

62

Agar konfigurasi file workers.properties diatas dapat dikenali oleh

apache, pada direktori /etc/apache2/mods-enabled terdapat file jk.load

yang berfungsi untuk mengenalkan mod_jk pada apache. Konfigurasi dari

jk.load sebagai berikut :

LoadModule jk_module /usr/lib/apache2/modules/mod_jk.soJkWorkersFile /etc/libapache2-mod-jk/workers.properties

Skrip 4.7 Konfigurasi file jk.load

Langkah selanjutnya yaitu memasukkan parameter mount point

dari tomcat melalui apache ke dalam virtual host. Edit file

/etc/apache2/sites-enabled/default-ssl, tambahkan skrip 4.8 kedalam file

konfigurasi tersebut :

JkMount /cas/* ajp13_worker

Skrip 4.8 Konfigurasi mod_jk pada file default-ssl

Restart apache dengan perintah :

root@ldap:~# /etc/init.d/apache2 restart

1.3.4 Deploying CAS

CAS dibangun secara ekslusif dengan Maven 2 Build Management

System. Sistem ini menyediakan struktur bangunan dan direktori, tepatnya

semua proyek yang menggunakan Maven 2 dan mendefinisikan hasil akhir

yang bisa dicoba pada berbagai proyek dengan type seperti JAR, WAR,

EAR dan lainnya. CAS sendiri terdiri dari file-file java yang harus

dikompilasi agar dapat dijalankan pada container tomcat. Untuk

Page 12: Bab v Implementasi

63

melakukan kompilasi CAS, download source CAS dari url

http://downloads.jasig.org/cas/cas-server-3.4.12-release.tar.gz.

Setelah di download kemudian ekstrak file tersebut, selanjutnya

buka Tomcat Web Application Manager melalui browser. Pada menu

Deploy pilih WAR file to deploy.

Gambar 4.6 Deployer WAR pada Tomcat Web Application Manager

Kemudian klik Browse, cari file pada direktori cas-

server-3.4.12-release/modules/cas-server-webapp-3.4.12.war, dilanjutkan

dengan mengklik tombol Deploy. Selanjutnya restart tomcat dan lihat

hasilnya pada browser dengan mengetikkan https://namaserver/cas/ seperti

nampak pada gambar berikut ini :

Page 13: Bab v Implementasi

64

Gambar 4.7 CAS yang telah di install

1.4 Integrasi Server LDAP dan CAS

Untuk dapat mengintegrasikan antara server LDAP dan CAS, tahapan-

tahapan yang dilakukan adalah sebagai berikut :

1. Masuk ke dalam direktori cas/META-INF/maven/org.jasig.cas/cas-

server-webapp/ pada webapps tomcat, kemudian edit file pom.xml dan

tambahkan skrip berikut :

<dependency><groupId>org.jasig.cas</groupId><artifactId>cas-server-core</artifactId><version>${project.version}</version>

</dependency>

<dependency><groupId>org.springframework.webflow</groupId><artifactId>spring-webflow</artifactId><scope>compile</scope>

</dependency>

<dependency>

Page 14: Bab v Implementasi

65

<groupId>org.springframework.ldap</groupId><artifactId>spring-ldap-core</artifactId>

</dependency>

<dependency><groupId>org.springframework.ldap</groupId><artifactId>spring-ldap-core-tiger</artifactId>

</dependency>

Skrip 4.9 Konfigurasi file pom.xml

2. Masuk ke dalam direktori cas/WEB-INF/ pada webapps tomcat,

kemudian edit file deployerConfigContext.xml, tambahkan skrip berikut

pada bagian authentication.

<bean class="org.jasig.cas.adaptors.ldap.BindLdapAuthenticationHandler"

p:filter="uid=%u"

p:searchBase="dc=b4t,dc=go,dc=id"p:contextSource-

ref="contextSource" /></list>

</property></bean>

<!--| This bean defines springframework using ldap+-->

<bean id="contextSource" class="org.springframework.ldap.core.support.LdapContextSource">

<property name="pooled" value="false" /> <property name="url" value="ldap://192.168.20.12:389" /> <property name="userDn" value="cn=admin,dc=b4t,dc=go,dc=id" /> <property name="password" value="iqbal" />

<property name="baseEnvironmentProperties"> <map> <entry key="com.sun.jndi.ldap.connect.timeout" value="3000" /> <entry key="com.sun.jndi.ldap.read.timeout"

Page 15: Bab v Implementasi

66

value="3000" /> <entry key="java.naming.security.authentication" value="simple" /> </map> </property>

</bean>

Skrip 4.10 Konfigurasi file deployerConfigContext.xml

Selanjutnya yaitu melakukan pengujian pada browser, masukkan

url https://namaserver/cas/ kemudian masukkan username dan password

account admin dari ldap. Jika muncul tampilan seperti gambar berikut,

berarti server LDAP dan CAS telah terintegrasi.

Gambar 4.8 Server LDAP dan CAS telah Terintegrasi

1.5 Integrasi Client CAS

Sebagaimana yang telah dijelaskan pada bab ii (dua), CAS dapat

diintegrasikan dengan berbagai macam pustaka client. Pada skripsi ini pustaka

client yang digunakan yaitu phpCAS. phpCAS ini akan diintegrasikan ke dalam

Page 16: Bab v Implementasi

67

aplikasi content management system (CMS), diantaranya menggunakan

WordPress dan Moodle yang dijadikan sebagai prototype untuk menggambarkan

integrasi sistem pada proses otentikasi menggunakan Lightweight Directory

Access Protocol (LDAP) dan Central Authentification Service (CAS).

1.5.1 Integrasi dengan WordPress

Pada WordPress terdapat plug-in untuk CAS authentifikasi,

sehingga untuk konfigurasinya dapat dillakukan dengan menginstall plug-

in CAS yang ada, dan melakukan perubahan sebagai berikut :

1. Masuk ke direktori WordPress cari plug-in wpCAS, kemudian cari file

wpcas.php.

2. Cari file wpcas-conf.php pada direktori WordPress

3. Ubah isi file wpcas-conf.php sebagai berikut :

// the configuration array$wpcas_options = array(

'cas_version' => '2.0','include_path' => 'CAS.php','server_hostname' => 'cas.b4t.go.id','server_port' => '443','server_path' => '/CAS/');

Skrip 4.11 Konfigurasi file wpcas-conf.php

1.5.1.1 Integrasi dengan Moodle

Pada Moodle sudah terdapat plug-in untuk CAS authentifikasi

yang terinstall langsung pada waktu installasi moodle itu sendiri,

sehingga untuk konfigurasinya dapat dillakukan dengan mengaktifkan

Page 17: Bab v Implementasi

68

plug-in CAS yang ada, dan menginputkan parameter yang sesuai dengan

CAS dan LDAP, seperti berikut :

1. Aktifkan plugin CAS Server (SSO) pada menu Home ► Site

administration ► Plugins ► Authentication ► Manage

authentication.

2. Setelah plugin aktif, inputkan parameter server CAS dan LDAP pada

konfigurasi plugin tersebut. Seperti pada gambar 4.9 berikut ini :

Page 18: Bab v Implementasi

69

Gambar 4.9 Konfigurasi CAS pada Moodle

Page 19: Bab v Implementasi

70

1.6 Pengujian

Setelah dilakukan pengujian pada sistem yang ada maka skenario yang

dikerjakan untuk implementasi ini agar dapat menjalankan layanan Lightweight

Directory Access Protocol (LDAP) dan Central Authentification Service (CAS)

yaitu sebagai berikut :

1. User meminta halaman aplikasi yang memerlukan proses otentikasi.

2. Halaman aplikasi yang diakses melakukan redirect ke dalam halaman login

CAS server.

3. Setelah terotentikasi, CAS server memberikan notifikasi untuk mengijinkan

user mengakses aplikasi lain kemudian CAS server melakukan redirect

kembali ke dalam aplikasi.

4. Ketika logout aplikasi akan melakukan redirect kembali ke CAS server dan

CAS server merespon dengan validasi pesan.

Setelah aplikasi terintegrasi, maka pada halaman login tidak akan

menggunakan halaman default aplikasi yang ada, namun akan di redirect ke

halaman login CAS Server sebagai pusat dari layanan otentikasi. Berikut ini

merupakan tampilan dari halaman setelah login dan logout pada CAS yang telah

terintegrasi dengan aplikasi WordPress dan Moodle.

Page 20: Bab v Implementasi

71

Gambar 4.10 Tampilan Web Login CAS Server

Gambar 4.11 Tampilan Notifikasi Setelah Login CAS

Gambar 4.12 Tampilan Notifikasi Ketika Akan Mengakses Aplikasi

Page 21: Bab v Implementasi

72

Gambar 4.13 Tampilan Notifikasi Setelah Logout CAS