BAB IV IMPLEMENTASI DAN PENGUJIAN
4.1.
Konfigurasi Server. Pada Bab ini akan dibahas tentang tahapan – tahapan dalam membangun
load balance dan fail over pada mail server, mengimplementasikan load balance dan fail over pada mail server, dan menguji load balance dan fail over tersebut menggunakan
tools
phpmailer.
Pada
proyek
akhir
ini
dalam
pengimplementasiannya memiliki beberapa tahapan, diantaranya : 4.1.1. Konfigurasi Mail Server 1 Pada Mail Server 1 perlu dilakukan beberapa konfigurasi antara lain : Nework Configuration
4.1.1.1.
Network Configuration merupakan tahap awal setelah server di install operating system, yang berfungsi untuk komunikasi antar network dan penginstalan packet – packet yang di perlukan. Untuk konfigurasi network seperti di bawah ini. # /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 HWADDR=08:00:27:AE:2A:7B TYPE=Ethernet UUID=38df7254-f379-4312-8f8a-ffd68fd94650 ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static IPADDR=192.168.10.3 NETMASK=255.255.255.248 GATEWAY=192.168.10.1 DNS1=192.168.10.1 Setelah itu lakukan restart network service dengan cara seperti di bawah ini.
25
http://digilib.mercubuana.ac.id/
[root@mail1 ~]# /etc/init.d/network restart Dan terakhir pastikan service network tersebut auto start on first boot dengan cara [root@mail1 ~]# Chkconfig network on 4.1.1.2.
SMTP Configuration Pada mail server 1 terdapat satu buah service yaitu smtp server. Smtp
server ini berfungsi untuk pengiriman email ke email client. Pada tahap awal untuk smtp configuration adalah instalasi packet. Untuk caranya seperti di bawah ini. [root@mail1 ~]# Yum install postfix Setelah di install perlu mengkonfigurasi beberapa bagian antara lain relay access pada smtp server. Relay access ini berfungsi meminimalkan ip address yang di izinkan untuk menggunakan smtp server ini. Untuk konfigurasinya antara lain. # /etc/postfix/main.cf inet_interfaces = all inet_protocols = all mynetworks
=
192.168.10.1/32,
192.168.10.2/32,
192.168.10.3/32,
192.168.10.4/32, 127.0.0.0/8 Setelah itu lakukan restart network service dengan cara seperti berikut. [root@mail1 ~]# /etc/init.d/network restart Dan terakhir pastikan service network tersebut auto start on first boot dengan cara. [root@mail1 ~]# Chkconfig network on 4.1.2. Konfigurasi Mail Server 2 Pada Mail Server 2 perlu dilakukan beberapa konfigurasi antara lain :
26
http://digilib.mercubuana.ac.id/
Nework Configuration
4.1.2.1.
Network Configuration merupakan tahap awal setelah server di install operating system, yang berfungsi untuk komunikasi antar network dan penginstalan packet – packet yang di perlukan. Untuk konfigurasi network seperti di bawah ini. # /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 HWADDR=08:00:27:AE:2A:7B TYPE=Ethernet UUID=38df7254-f379-4312-8f8a-ffd68fd94650 ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static IPADDR=192.168.10.4 NETMASK=255.255.255.248 GATEWAY=192.168.10.1 DNS1=192.168.10.1 Setelah itu lakukan restart network service dengan cara seperti berikut. [root@mail2 ~]# /etc/init.d/network restart Dan terakhir pastikan service network tersebut auto start on first boot dengan cara. [root@mail2 ~]# chkconfig network on 4.1.2.2.
SMTP Configuration Pada mail server 1 terdapat satu buah service yaitu smtp server. Smtp
server ini berfungsi untuk pengiriman email ke email client. Pada tahap awal untuk smtp configuration adalah instalasi packet. Untuk caranya seperti di bawah ini. [root@mail2 ~]# Yum install postfix
27
http://digilib.mercubuana.ac.id/
Setelah di install perlu mengkonfigurasi beberapa bagian antara lain relay access pada smtp server. Relay access ini berfungsi meminimalkan ip address yang di izinkan untuk menggunakan smtp server ini. Untuk konfigurasinya antara lain. # /etc/postfix/main.cf inet_interfaces = all inet_protocols = all mynetworks
=
192.168.10.1/32,
192.168.10.2/32,
192.168.10.3/32,
192.168.10.4/32, 127.0.0.0/8 Setelah itu lakukan restart network service dengan cara seperti berikut. [root@mail2 ~]# /etc/init.d/postfix restart Dan terakhir pastikan service network tersebut auto start on first boot dengan cara. [root@mail2 ~]# Chkconfig postfix on 4.1.3. Konfigurasi Mail Server Gateway Pada Mail Server gateway diberi hostname “haproxy” perlu dilakukan beberapa konfigurasi antara lain : 4.1.3.1.
Nework Configuration Network Configuration merupakan tahap awal setelah server di install
operating system, yang berfungsi untuk komunikasi antar network dan penginstalan packet – packet yang di perlukan. Untuk konfigurasi network seperti di bawah ini. # /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 HWADDR=08:00:27:AE:2A:7B TYPE=Ethernet UUID=38df7254-f379-4312-8f8a-ffd68fd94650 ONBOOT=yes NM_CONTROLLED=yes
28
http://digilib.mercubuana.ac.id/
BOOTPROTO=static IPADDR=192.168.10.2 NETMASK=255.255.255.248 GATEWAY=192.168.10.1 DNS1=192.168.10.1 Setelah itu lakukan restart network service dengan cara seperti berikut. [root@haproxy ~]# /etc/init.d/network restart Dan terakhir pastikan service network tersebut auto start on first boot dengan cara. [root@haproxy ~]# chkconfig network on 4.1.3.2.
HAProxy Configuration
HAproxy merupakan service untuk load balance pada web server, tapi pada project ini diimplementasikan sebagai service untuk email gateway load balance dan fail over. Pada bagian haproxy configuration, perlu dilakukan instalasi packet HAProxy dengan cara. [root@haproxy ~]# yum install haproxy Setelah itu dilakukan konfigurasi pada haproxy. # /etc/haproxy/haproxy.cfg Global log
127.0.0.1 local2
chroot
/var/lib/haproxy
pidfile
/var/run/haproxy.pid
maxconn
4096
user
haproxy
group
haproxy
daemon defaults log
global
retries
3
29
http://digilib.mercubuana.ac.id/
timeout connect
2m
timeout client
2m
timeout server
2m
#HAPROXY SMTP frontend front_smtp_haproxy bind 127.0.0.1:25 bind 192.168.10.2:25 mode tcp no option http-server-close log global option tcplog default_backend backend_smtp_postfix backend backend_smtp_postfix mode tcp balance roundrobin log global option allbackups option tcp-check option tcplog server mail1 192.168.10.3:25 check server mail2 192.168.10.4:25 check Setelah itu restart haproxy service. Dengan cara seperti dibawah ini. [root@haproxy ~]# /etc/init.d/haproxy restart Yang terakhir perlu dilakukan adalah membuat service haproxy di first booting server dengan cara. [root@haproxy ~]# chkconfig haproxy on 4.1.3.3.
Web Server Configuration Pada bagian ini dipaparkan untuk penginstalan web server, untuk
penginstalannya antara lain sebagai berikut : 30
http://digilib.mercubuana.ac.id/
[root@haproxy ~]# yum install httpd php Setelah proses instalasi selesai maka perlu dilakukan restart service pada web server. [root@haproxy ~]# /etc/init.d/httpd restart Yang terakhir perlu dilakukan adalah membuat service httpd di first booting server dengan cara [root@haproxy ~]# chkconfig httpd on 4.1.3.4.
SQL Server Configuration Pada bagian ini dipaparkan tahapan penginstalan mysql dan konfigurasi
user root untuk mysql, untuk tahapan awal adalah melakukan instalasi mysql seperti di bawah ini. [root@haproxy ~]# yum install mysql-server Selanjutnya service untuk mysql perlu untuk di restart. [root@haproxy ~]# /etc/init.d/mysqld restart Dan agar service mysql berjalan pada first boot maka perlu dilakukan perintah berikut. [root@haproxy ~]# chkconfig mysqld on Pada tahapan ini dilakukan untuk konfigurasi user root pada mysql. Untuk perintahnya seperti di bawah ini. [root@haproxy ~]# mysqladmin –u root password patronus Agar mysql bisa di akses melalui GUI atau web interface, maka perlu dilakukan install phpmyadmin. Untuk penginstalla n phpmyadmin, tahapan awal adalah install epel-release. [root@haproxy ~]# yum install epel-release Dan dilakukan update system. Seperti di bawah ini. [root@haproxy ~]# yum update Jika sudah berhasil di update system, maka bisa dilanjutkan ke tahapan install phpmyadmin, seperti dibawah ini. 31
http://digilib.mercubuana.ac.id/
[root@haproxy ~]# yum install phpmyadmin 4.1.3.5.
PHPMailer PHPMailer merupakan library pada php untuk pengiriman email. Pada
project akhir ini phpmailer digunakan sebagai tools untuk testing pengiriman email dari PHP. Pertama perlu melakukan download phpmailer dan disimpan didalam directory. [root@haproxy ~]# /var/www/html/email/phpmailer 4.1.3.6.
Pommo Email Blast Pommo merupakan simple email blast application berbasis open source.
Pada project akhir ini pommo digunakan sebagai media untuk pengujian email gateway sebagai load balance dan fail over. Tahapan awal adalah mendownload packet Pommo. Setelah itu simpan pada directory, seperti dibawah ini. [root@haproxy ~]# /var/www/html/pommo Pada tahapan ini dilakukan install pommo sebagai email blast tools dengan cara membuat database terlebih dahulu pada mysql dengan perintah seperti dibawah ini. [root@haproxy ~]# mysqladmin –u root –p create pommo Tahapan selanjutnya adalah mengedit file config.php pada directory pommo. Seperti dibawah ini. # nano /var/www/html/pommo/config.php [db_hostname] = “localhost” [db_username] = “root” [db_password] = “patronus” [db_database] = “pommo” [db_prefix] = “pommo_” Setelah config.php sudah dikonfigurasi maka akses pommo email blast melalui web browser untuk penginstallan secara GUI dengan url sebagai berikut :
32
http://digilib.mercubuana.ac.id/
http://192.168.10.2/pommo/install.php Dan akan muncul tampilan seperti dibawah ini.
Gambar 4.1. Pommo Installation Selanjutnya pada halaman installation perlu diisikan seperti dibawah ini.
33
http://digilib.mercubuana.ac.id/
Gambar 4.2. Pommo Installation Input Jika berhasil maka proses installation akan seperti dibawah ini.
Gambar 4.3. Pommo Installation Success Konfigurasi Email Client Server
4.1.4.
Untuk email client dibuat sebuah prototype email server yang didalamnya terdapat Pop3 Server dan SMTP server. 4.1.4.1.
Network Configuration Tahapan pertama pada pembuatan email client dengan cara network
configuration. Seperti di bawah ini. # /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 HWADDR=08:00:27:FC:CC:A7 TYPE=Ethernet UUID=7181c993-8035-4066-b811-32e19895ff76 ONBOOT=yes NM_CONTROLLED=no
34
http://digilib.mercubuana.ac.id/
BOOTPROTO=static IPADDR=192.168.10.1 NETMASK=255.255.255.248 GATEWAY=192.168.10.1 DNS1=192.168.10.1 Setelah itu lakukan restart network service dengan cara seperti berikut. [root@mail ~]# /etc/init.d/network restart Dan terakhir pastikan service network tersebut auto start on first boot dengan cara [root@mail ~]# Chkconfig network on 4.1.4.2.
DNS Server Sebelum dibuat email client, yang perlu dibuat adalah dns server. Dns
server ini berfungsi untuk menerjemahkan name server ke sebuah ip yang didalamnya terdapat berbagai record. Pada server client email ini dibutuhkan 2 buah record, antara lain A record dan MX record. Konfigurasi awal dibutuhkan konfigurasi listen port pada DNS server seperti dibawah ini. #/etc/named.conf options { listen-on port 53 { 127.0.0.1; 192.168.10.1;}; listen-on-v6 port 53 { ::1; }; directory
"/var/named";
dump-file
"/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query
{ localhost; 192.168.10.0/29;};
recursion yes; dnssec-enable yes;
35
http://digilib.mercubuana.ac.id/
dnssec-validation yes; dnssec-lookaside auto; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; managed-keys-directory "/var/named/dynamic"; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; zone "." IN { type hint; file "named.ca"; }; include "/etc/named.rfc1912.zones"; include "/etc/named.root.key"; include "/etc/named/named.conf.local"; Selanjutnya konfigurasi zone pada DNS Server seperti dibawah ini. # /var/named/data/db.mercubuana.edu $TTL 38400 @
IN SOA mercubuana.edu. mail.mercubuana.edu. ( 20160517
; serial
10800 ; refresh 3600
; retry
604800 ; expire 86400 ) ; minimum @
IN
NS
ns
IN
A
ns.mercubuana.edu. 192.168.10.1
36
http://digilib.mercubuana.ac.id/
@
IN
A
192.168.10.1
mail.mercubuana.edu. IN mail
IN
A
haproxy IN
MX 0
mail.mercubuana.edu.
192.168.10.1 A
192.168.10.2
mail1 IN
A
192.168.10.3
mail2 IN
A
192.168.10.4
email IN
A
192.168.10.2
# /var/named/data/db.10.168.192 $TTL 38400 @
IN SOA mercubuana.edu. mail.mercubuana.edu. ( 20160517
; serial
10800 ; refresh 3600
; retry 604800 ; expire
86400 ) ; minimum
IN
NS
ns.mercubuana.edu.
1
IN
PTR
ns.mercubuana.edu.
1
IN
PTR
mail.mercubuana.edu.
2
IN
PTR
haproxy.mercubuana.edu.
3
IN
PTR
mail1.mercubuana.edu.
4
IN
PTR
mail2.mercubuana.edu.
2
IN
PTR
email.mercubuana.edu.
Setelah DNS Server sudah dikonfigurasi maka perlu dilakukan restart service dengan cara. [root@mail ~]# /etc/init.d/named restart Terakhir Named Service tersebut dibuat agar pada saat first boot langsung aktif. [root@mail ~]# chkconfig named on
37
http://digilib.mercubuana.ac.id/
4.1.4.3.
Zimbra Collaboration Suite Email Client menggunakan zimbra mail service. Untuk instalasinya seperti
dibawah ini. [root@mail zcs-8.6.0.rhel6.64]# ./install.sh Operations logged to /tmp/install.log.2160 Checking for existing installation... zimbra-ldap...NOT FOUND zimbra-logger...NOT FOUND zimbra-mta...NOT FOUND zimbra-dnscache...NOT FOUND zimbra-snmp...NOT FOUND zimbra-store...NOT FOUND zimbra-apache...NOT FOUND zimbra-spell...NOT FOUND zimbra-convertd...NOT FOUND zimbra-memcached...NOT FOUND zimbra-proxy...NOT FOUND zimbra-archiving...NOT FOUND zimbra-core...NOT FOUND PLEASE READ THIS AGREEMENT CAREFULLY BEFORE USING THE SOFTWARE. ZIMBRA, INC. ("ZIMBRA") WILL ONLY LICENSE THIS SOFTWARE TO YOU IF YOU FIRST ACCEPT THE TERMS OF THIS AGREEMENT. BY DOWNLOADING OR INSTALLING THE SOFTWARE, OR USING THE PRODUCT, YOU ARE CONSENTING TO BE BOUND BY THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS AGREEMENT, THEN DO NOT DOWNLOAD, INSTALL OR USE THE PRODUCT.
38
http://digilib.mercubuana.ac.id/
License Terms for the Zimbra Collaboration Suite: http://www.zimbra.com/license/zimbra-public-eula-2-5.html Do you agree with the terms of the software license agreement? [N] Y Checking for installable packages Found zimbra-core Found zimbra-ldap Found zimbra-logger Found zimbra-mta Found zimbra-dnscache Found zimbra-snmp Found zimbra-store Found zimbra-apache Found zimbra-spell Found zimbra-memcached Found zimbra-proxy Select the packages to install Install zimbra-ldap [Y] Y Install zimbra-logger [Y] Y Install zimbra-mta [Y] Y Install zimbra-dnscache [Y] N Install zimbra-snmp [Y] Y Install zimbra-store [Y] Y Install zimbra-apache [Y] Y Install zimbra-spell [Y] Y Install zimbra-memcached [Y] N Install zimbra-proxy [Y] N Checking required space for zimbra-core Checking space for zimbra-store Checking required packages for zimbra-store zimbra-store package check complete.
39
http://digilib.mercubuana.ac.id/
Installing: zimbra-core zimbra-ldap zimbra-logger zimbra-mta zimbra-snmp zimbra-store zimbra-apache zimbra-spell The system will be modified. Continue? [N] Y Removing /opt/zimbra Removing zimbra crontab entry...done. Cleaning up zimbra init scripts...done. Cleaning up /etc/ld.so.conf...done. Cleaning up /etc/security/limits.conf...done. Finished removing Zimbra Collaboration Server. Installing packages zimbra-core......zimbra-core-8.6.0_GA_1153.RHEL6_6420141215151155.x86_64.rpm...done zimbra-ldap......zimbra-ldap-8.6.0_GA_1153.RHEL6_6420141215151155.x86_64.rpm...done zimbra-logger......zimbra-logger-8.6.0_GA_1153.RHEL6_6420141215151155.x86_64.rpm...done zimbra-mta......zimbra-mta-8.6.0_GA_1153.RHEL6_6420141215151155.x86_64.rpm...done zimbra-snmp......zimbra-snmp-8.6.0_GA_1153.RHEL6_6420141215151155.x86_64.rpm...done zimbra-store......zimbra-store-8.6.0_GA_1153.RHEL6_6420141215151155.x86_64.rpm...done zimbra-apache......zimbra-apache-8.6.0_GA_1153.RHEL6_6420141215151155.x86_64.rpm...done
40
http://digilib.mercubuana.ac.id/
zimbra-spell......zimbra-spell-8.6.0_GA_1153.RHEL6_6420141215151155.x86_64.rpm...done Operations logged to /tmp/zmsetup05182016-034753.log Installing LDAP configuration database...done. Setting defaults...
MX: mail.mercubuana.edu (192.168.10.1)
Interface: 192.168.10.1 Interface: 127.0.0.1 Interface: ::1 done. Checking for port conflicts ========================================================== Main menu 1) Common Configuration: 2) zimbra-ldap:
Enabled
3) zimbra-logger:
Enabled
4) zimbra-mta:
Enabled
5) zimbra-snmp:
Enabled
6) zimbra-store:
Enabled
+Create Admin User:
yes
+Admin user to create:
[email protected]
******* +Admin Password
UNSET
+Anti-virus quarantine user:
[email protected]
rcubuana.edu +Enable automated spam training: +Spam training user:
yes
[email protected]
+Non-spam (Ham) training user :
[email protected] +SMTP host:
mail.mercubuana.edu
+Web server HTTP port:
80
+Web server HTTPS port:
443
+Web server mode:
https
+IMAP server port:
143
+IMAP server SSL port:
993
41
http://digilib.mercubuana.ac.id/
+POP server port:
110
+POP server SSL port:
995
+Use spell check server:
yes
+Spell server URL:
http://mail.mercubuana.edu:7780/a
spell.php +Configure for use with mail proxy:
FALSE
+Configure for use with web proxy:
FALSE
+Enable version update checks:
TRUE
+Enable version update notifications: TRUE +Version update notification email: +Version update source email:
[email protected] [email protected]
+Install mailstore (service webapp): yes +Install UI (zimbra,zimbraAdmin webapps): yes 7) zimbra-spell:
Enabled
8) Default Class of Service Configuration: s) Save config to file x) Expand menu q) Quit Address unconfigured (**) items (? - help) 6 ========================================================== Store configuration 1) Status:
Enabled
2) Create Admin User:
yes
3) Admin user to create:
[email protected]
** 4) Admin Password 5)
Anti-virus
quarantine
UNSET user:
virus-
[email protected] 6) Enable automated spam training: 7) Spam training user: 8)
yes
[email protected]
Non-spam(Ham)
training
[email protected]
42
http://digilib.mercubuana.ac.id/
user:
9) SMTP host:
mail.mercubuana.edu
10) Web server HTTP port:
80
11) Web server HTTPS port:
443
12) Web server mode:
https
13) IMAP server port:
143
14) IMAP server SSL port:
993
15) POP server port:
110
16) POP server SSL port:
995
17) Use spell check server:
yes
18) Spell server URL:
http://mail.mercubuana.edu:7780/aspell.php
19) Configure for use with mail proxy:
FALSE
20) Configure for use with web proxy:
FALSE
21) Enable version update checks:
TRUE
22) Enable version update notifications:
TRUE
23) Version update notification email:
[email protected]
24) Version update source email:
[email protected]
25) Install mailstore (service webapp):
yes
26) Install UI (zimbra,zimbraAdmin webapps): yes Select, or 'r' for previous menu [r] 4 Password for
[email protected] (min 6 characters): [PKrSIskyTl] patronus ========================================================== Store configuration 1) Status:
Enabled
2) Create Admin User:
yes
3) Admin user to create:
[email protected]
4) Admin Password
set
5)
Anti-virus
quarantine
user:
virus-
[email protected] 6) Enable automated spam training: 7) Spam training user:
yes
[email protected]
8) Non-spam(Ham) training user:
[email protected]
43
http://digilib.mercubuana.ac.id/
9) SMTP host:
mail.mercubuana.edu
10) Web server HTTP port:
80
11) Web server HTTPS port:
443
12) Web server mode:
https
13) IMAP server port:
143
14) IMAP server SSL port:
993
15) POP server port:
110
16) POP server SSL port:
995
17) Use spell check server:
yes
18) Spell server URL:
http://mail.mercubuana.edu:7780/aspell.php
19) Configure for use with mail proxy:
FALSE
20) Configure for use with web proxy:
FALSE
21) Enable version update checks:
TRUE
22) Enable version update notifications:
TRUE
23) Version update notification email:
[email protected]
24) Version update source email:
[email protected]
25) Install mailstore (service webapp):
yes
26) Install UI (zimbra,zimbraAdmin webapps): yes Select, or 'r' for previous menu [r] R ========================================================== Main menu 1) Common Configuration: 2) zimbra-ldap:
Enabled
3) zimbra-logger:
Enabled
4) zimbra-mta:
Enabled
5) zimbra-snmp:
Enabled
6) zimbra-store:
Enabled
7) zimbra-spell:
Enabled
8) Default Class of Service Configuration: s) Save config to file x) Expand menu q) Quit
44
http://digilib.mercubuana.ac.id/
*** CONFIGURATION COMPLETE - press 'a' to apply Select from menu, or press 'a' to apply config (? - help) A Save configuration data to a file? [Yes] Y Save config in file: [/opt/zimbra/config.16189] Saving config in /opt/zimbra/config.16189...done. The system will be modified - continue? [No] Y Operations logged to /tmp/zmsetup05182016-095459.log Setting local config values...done. Initializing core config...Setting up CA...done. Deploying CA to /opt/zimbra/conf/ca ...done. Creating SSL zimbra-store certificate...done. Creating new zimbra-ldap SSL certificate...done. Creating new zimbra-mta SSL certificate...done. Installing mailboxd SSL certificates...done. Installing MTA SSL certificates...done. Installing LDAP SSL certificate...done. Initializing ldap...done. Setting replication password...done. Setting Postfix password...done. Setting amavis password...done. Setting nginx password...done. Setting BES searcher password...done. Creating server entry for mail.mercubuana.edu...done. Setting Zimbra IP Mode...done. Saving CA in ldap ...done. Saving SSL Certificate in ldap ...done. Setting spell check URL...done. Setting service ports on mail.mercubuana.edu...done. Setting zimbraFeatureTasksEnabled=TRUE...done. Setting zimbraFeatureBriefcasesEnabled=TRUE...done. Setting TimeZone Preference...done. Initializing mta config...done.
45
http://digilib.mercubuana.ac.id/
Setting services on mail.mercubuana.edu...done. Adding mail.mercubuana.edu to zimbraMailHostPool in default COS...done. Creating domain mail.mercubuana.edu...done. Setting default domain name...done. Creating domain mail.mercubuana.edu...already exists. Creating admin account
[email protected]. Creating root alias...done. Creating postmaster alias...done. Creating user
[email protected]. Creating user
[email protected]. Creating user
[email protected]. Setting spam training and Anti-virus quarantine accounts...done. Initializing store sql database... Setting zimbraSmtpHostname for mail.mercubuana.edu...done. Configuring SNMP...done. Setting up syslog.conf...done. Installing common zimlets... com_zimbra_date...done. com_zimbra_tooltip...done. com_zimbra_email...done. com_zimbra_clientuploader... com_zimbra_clientuploader...done. com_zimbra_mailarchive...done. com_zimbra_viewmail...done. com_zimbra_srchhighlighter...done. com_zimbra_phone...done. com_zimbra_attachcontacts...done. com_zimbra_webex...done. com_zimbra_proxy_config...done. com_zimbra_url...done. com_zimbra_adminversioncheck...done. com_zimbra_cert_manager...done.
46
http://digilib.mercubuana.ac.id/
com_zimbra_bulkprovision...done. com_zimbra_attachmail...done. com_zimbra_ymemoticons...done. Finished installing common zimlets. Restarting mailboxd...done. Creating galsync account for default domain...failed. You have the option of notifying Zimbra of your installation. This helps us to track the uptake of the Zimbra Collaboration Server. The only information that will be transmitted is: The VERSION of zcs installed (8.6.0_GA_1153_RHEL6_64) The ADMIN EMAIL ADDRESS created (
[email protected]) Notify Zimbra of your installation? [Yes] NO Notification skipped Setting up zimbra crontab...done. moving /tmp/zmsetup05182016-142254.log to /opt/zimbra/log configuration complete - press return to exit 4.2.
Pengujian Server. Pada tahap Pada tahap ini akan dilakukan pengujian seperti pada black box
test table. Pengujian Proyek Akhir ini menggunakan phpmailer, telnet, dan email header check. Untuk tahapan pengujian antara lain. 4.2.1. Pengujian network Connection Pada bagian pengujian network connection akan dibagi ketiga tahapan, yaitu sebagai berikut : 4.2.1.1.Mail Server 1 Pada Mail Server 1 akan diuji untuk network connection ke semua server dan computer user admin. Hasil pengujian network connection pada mail server 1 dapat dilihat pada beberapa gambar dibawah ini.
47
http://digilib.mercubuana.ac.id/
Gambar 4.4. Pengujian Network Mail Server 1 ke Mail Client Server
Gambar 4.5. Pengujian Network Mail Server 1 ke Mail Gateway
Gambar 4.6. Pengujian Network Mail Server 1 ke Mail Server 2
Gambar 4.7. Pengujian Network Mail Server 1 ke User Admin
48
http://digilib.mercubuana.ac.id/
4.2.1.2.Mail Server 2 Pada Mail Server 1 akan diuji untuk network connection ke semua server dan computer user admin. Hasil pengujian network connection pada mail server 1 dapat dilihat pada beberapa gambar dibawah ini.
Gambar 4.8. Pengujian Network Mail Server 2 ke Mail Client Server
Gambar 4.9. Pengujian Network Mail Server 2 ke Mail Gateway Server
Gambar 4.10. Pengujian Network Mail Server 2 ke Mail Server 1
Gambar 4.11. Pengujian Network Mail Server 2 ke User Admin
49
http://digilib.mercubuana.ac.id/
4.2.1.3.Email Gateway Pada Mail Server 1 akan diuji untuk network connection ke semua server dan computer user admin. Hasil pengujian network connection pada mail server 1 dapat dilihat pada beberapa gambar dibawah ini.
Gambar 4.12. Pengujian Network Mail Server Gateway ke Mail Client
Gambar 4.13. Pengujian Network Mail Server Gateway ke Mail Server 1
Gambar 4.14. Pengujian Network Mail Server Gateway ke Mail Server 2
Gambar 4.15. Pengujian Network Mail Server Gateway ke User Admin
50
http://digilib.mercubuana.ac.id/
4.2.2. Pengujian pengiriman email dari mail server 1 dan mail server 2 Pengujian pengiriman email dengan menggunakan console dari kedua email server tersebut. 4.2.2.1.Mail Server 1 Pada mail server 1 dilakukan pengujian untuk pengiriman email. Sehingga mail server 1 dapat didaftarkan pada email gateway untuk load balance dan fail over.
Gambar 4.16. Pengujian Pengiriman Email dari Mail 1 4.2.2.2.Mail Server 2 Pada mail server 1 dilakukan pengujian untuk pengiriman email. Sehingga mail server 1 dapat didaftarkan pada email gateway untuk load balance dan fail over.
51
http://digilib.mercubuana.ac.id/
Gambar 4.17. Pengujian Pengiriman Email dari Mail 2 4.2.3. Pengujian pembatasan akses ke mail server 1 dan mail server 2 Pengujian yang dilakukan dengan melakukan telnet ke mail server 1 dan mail server 2 dari IP address client yang tidak diizinkan untuk pengiriman email. 4.2.3.1.Mail Server 1 Dari konfigurasi relay pada bagian implementasi postfix, maka dilakukan pengujian pengiriman email dari IP yang tidak di izinkan untuk menggunakan email server 1 sehingga akan memberikan output berupa relay access denied.
Gambar 4.18. Pengujian Pembatasan akses penggunaan Mail 1
52
http://digilib.mercubuana.ac.id/
4.2.3.2.Mail Server 2 Dari konfigurasi relay pada bagian implementasi postfix, maka dilakukan pengujian pengiriman email dari IP yang tidak di izinkan untuk menggunakan email server 2 sehingga akan memberikan output berupa relay access denied.
Gambar 4.19. Pengujian Pembatasan akses penggunaan Mail 2 4.2.4. Pengujian load balance pada email gateway. Pengujian load balance yang dilakukan adalah untuk menganalisa stabilitas dan fault tolerant dari kinerja email gateway. Pengujian yang dilakukan dengan menggunakan dua buah tools yaitu : a. PHPMailer b. Pommo Email Blast Dari hasil pengujian tersebut akan dianalisa pada sisi header pada email yang telah terkirim pada email address list. 4.2.4.1.PHPMailer Untuk pengujian menggunakan PHPMailer maka dibuat simple script untuk pengiriman email dari phpmailer. Seperti di bawah ini.
53
http://digilib.mercubuana.ac.id/
require_once 'phpmailer/class.smtp.php'; require_once 'phpmailer/class.pop3.php'; $mail = new PHPMailer; $mail_body = 'This is The Test Email'; $mail->isSMTP(); $mail->Host = '192.168.10.2'; $mail->SMTPAuth = false; $mail->Port = 25; $mail->Username = ''; $mail->Password = ''; $mail->setFrom('
[email protected]'); $mail->Subject = "PHPMailer Simple database mailing list test"; $recipients
=
array("
[email protected]","
[email protected]","devi.mercubuana .edu","
[email protected]"); foreach ($recipients as $i => $mail_add) { $mail->addAddress($mail_add); $mail->Body = $mail_body.$i; if(!$mail->send()){ echo $mail->ErrorInfo; } else { echo "Mail Sent..."; } $mail->clearAddresses(); $mail->SmtpClose(); } ?>
54
http://digilib.mercubuana.ac.id/
Pada Script diatas terdapat konfigurasi untuk mendaftarkan konfigurasi email gateway seperti pada script dibawah ini. $mail->isSMTP(); $mail->Host = '192.168.10.2'; $mail->SMTPAuth = false; $mail->Port = 25; $mail->Username = ''; $mail->Password = ''; $mail->setFrom('
[email protected]'); $mail->Subject = "PHPMailer Simple database mailing list test"; Dan pada script dibuat alias list recipients seperti dibawah ini. $recipients
=
array("
[email protected]","
[email protected]","devi.mercubuana .edu","
[email protected]"); Pada script tersebut dibuat logic pemrograman untuk mengirimkan email yang akan dikirimkan ke address list recipient dan mensplit address recipient tersebut. Dan pada setiap pengiriman akan di close connection pada pengiriman emailnya. foreach ($recipients as $i => $mail_add) { $mail->addAddress($mail_add); $mail->Body = $mail_body.$i; if(!$mail->send()){ echo $mail->ErrorInfo; } else { echo "Mail Sent..."; } $mail->clearAddresses(); $mail->SmtpClose(); }
55
http://digilib.mercubuana.ac.id/
Terkahir dari script tersebut disimpan dengan nama index.php pada folder email yang terdapat di root apache. Dan diakses melalui web browser dengan cara. Http://192.168.10.2/email/index.php Jika email telah terkirm maka harus di check pada bagian email header dari email yang telah terkirim seperti dibawah ini.
Gambar 4.20. Pengujian PHPMailer – Mail Client 1
Gambar 4.21. Pengujian PHPMailer – Mail Client 2
Gambar 4.22. Pengujian PHPMailer – Mail Client 3
Gambar 4.23. Pengujian PHPMailer – Mail Client 4 Pada gambar – gambar dapat dilihat bahwa pada array address list pada PHPMailer Script yang dideskripsikan pada script tersebut secara berurut, maka
56
http://digilib.mercubuana.ac.id/
hasil dari pengujian tersebut juga berurutan sesuai round robin, stabilitas, dan fault tolerant pada load balance. Dari pengujian diatas dapat dilihat dan dianalisa bahwa rumus dari pengukuran load balance round robin bahwa jumlah email address dibagi jumlah server load balance sesuai dengan hasil pengujian dan tidak adanya kelebihan beban pada satu buah email server saja. 4.2.4.2.Pommo. Untuk pengujian menggunakan pommo simple email blast. Langkah awal yang harus dilakukan adalah login ke site pommo pada server email gateway seperti dibawah ini.
Gambar 4.25. Pommo Login Dan selanjutnya buat subscriber pada pommo dengan cara memilih menu subscriber.
57
http://digilib.mercubuana.ac.id/
Gambar 4.26. Pommo Menu Selanjutnya melakukan import file CSV yang berisi list email subscriber dengan memilih menu import.
Gambar 4.27. Pommo Menu Subscriber Berikut adalah tampilan menu import. Pada menu ini kita upload file csv yang berisi email list untuk subscriber.
58
http://digilib.mercubuana.ac.id/
Gambar 4.28. Pommo Menu Import Setelah file berhasil diimport maka yang perlu dilakukan adalah merefrensikan bahwa file yang diupload adalah email.
Gambar 4.29. Pommo Menu Import 2 Berikut adalah tampilan akhir proses import yang berisi keterangan import telah selesai.
59
http://digilib.mercubuana.ac.id/
Gambar 4.30. Pommo Menu Import 3 Selanjutnya adalah proses pengujian pengiriman email blast menggunakan pommo dengan memilih send pada mailing page.
Gambar 4.31. Pommo Menu Mailing 1 Jika sudah dipilih maka tampilan halaman akan beralih seperti dibawah ini. Dan perlu diinputkan subject dari email yang akan diblast dan juga nama pengirim beserta email pengirim. Jika sudah diisi klik tombol continue.
60
http://digilib.mercubuana.ac.id/
Gambar 4.32. Pommo Menu Mailing 2 Tahapan selanjutnya akan dilakukan pemilihan template untuk emailnya. Template yang akan dipakai pada tugas akhir ini adalah blank template dengan memilih tombol skip.
Gambar 4.33. Pommo Menu Mailing 3
61
http://digilib.mercubuana.ac.id/
Tahapan selanjutnya adalah mengisi pesan pada body email yang akan diblast.
Gambar 4.34. Pommo Menu Mailing 4 Dan tahapan terakhir adalah pengiriman email dengan memilih tombol send mailing.
Gambar 4.35. Pommo Menu Mailing 5 Berikut adalah proses pengiriman email blast menggunakan pommo.
Gambar 4.36. Pommo Menu Mailing 6
62
http://digilib.mercubuana.ac.id/
Dan dari proses pengiriman email di atas dilakukan pengujian load balance dengan cara melakukan check terhadap email header dari email yang diterima.
Gambar 4.37. Hasil Pengujian Load Balance – Email Client 1
Gambar 4.38. Hasil Pengujian Load Balance – Email Client 2
Gambar 4.39. Hasil Pengujian Load Balance – Email Client 3
Gambar 4.40. Hasil Pengujian Load Balance – Email Client 4 Dari keempat gambar diatas dapat dilihat bahwa fungsi load balance pada email gateway berfungsi pada simple applikasi email blast dengan menggunakan empat address list yang telah diimport untuk user subscriber, dan hasil dari pengujian tersebut juga berurutan sesuai round robin, stabilitas, dan fault tolerant pada load balance. Dari pengujian diatas dapat dilihat dan dianalisa bahwa rumus pengukuran load balance round robin bahwa jumlah email address dibagi jumlah server load balance sesuai dengan hasil pengujian dan tidak adanya kelebihan beban pada satu buah email server saja.
63
http://digilib.mercubuana.ac.id/
4.2.5. Pengujian Fail Over pada email gateway. Pengujian fail over dilakukan dengan du acara, yaitu :
Shutdown Mail 1 dan membiarkan Mail 2 masih menyala
Shutdown Mail 2 dan membiarkan Mail 1 masih menyala
Dari dua buah scenario di atas. Maka dilakukan pengujian dengan menggunakan console dan pengecheckan terhadap email header. 4.2.5.1.Console. Jika Mail1 down maka ketika di telnet akan selalu mengarah ke Mail2
Gambar 4.41. Hasil Pengujian Fail Over 1 – Mail Server 1 Down Maupun ketika Mail2 down maka akan selalu mengarah ke Mail1
Gambar 4.42. Hasil Pengujian Fail Over 2 – Mail Server 2 Down 4.2.6. BlackBox Testing Dari semua pengujian yang telah dilakukan maka dibuatlah blackbox testing table untuk merangkum pengujian yang telah dilakukan. Table 4.1. BlackBox Testing No. Skenario Pengujian
Hasil yang diharapkan
Checklist
Server Mail 1 1
Koneksi antar server
Server Mail 1 dapat terkoneksi Valid ke semua server.
64
http://digilib.mercubuana.ac.id/
2
SMTP
Server
dapat Server
mengirimkan email
Mail
mengirimkan
1 email
dapat Valid melalui
smtp localhost 3
SMTP Server dapat di Server akses dari server lainnya
Mail
2
dan
Server Valid
HAProxy dapat mengirimkan email melalui SMTP Mail 1
4
SMTP dapat
Server di
hanya Network selain yang di whitelist Valid
akses
dari pada SMTP Server tidak dapat
network yang di whitelist
menggunakan pengiriman email
Server Mail 2 1
Server Mail 2 dapat terkoneksi Valid
Koneksi antar server
ke semua server. 2
SMTP
Server
dapat Server
mengirimkan email
Mail
mengirimkan
2 email
dapat Valid melalui
smtp localhost 3
SMTP Server dapat di Server akses dari server lainnya
Mail
1
dan
Server Valid
HAProxy dapat mengirimkan email melalui SMTP Mail 2
4
SMTP dapat
Server di
hanya Network selain yang di whitelist Valid
akses
dari pada SMTP Server tidak dapat
network yang di whitelist
menggunakan pengiriman email
Server HA Proxy 1
Koneksi antar server
Server
HAProxy
dapat Valid
terkoneksi ke semua server. 2
Port
25
Untuk
Mail Server lain dapat melakukan Valid
Gateway dapat diakses akses ke port 25 dari server lain 3
Forwarding Port 25 ke Ketika di telnet port 25 akan di Valid Server lain
forward ke server yang di daftarkan
4
Load
Balance
Server Gateway
Email Load
Balance
pada
Email Valid
Gateway dapat berfungsi dengan
65
http://digilib.mercubuana.ac.id/
cara melihat dari hasil header email dan telnet 5
Fail Over Email Server Fail Over ketika Mail 1 down Valid Gateway
maka semua koneksi akan di forward ke mail 2, maupun ketika mail 2 down maka semua koneksi akan di forward ke mail 1
Email Client 1
Koneksi antar server
Server
HAProxy
dapat Valid
terkoneksi ke semua server. 2
DNS Server pada server Semua Server dapat melakukan Valid email client dapat di nslookup lookup
3
untuk
domain
mercubuana.edu
MX record pada server Semua Server dapat melakukan Valid email client dapat di check lookup
mx
record
untuk
mengetahui bahwa ada mailbox pada server tersebut
4
Pop3 Service pada email Email Client dapat menerima Valid client dapat menerima email yang dikirimkan email
5
email Email client dapat mengecheck Valid
Pengecheckan
header pada semua email email header bahwa email yang client yang di kirimkan di kirimkan dari semua server email oleh system
66
http://digilib.mercubuana.ac.id/