DAFTAR ISI
Halaman Judul.......................................................................................................... 1
Daftar Isi................................................................................................................... 2
Instalasi Linux Debian 5 (Lenny)............................................................................. 3
DNS Server............................................................................................................... 24
DHCP Server............................................................................................................ 32
Web Server............................................................................................................... 37
Virtual Host.............................................................................................................. 43
Mail Server............................................................................................................... 48
Proxy Server............................................................................................................. 58
DNS Server Master & Slave.................................................................................... 62
Daftar Pustaka.......................................................................................................... 68
2
INSTALASI LINUX DEBIAN 5 (LENNY)
Proses instalasi berbasis GUI (Graphical User Interface) tidak akan kita temui ketika kita menginstall Debian Lenny. Proses instalasi Debian Lenny ini sebetulnya hampir sama dengan proses instalasi Windows. Hanya saja main interfacenya yang berbeda. Jika kita sudah pernah melakukan proses instalasi Windows, anda tidak akan mengalami kesulitan untuk menginstall Debian Sarge ini. Proses yang berbeda dari keduanya hanya pada user interfacenya saja. Jika Windows menggunakan interface berbasis GUI nya namun Debian Lenny ini menggunakan interface berbasis text. Oya, tutorial saya kali ini saya tujukan bagi newbie/pemula dalam Debian, jadi tidak disarankan bagi anda yang sudah expert dalam Debian.
Untuk mempermudah instalasi, kita perlu membuat suatu desain jaringan yang akan kita buat. Mengapa kita perlu merencanakan desain jaringan nya terlebih dahulu? Sebab dengan kita merencakan jaringan seperti apa yang akan kita buat, kita pun tidak akan mengalami kesulitan dalam prosesnya nanti. Adapun desain jaringan yang akan kita buat meliputi hostname, IP Address, Gateway, dan lain-lain dengan topologi sebagai berikut :
3
Untuk detail informasi dari setiap komponen jaringan tersebut adalah :
A. Jaringan Internet
B. Server dengan identitas sebagai berikut :
Interface IP Address Netmask Gateway NS Hostname
Eth0 172.16.0.2 255.255.255.128 172.16.0.126 172.16.0.126 D4V1D
Eth1
C. Client, computer/laptop untuk melakukan pengujian terhadap setiap service yang diberikan oleh server.
Juga ada beberapa hal yang harus kita lakukan sebelum melanjutkan ke proses instalasi adalah :
1. Siapkan sebuah computer yang akan kita instalasi Debian Lenny ini. Siapkan dua buah interface jaringan ( LAN Card ) yang akan digunakan oleh computer tersebut untuk menghubungkan dirinya dengan jaringan local dan jaringan luar. Jaringan local dan jaringan luar sengaja kita siapkan untuk tujuan pengujian nantinya.
2. Atur BIOS agar membaca media CD-ROM pada saat booting. Masukkan segera CD Installer di media CD-ROM drive.
Kemudian setelah computer boot lewat installer Debian Lenny kiat akan disambut halaman pertama yang akan muncul seperti berikut :
4
Installer Boot MenuLalu pilih ‘Install’ dan proses instalasi pun berlangsung.
1. Pemilihan Bahasa
Pemilihan bahasa
2. Pemilihan Regional
5
Regional
Regional
6
Regional3. Pemilihan Keyboard
Pemilihan Keyboard
4. Konfigurasi Network Interface
4.1.Pemilihan Primary Interface
7
Primary Interface 4.2.Penentuan TCP / IP
TCP / IP
8
TCP / IP
4.3.Penentuan IP Address
IP Address
9
4.4.Netmask
Netmask
4.5.Gateway
Gateway
10
4.6.Name server address
Name server addresses
5. Konfigurasi Network
5.1.Hostname
Hostname
5.2.Domain
11
Domain Name
6. Konfigurasi Time Zone
Time zone
12
Time Zone
7. Partisi Hard disk
Partisi harddisk
13
Partisi harddisk
Partisi harddisk
14
Partisi harddisk
Partisi harddisk
15
Partisi harddisk
Partisi harddisk
16
Installing base system
8. Root Password
Root password
17
Root password
9. User Account
User account
18
User account
User password
19
Re-enter user password
10. Konfigurasi Package Manager
Scan another CD
20
Network mirror
11. Popularity Contest
Popularity Contest12. Pemilihan Paket Software
21
Paket Software
13. Instalasi Boot Loader
Boot Loader
22
Finish the installation
Selesai sudah proses instalasinya. Setelah reboot, login dengan username dan password seperti yang telah anda tentukan sebelumnya. Pada proses kali ini usernya ialah "user1" dan passwordnya "user1". Namun jika anda memilih untuk masuk sebagai root (pengguna/admin tertinggi), isikan "root" dan password seperti yang anda tentukan.
Log in Interface
23
DNS Server1. Apakah Itu DNS?
DNS (Domain Name Server) bekerja dengan konsep client server. Sebuah komputer yang menjalankan fungsi server disebut DNS atau name server dan komputer lain yang meminta penterjemahan hostname ke IP Address disebut sebagai client DNS. DNS umumnya diterapkan dengan menggunakan server terpusat yang disebut server DNS atau name server yang memiliki wewenang atau otoritas dalam mengelola beberapa nama domain dan mengacu kepada beberapa domain lainnya yang dikelola server DNS lain.Ketika komputer client meminta informasi IP Address suatu hostname ke nameserver, biasanya melalui port 53. Kemudian nameserver mencoba menterjemahkan berdasarkan library resolv-nya, apakah hostname merupakan nama domain yang dikelola oleh nameserver dan name server memberikan jawaban berdasarkan cache dari data informasi yang sama yang pernah ditanyakan sebelumnya dan berhasil dijawab.
2. Instalasi
Software utama untuk membangun sebuah DNS server adalah BIND (Berkeley Internet Name Domain). Software ini menjadi aplikasi default aplikasi DNS dalam semua distribusi Linux. Lakukan proses instalasi bind dengan perintah berikut:
root@server:# apt-get install bind9
3. Konfigurasi
Beberapa file konfigurasi dan direktori utama DNS server yang harus kita perhatikan adalah:(a) /etc/networking/interface(b) /etc/bind/named.conf.local (c) /etc/bind/forward(d) /etc/bind/reverse(e) /etc/resolv.conf
a. Konfigurasi IP EthernetPertama-tama kita perlu men-setting IP pada ethernet kita supaya memiliki ID terlebih dahulu dan merupakan syarat dasar untuk setting berikutnya.Untuk setting IP kita dapat memasukkan perintah :
root@server:# nano /etc/network/interfacesehingga settingnya kira-kira menjadi seperti ini
# The primary network interface
auto eth0iface eth0 inet static address 172.16.16.1
24
netmask 255.255.255.128 network 172.16.16.0 broadcast 172.16.16.127 gateway 172.16.16.126 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 172.16.16.1 dns-search bloganakkomputer.com
auto eth1iface eth1 inet static address 192.168.1.1 netmask 255.255.255.192 network 192.168.1.0 broadcast 192.168.1.63Ingat, setting IP dan lain-lain harus di sesuaikan dengan jaringan yang akan diterapkan.
b. Konfigurasi Zone (Domain)Konfigurasi zone atau domain terdiri dari dua mekanisme yang berbeda yaitu forward dan reverse. Konfigurasi forward memetakkan IP Address => hostname dan file reverse memetakkan hostname => IP Address.Dalam tutorial ini zone atau domain yang akan kita kelola bernama bloganakkomputer.com. Untuk mendaftarkan file zone tersebut, lakukan editing pada file /etc/bind/named.conf.local dengan cara :root@server:# nano /etc/bind/named.conf.local
Tambahkan rangkaian konfigurasi berikut untuk mendaftarkan domain yang kita kelola. zone "bloganakkomputer.com" { type master; file "/etc/bind/forward";};
zone "16.16.172.in-addr.arpa" { type master; file "/etc/bind/reverse";};
c. Konfigurasi file forwardBuat dahulu sebuah file yang bernama forward di direktori /etc/bind/. Lakukan dengan perintah berikut root@server:# nano/etc/bind/forward
25
Sesuaikan isi dari file tersebut dengan identitas hostname pada zone yang akan kita kelola, seperti terlihat pada file berikut:
; BIND data file for local loopback interface;$TTL 604800@ IN SOA bloganakkomputer.com. root. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL;@ IN NS bloganakkomputer.com.@ IN A 172.16.16.1www IN CNAME @mail IN CNAME @
d. Konfigurasi file reverseSelain file forward kita pun harus menyiapkan sebuah file yang bernama reverse di direktori /etc/bind/. Lakukan dengan perintah berikut:root@server:# nano /etc/bind/reverseIsi dari file tersebut seperti berikut, sesuaikan data pada file reverse tersebut dengan data yang tercatat di file forward sebelumnya.
; BIND data file for local loopback interface;$TTL 604800@ IN SOA bloganakkomputer.com. root. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL;@ IN NS bloganakkomputer.com.1 IN PTR @
e. Konfigurasi file resolvJuga, jangan lupa untuk menyesuaikan resolv.conf dengan name server yang telah kita buat.Masuk dan edit file resolv.conf dengan cara :root@server:# nano /etc/resolv.conf Dan sesuaikan sehingga menjadi :search bloganakkomputer.comdomain bloganakkomputer.comnameserver 172.16.16.1
26
f. RestartSetelah selesai pengeditan file, lakukan re-start pada file tersebut supaya running dengan setting seperti yang kita harapkan.Restart networking dengan cara : root@server:# etc/init.d/networking restart Restart bind dengan cara : root@server:# etc/init.d/bind9 restart
4. Pengujian1. Pada komputer server/terminal utama, kita dapat men-cek kinerja DNS server yang telah kita buat dengan cara
root@server:# nslookup bloganakkomputer.comServer: 172.16.16.1Address: 172.16.16.1#53
Name: bloganakkomputer.comAddress: 172.16.16.1
Pengujian dengan nslookup
2. Pada komputer client, setting IP pada range seperti server dan dapat kita ping NS (name server) tersebut dengan cara, masuk ke comand prompt windows dan ping :
ping bloganakkomputer.com
Pengujian dari client
27
DHCP (Dynamic Host Configuration Protocol) adalah sebuah mekanisme yang memunkinkan sebuah server untuk memberikan IP Address secara dinamik bagi client. Client melakukan permintaan IP Address kepada server, dan server memberikan alokasi bagi si client tersebut. Mekanisme ini akan sangat memberikan keuntungan bagi manajemen jaringan di karenakan proses setting IP Address tidak harus dilakukan manual untuk setiap client yang ada.
1. Instalasi
Software yang diperlukan untuk membuah sebuah service DHCP adalah dhcp3-server. Untuk melakukan instalasi dhcp3-server lakukan perintah: D4V1D:~# mount /dev/dvd /cdrom (berfungsi untuk mengenalkan cd installernya / proses mounting)
D4V1D:~# apt-get install dhcp3-server (untuk proses instalasi)
2. Konfigurasi
File konfigurasi dhcp3-server terletak di file /etc/dhcp3/dhcpd.conf. Gunakan editor nano untuk melakukan editing terhadap file konfigurasi tersebut. Sebelum melakukan konfigurasi DHCP Server, beberapa hal harus kita perhatikan diantaranya:
1. Alokasi IP Address yang akan diberikan kepada client harus berada satu network dengan IP Address server2. Tentukan rentang IP Address yang akan diberikan kepada client tersebut3. Alokasi IP Address untuk si client harus pula dilengkapi dengan subnet, netmask, dns server, gateway, broadcast
Edit file dhcpd.conf dengan perintah: D4V1D:~# nano /etc/dhcp3/dhcpd.conf
Contoh konfigurasi DHCP yang saya buat, sesuai dengan IP yang telah kita setting pada pembuatan Router sebagai berikut.
# A slightly different configuration for an internal subnet. subnet 192.168.1.0 netmask 255.255.255.192 { range 192.168.1.10 192.168.1.20; option domain-name-servers 172.16.16.1; option domain-name "bloganakkomputer.com"; option routers 192.168.1.1; option broadcast-address 192.168.1.63; default-lease-time 600; max-lease-time 7200;}
28
Screenshoot dhcpd.conf
Jangan lupa lakukan proses restart terhadap service setiap kali kita melakukan perubahan padafile konfigurasi:D4V1D:~# /etc/init.d/dhcp3-server restart
3. Pengujian
Pengujian di ClientUntuk melakukan pengujian di sisi client, beberapa hal harus dilakukan diantaranya:1. Pastikan server dan client saling terkoneksi2 . Lakukan proses pengaturan di sisi client bahwa settip IP Address di lakukan secara automatic.
1. Ikuti langkah-langkah berikut untuk melakukan setting di sisi client: Klik menu start - Control Panel Pilih Network Connection Pilih Local Area Network - klik kanan mouse - pilih Properties Pilih Internet Protocol (TCP/IP) - Pilih Properties Pilih opsi Obtain an IP address automatically
29
Pilih opsi Obtain DNS server address automatically - tekan tombol OK
2. Setelah langkah diatas dilakukan, kita harus melakukan pengujian terhadap layanan service DHCP dari server. Ikuti langkah berikut:
a) Klik menu start - run ketik "cmd" . Maka akan muncul halaman dos promptb) Pada halaman Dos prompt tersebut lakukan perintah ipconf ig /release, pastikan bahwa IP
address dari interface berubah menjadi 0.0.0.0c) Masih pada halaman yang sama ketikkan perintah ipconf ig /renew untuk memperoleh IP
Address dari server.d) Bila tidak terjadi kesalahan seharusnya client sudah mendapat IP Address dari server.e) Perhatikan gambar berikut yang membuktikan bahwa DHCP Server telah bekerja dan
client memperoleh IP Address dari server.
30
Jika kita lihat Propertiesnya akan terlihat sebagai berikut.
Lalu coba kita ping gatewaynya..
31
Jika hingga langkah ini kita telah mendapat IP dari server dan ping gateway lancar berarti DHCP Server yang kita buat telah dapat berjalan dengan baik.Sekian tutorial tentang DHCP server dan selamat mencoba.
32
DHCP ServerDHCP (Dynamic Host Configuration Protocol) adalah sebuah mekanisme yang memunkinkan sebuah server untuk memberikan IP Address secara dinamik bagi client. Client melakukan permintaan IP Address kepada server, dan server memberikan alokasi bagi si client tersebut. Mekanisme ini akan sangat memberikan keuntungan bagi manajemen jaringan di karenakan proses setting IP Address tidak harus dilakukan manual untuk setiap client yang ada.
1. Instalasi
Software yang diperlukan untuk membuah sebuah service DHCP adalah dhcp3-server. Untuk melakukan instalasi dhcp3-server lakukan perintah: D4V1D:~# mount /dev/dvd /cdrom (berfungsi untuk mengenalkan cd installernya / proses mounting)
D4V1D:~# apt-get install dhcp3-server (untuk proses instalasi)
2. Konfigurasi
File konfigurasi dhcp3-server terletak di file /etc/dhcp3/dhcpd.conf. Gunakan editor nano untuk melakukan editing terhadap file konfigurasi tersebut. Sebelum melakukan konfigurasi DHCP Server, beberapa hal harus kita perhatikan diantaranya:
1. Alokasi IP Address yang akan diberikan kepada client harus berada satu network dengan IP Address server2. Tentukan rentang IP Address yang akan diberikan kepada client tersebut3. Alokasi IP Address untuk si client harus pula dilengkapi dengan subnet, netmask, dns server, gateway, broadcast
Edit file dhcpd.conf dengan perintah: D4V1D:~# nano /etc/dhcp3/dhcpd.conf
Contoh konfigurasi DHCP yang saya buat, sesuai dengan IP yang telah kita setting pada pembuatan Router sebagai berikut.
# A slightly different configuration for an internal subnet. subnet 192.168.1.0 netmask 255.255.255.192 { range 192.168.1.10 192.168.1.20; option domain-name-servers 172.16.16.1; option domain-name "bloganakkomputer.com"; option routers 192.168.1.1; option broadcast-address 192.168.1.63; default-lease-time 600; max-lease-time 7200;
33
}
Screenshoot dhcpd.conf
Jangan lupa lakukan proses restart terhadap service setiap kali kita melakukan perubahan padafile konfigurasi:D4V1D:~# /etc/init.d/dhcp3-server restart
3. Pengujian
Pengujian di ClientUntuk melakukan pengujian di sisi client, beberapa hal harus dilakukan diantaranya:1. Pastikan server dan client saling terkoneksi2 . Lakukan proses pengaturan di sisi client bahwa settip IP Address di lakukan secara automatic.
1. Ikuti langkah-langkah berikut untuk melakukan setting di sisi client: Klik menu start - Control Panel Pilih Network Connection Pilih Local Area Network - klik kanan mouse - pilih Properties Pilih Internet Protocol (TCP/IP) - Pilih Properties Pilih opsi Obtain an IP address automatically Pilih opsi Obtain DNS server address automatically - tekan tombol OK
34
2. Setelah langkah diatas dilakukan, kita harus melakukan pengujian terhadap layanan service DHCP dari server. Ikuti langkah berikut:
(a) Klik menu start - run ketik "cmd" . Maka akan muncul halaman dos prompt(b) Pada halaman Dos prompt tersebut lakukan perintah ipconf ig /release, pastikan bahwa
IP address dari interface berubah menjadi 0.0.0.0(c) Masih pada halaman yang sama ketikkan perintah ipconf ig /renew untuk memperoleh
IP Address dari server.(d) Bila tidak terjadi kesalahan seharusnya client sudah mendapat IP Address dari server.
Perhatikan gambar berikut yang membuktikan bahwa DHCP Server telah bekerja dan client memperoleh IP Address dari server.
35
Jika kita lihat Propertiesnya akan terlihat sebagai berikut.
Lalu coba kita ping gatewaynya..
Jika hingga langkah ini kita telah mendapat IP dari server dan ping gateway lancar berarti DHCP Server yang kita buat telah dapat berjalan dengan baik.Sekian tutorial tentang DHCP server dan selamat mencoba.
36
Web Server
Web atau World Wide Web (WWW) merupakan salah satu layanan internet yang paling populer. Bisa dikatakan, web adalah "wajahnya internet". Berbagai hal dapat ditampilkan di halaman web. Mulai dari text, gambar, video, music dan sebagainya. Protokol bernama HTTP (Hyper Text Transfer Protocol) bertanggung jawab menangani proses komunikasi antara client web dan server web.Kita akan belajar membangun web server menggunakan Apache (http://apache.org). Apache memerlukan DNS server. Proses resolve (konversi) hostname menjadi IP Address dilakukan oleh DNS server. Untuk setting DNS server sendiri dapat dilihat DISINI. Sehingga saya anggap, DNS server sudah terinstall dengan baik dan akan saya hubungkan dengan Web Server ini dengan nama bloganakkomputer.com.1. InstalasiPertama kali kita harus menginstall apache2 yang merupakan web server, php5 beserta lynx yang
merupakan browser untuk mengujinya.Perintahnya :D4V1D:~# apt-get install apache2 php5 lynx2. Konfigurasi Virtual HostJenis virtual host yang paling banyak digunakan adalah Name Based Virtual Host. Dengan fitur
ini maka memungkinkan satu server memiliki lebih dari satu nama virtual. Fitur virtual host ini sering dimanfaatkan untuk jasa web hosting. Fitur virtual host ini harus ditambahkan di file /etc/apache2/sites-available/default.
Sebelum kita konfigurasi, kita backup dahulu dengan cara,D4V1D:~# cp /etc/apache2/sites-available/default default2
Kemudian kita edit file default apache dan menyesuikan setting sesuai yang kita kehendaki, caranyaD4V1D:~# nano /etc/apache2/sites-available/defaultDan tambahkan baris sehingga menjadi berikut
ServerAdmin webmaster@localhost
37
ServerName www.bloganakkomputer.com DocumentRoot /var/www/
Konfigurasi file "default" Apache2 Restart apache2 dengan perintah
D4V1D:~# /etc/init.d/apache2 restart Kemudian edit file /var/www/index.html dengan perintah
D4V1D:~# nano /var/www/index.htmlMenjadiSelamat Datang di Blog Anak Komputer
3. Pengujiana. Apache Server
Setiap kali anda melakukan proses editing terhadap file konfigurasi, pastikan anda selalu melakukan restart terhadap setiap service yang bersesuian. Sebagai catatan, sebaiknya lakukan konfigurasi sedikit-demi-sedikit kemudian lakukan proses restart. Hal tersebut dilakukan untuk menghindari kegagalan service akibat kesalahan konfigurasi.
1. Pengujian dari computer server secara langsungUntuk pengujian secara langsung dari tempat server dapat kita lakukan dengan cara,D4V1D:~# lynx www.bloganakkomputer.comDan hasilnya seperti gambar di bawah ini.
38
Pengujian dari server dengan Lynx
2. Pengujian dari clientUntuk pengujian dengan cara ini, pastikan IP client disetting dengna benar dan pastikan sudah terhubung ke server dengan baik dengan cara ping server.Lalu dengan browser computer client (Mozilla Firefox, Opera, Internet Explorer, dll) masukkan www.bloganakkomputer.com di bagian address. Kemudian akan muncul seperti gambar di bawah.
39
Pengujian dari komputer client dengan browser
b. PHP5Untuk uji coba apakah php sudah dapat berjalan dengan baik kita perlu beberapa setting dahulu.• Hapus file index.html dengan cara
D4V1D:~# rm /var/www/index.html• Buat file index.php
D4V1D:~# nano /var/www/index.php• Isi dengan
phpinfo();?>
• Simpan dan keluar.• Uji di computer server dengan
D4V1D:~# lynx www.bloganakkomputer.com
40
Pengujian PHP dari server• Dan pada computer client, dengan browser masukkan alamat www.bloganakkomputer.com
Pengujian PHP dari client
Jika hasil uji kita sudah sesuai seperti di atas, maka dapat dipastikan web server kita sudah berjalan dengan baik (apache maupun php nya). Tinggal kita isi kontennya supaya web server
41
dapat terisi halaman-halaman web yang cantik. Nah cara memberikan kontennya, kita desain dahulu dengan web maker seperti Microsoft Frontpage ataupun Macromedia Dreamwaver, lalu dapat kita upload dengan teknik FTP atau dengan teknik lain. Untuk cara upload nya, mungkin akan saya jelaskan di kesempatan yang lain.
42
Virtual HostUntuk sesi kali ini, saya ingin berbagi konfigurasi Virtual Host yang merupakan lanjutan dari
Web Server. Namun sebelumnya saya anggap dahulu bahwa Web Server, Mail Server dan DNS
Server yang akan kita buat virtual host sudah terinstall dan dikonfigurasi serta dapat berjalan
dengan lancar.
Ok, langsung saja untuk konfigurasi Virtual Host ikuti langkah2 berikut.
1. Konfigurasi
• Edit apache2
D4V1D:~# nano /etc/apache2/sites-available/default
• Ubah dan tambahkan dengan domain yang kita buat pada bagian paling bawah. Karena saya
akan membuat www.bloganakkomputer.com, mail.bloganakkomputer.com,
download.bloganakkomputer.com maka konfigurasinya akan menjadi:
43
44
• Buat juga folder untuk subdomain download (sebab saya membuat domain download.bloganakkomputer.com, jika subdomain anda berbeda, tinggal sesuikan saja).D4V1D:~# mkdir /home/download
• Restart apache2D4V1D:~# /etc/init.d/apache2 restart
• Buat file index untuk www.bloganakkomputer.com (tapi biasanya sudah ada file default untuk www ini)D4V1D:~# nano /var/www/index.htmlIsi script html sesuai yang kita inginkan (dapat juga dengan php script). ContohnyaSelamat Datang di Blog Anak Komputer
• Buat file index juga untuk download.bloganakkomputer.com.D4V1D:~# nano /var/www/index.htmlIsi script html sesuai yang kita inginkan (dapat juga dengan php script). ContohnyaIni adalah halaman Download Bloganakkomputer
• Untuk index mail.bloganakkomputer.com tidak perlu dibuat sebab kita hanya mengarahkan saja ke index squirrelmail yang telah kita buat.
2. Pengujian
Untuk pengujian, akan saya coba dari computer client dengan browser Mozilla Firefox (atau dapat dengan browser yang lain).
Pertama buka www.bloganakkomputer.com, maka akan keluar:
45
Lalu kita buka mail.bloganakkomputer.com dan akan keluar:
Dan yang terakhir kita buka download.bloganakkomputer.com dan akan keluar:
46
Jika telah berhasil keluar halaman sesuia yang kita buat, berarti Virtual Host kita telah bekerja dengan baik. Namun jika belum keluar, cek sekali lagi mungkin konfigurasi apache2 atau file index yang kita buat salah tempat.Sekian.
47
Mail Server
E-mail merupakan aplikasi internet yang banyak digunakan saat ini untuk komunikasi dua arah. Selain karena kemudahan dalam penggunaannya juga karen kemurahan teknologi yang ditawarkan oleh email ini. E-mail singkatan dari electronic mail juga dapat dianalogikan dengan pengiriman surat yang umum digunakan saat ini melalui kantor pos, atau melalui jasa pengirim surat atau barang. Pengiriman email dilakukan melalui perangakat elektronik seperti HP/PDA.Proses pengiriman/penerimaan e-mail melibatkan protokol Simple Mail Transfer Protocol (SMTP) dan Post Office Protocol verson 3 (POP3). Protokol SMTP bertugas untuk mempros-es pengiriman mail (Outgoing mail) dan PHP3 bertugas untuk memproses penerimaan mail (Incoming mail).Jika user atau pemilik e-mail tidak sedang aktif/off-line untuk mengakses e-mail, maka e-mail yang tertuju kepadanya akan ditampung sementara oleh server e-mail sampai pemilik email tersebut mengaksesnya. Hal ini bisa terjadi karena adanya protokol POP3.Untuk instalasi kali ini saya asumsikan bahwa DNS server sudah terinstall dengan baik, dan jika ingin melihat konfigurasi DNS server sebelumnya dapat dilihat disini.
Langkah-Langkah membuat mail server seperti berikut. InstalasiPostfix adalah aplikasi yang akan kita installkan untuk membangung sebuah mail server. Untuk melengkapi mail server kita harus menginstallkan software lain yaitu php5, courier-pop, courier-imap, dan Squirrelmail.a. PerintahnyaD4V1D:~# apt-get install postfix courier-imap courier-pop php5 squirrelmailb. Maka akan keluar pilihan Configuring courier-base
48
Pilih Noc. Lalu keluar Postfix Configuration, pilih Local Only (sebab kita hanya akan menginstall mail
server dalam skala local sebagai uji coba dahulu).
49
d. Untuk system mail name masukkan bebas, dan saya pilih mail.bloganakkomputer.com
Konfigurasia. Konfigurasi postfix pada file main.cf
D4V1D:~# nano /etc/postfix/main.cfTambahkan tanda # pada bagian mydestination dan mailbox_command.Tambahkan pada baris terakhirhome_mailbox = Maildir/Sehingga akan menjadi seperti gambar berikut.
b. Kemudian masuk direktori skel dan buat direktori MaildirD4V1D:~# cd /etc/skel/D4V1D:/etc/skel# maildirmake Maildir
c. Konfigurasi squirrelmailBuat konfigurasi untuk squirrelmail.
50
D4V1D:~# squirrelmail-configureKemudian akan muncul
Masukkan commandCommand >> dLalu ketik courierCommand >> courierLalu akan keluar konfigurasi imap_server_type = courierdefault_folder_prefix = INBOX.trash_folder = Trashsent_folder = Sentdraft_folder = Draftsshow_prefix_option = falsedefault_sub_of_inbox = falseshow_contain_subfolders_option = falseoptional_delimiter = .delete_folder = true
Press any key to continue...Tekan enterSave dataCommand >> sLalu QuitCommand >> q
d. Buat Virtualhost squirrelmail dengan cara edit /etc/apache2/apache2.confD4V1D:~# nano /etc/apache2/apache2.confPada baris terakhir tambahkan,Include /etc/squirrelmail/apache.confSehingga menjadi
51
e. Restart ApacheD4V1D:~# /etc/init.d/apache2 restart
PengujianA. Dari computer server
D4V1D:~# lynx bloganakkomputer/squirrelmailSehingga akan keluar
Untuk uji coba apakah mail server sudah dapat berjalan dengan benar, kita perlu login, maka kita akan membuat user dahulu dari server dengan perintahD4V1D:~# adduser angela
Adding user `angela' ...Adding new group `angela' (1003) ...Adding new user `angela' (1003) with group `angela' ...
52
Creating home directory `/home/angela' ...Copying files from `/etc/skel' ...Enter new UNIX password:Retype new UNIX password:passwd: password updated successfullyChanging the user information for angelaEnter the new value, or press ENTER for the default Full Name []: Room Number []: Work Phone []: Home Phone []: Other []:Is the information correct? [Y/n] y
Untuk melakukan test konfigurasi mail server pada local mesin (server) ikuti langkah-langkahdi bawah ini :
• Masuk ke localmesin
D4V1D:~# telnet localhost 25
Trying 127.0.0.1...Connected to localhost.Escape character is '^]'.220 bloganakkomputer.com ESMTP Postfix (Debian/GNU)
• kemudian ketikan perintah di bawah iniAnda : ehlo virtual.test250-bloganakkomputer.com250-PIPELINING250-SIZE 10240000250-VRFY250-ETRN250-STARTTLS250-ENHANCEDSTATUSCODES250-8BITMIME250 DSN
Anda: mail from:[email protected]: 250 2.1.0 Ok
Anda: rcpt to:[email protected]: 250 2.1.5 Ok
Anda: dataServer: 354 End data with .
Anda: Subject:mencoba kirim email
53
Hai,...Namaku Angela. (tanda titik)Server: 250 2.0.0 Ok: queued as 17B2F503BA
Anda: quitServer: 221 2.0.0 Bye
Screenshoot Langkah Telnet
54
Langkah di atas merupakan langkah untuk mengirim email ke [email protected] yang merupakan user default (saat instalasi) dengan user [email protected] yang merupakan user kedua dengan program telnet.Apakah email di atas telah terkirim ke user david? Mari kita cek dari computer client.
B. Dari computer clientDari computer client dengan browser, buka http://bloganakkomputer.com/squirrelmailMasukkan username dan passwordnya, enter.
Buka Inbox dan cek Inbox.
55
Coba kita buka.
Lalu coba balas, dengan memilih reply.
56
Kemudian logout dan login dengan user angela.Cek Inboxnya, bila sudah terkirim, maka mail server yang kita bangun telah berhasil.Sampai langkah ini, bila proses mengirim (baik dari telnet maupun dari browser internet client) dan menerima telah berhasil, maka dapat kita pastikan mail server telah dapat berjalan lancar.Namun sebenarnya ada yang masih kurang dengan alamat domainnya. Kita harus memasukkan alamat http://bloganakkomputer.com/squirrelmail untuk dapat mengaksesnya. Bagaimana caranya, supaya untuk dapat mengaksesnya dengan alamat http://mail.bloganakkomputer.com/ ?Akan saya bahas di bagian berikutnya pada bagian Virtual Host.
57
Proxy Untuk Sekolahan
Kali ini saya akn menshare pembuatan proxy yang saya lakukan untuk keperluaan sekolah, akan tetapi tulisan ini bisa anda terapan di tempat usaha anda (warnet misalnya) atau perusahaan anda. untuk proxy kali ini saya gabung dengan router sehingga langsung terintegrasi router dengan proxy. langsung aja deh.1. Install Distro Debian anda (mode text ya)Soale kalau untuk anak tkj aku suruh buat dengan mode text, kalau untuk anda terserah deh.
2. kalau sudah kita lanjutkan dengan setting proxy kita3. Install paket
#apt-get install squid
4. Stop services squid
#/etc/init.d/squid stop
5. Setting squid.conf kalau saya buat aku hapus semua dan aku ganti dengan ini
http_port 3128 transparenticp_port 3130udp_incoming_address 0.0.0.0udp_outgoing_address 255.255.255.255hierarchy_stoplist cgi-bin ?acl QUERY urlpath_regex cgi-bin \?no_cache deny QUERY#PENDEFINISIAN CACHEcache_mem 1000 MBcache_swap_low 90cache_swap_high 95connect_timeout 1 minutes
58
negative_ttl 5 minutesread_timeout 15 minutesrequest_timeout 5 minutespersistent_request_timeout 1 minutesclient_lifetime 5 daypconn_timeout 120 secondsshutdown_lifetime 30 secondsmaximum_object_size 20480 KBminimum_object_size 0 KBmaximum_object_size_in_memory 4096 KBipcache_size 1024ipcache_low 90ipcache_high 95fqdncache_size 1024cache_replacement_policy lrumemory_replacement_policy lrucache_dir ufs /var/spool/squid 50000 16 256cache_access_log /var/log/squid/access.logcache_log /var/log/squid/cache.logcache_store_log /var/log/squid/store.loglog_ip_on_direct ondebug_options ALL,1client_netmask 255.255.255.255ftp_user Squid@ftp_list_width 32ftp_passive onftp_sanitycheck onftp_telnet_protocol onredirect_children 10auth_param basic children 10auth_param basic realm Squid proxy-caching web serverauth_param basic credentialsttl 2 hoursauth_param basic casesensitive offrefresh_pattern ^ftp: 1440 20% 10080refresh_pattern ^gopher: 1440 0% 1440refresh_pattern . 0 20% 4320quick_abort_min 16 KBquick_abort_max 16 KBquick_abort_pct 95##Memblock Akses Internet dari jam 18:00 sore sampai jam 08:00 pagi#acl not-akses time MTWHFA 00:59-07:00 18:00-24:00##Memblock Domain terlarangacl kata_1 dstdomain "/etc/squid/situs"#Memblock Kata - kata terlarangacl kata_2 url_regex -i "/etc/squid/kata"acl all src 0.0.0.0/0.0.0.0
59
acl manager proto cache_objectacl localhost src 127.0.0.1/255.255.255.255acl to_localhost dst 127.0.0.0/8acl SSL_ports port 443 563 6667 7000acl Safe_ports port 80acl Safe_ports port 81acl Safe_ports port 21acl Safe_ports port 443 563acl Safe_ports port 70acl Safe_ports port 210acl Safe_ports port 1025-65535acl Safe_ports port 280acl Safe_ports port 488acl Safe_ports port 591acl Safe_ports port 777 110acl Safe_ports port 4461acl Safe_ports port 5050acl CONNECT method CONNECThttp_access deny kata_1http_access deny kata_2#http_access deny not-akseshttp_access allow manager localhostacl sekolahan src 192.168.100.1/25acl bebaspakai src 192.168.100.128/25http_access allow sekolahanhttp_access allow bebaspakaihttp_access deny managerhttp_access deny !Safe_portshttp_access deny CONNECT !SSL_portshttp_access deny allhttp_reply_access allow allicp_access allow allmiss_access allow allcache_mgr adminvisible_hostname xwaja.web.idlogfile_rotate 10buffered_logs offsnmp_port 3401snmp_access allow localhostsnmp_access deny allsnmp_access deny allcoredump_dir /var/spool/squidie_refresh on##Delay poolsacl download url_regex -i ftp \.exe$ \.mp3$ \.mp4$ \.tar.gz$ \.gz$ \.tar.bz2$ \.rpm$ \.zip$ \.rar$
60
acl download url_regex -i \.avi$ \.mpg$ \.mpeg$ \.rm$ \.iso$ \.wav$ \.mov$ \.dat$ \.mpe$ \.mid$acl download url_regex -i \.midi$ \.rmi$ \.wma$ \.wmv$ \.ogg$ \.ogm$ \.m1v$ \.mp2$ \.mpa$ \.wax$acl download url_regex -i \.m3u$ \.asx$ \.wpl$ \.wmx$ \.dvr-ms$ \.snd$ \.au$ \.aif$ \.asf$ \.m2v$acl download url_regex -i \.m2p$ \.ts$ \.tp$ \.trp$ \.div$ \.divx$ \.mod$ \.vob$ \.aob$ \.dts$acl download url_regex -i \.ac3$ \.cda$ \.vro$ \.deb$delay_pools 1delay_class 1 1delay_parameters 1 16000/16000delay_access 1 allow downloaddelay_access 1 deny all
6. Kita buat situs dan kata yang akan di blok untuk situs
#nano /etc/squid/situs
Isi kan file tersebut :
seksbebas.com
facebook.com
#nano /etc/squid/kata
Isi kan file tersebut :
sex
ngentot
7. Membuat swap squid
#squid -z
8. Konfigurasi rc.local
Beri tambahan di atas exit 0
iptables -t nat -A PREROUTING -s 192.168.78.0/24 -p tcp --dport 80 -j REDIRECT --to-ports 3128
untuk ip 192.168.78.0 diganti alamat network ip yang ke client9. Restart pc anda
61
DNS Server Master & Slave
Tanpa banyak penjelasan lengkap tentang DNS anda bisa lihat di Wikipedia. Pada pembahasan kali ini akan dijelaskan bagaimana membuat DNS server master dan slave untuk menangani satu domain atau lebih. Contoh kasus disini adalah domain yang saya beli kurang hampir dua minggu. Domain web ini yaitu “mbalelo.info”. Saya beli cuma 25 rb di Ardhosting. Cukup murahkan untuk sebuah experiman. Fasilitas control panel termasuk lengkap sehingga kita bisa assign child nameserver untuk domain ini dengan mudah.
Untuk domain ini child nameserver yang saya assign adalah ns1.mbalelo.info untuk ip 124.81.224.211 dan ns2.mbalelo.info 124.81.224.210. Sebenarnya sangat tidak dianjurkan untuk meletakkan nameserver pada blok ip yang sama dan alokasi yang sama. Lebih baik lagi apabila salah satu nameserver diletakkan ditempat lain dengan geografis beda misalkan diluar negeri, sehingga apabila ada gangguan atau bencana domain tidak akan mati. Karena keterbatasan tempat dan tidak ada server ditempat lain cukuplah 2 server yang ada saya pakai sebagai sarana ujicoba/experimen.
Untuk server saya menggunakan FreeBSD 6.1 dengan Bind 9.3.2 dan FreeBSD 5.4 dengan Bind 9.3.1 yang sudah bulit in didalamnya. Untuk mengaktifkan bind setiap kali startup tambahkan parameter pada rc.conf
# ee /etc/rc.confnamed_enable=”YES”named_flags=”-u bind”
Pada Bind versi 9 terdapat utility yang digunakan utntuk mengontrol bind yaitu “rndc”. Agar rndc bisa digunakan setidaknya ada 2 file yang harus kita buat yaitu “rncd.conf” dan “rndc.key” yang diletakkan pada direktori “/etc/named”. Untuk membuat file tersebut dipakai command rndc-confgen# rndc-confgen# Start of rndc.confkey “rndc-key” {algorithm hmac-md5;secret “8EQdlGbpeIO2/I7yLJP5CQ==”;};
options {default-key “rndc-key”;default-server 127.0.0.1;default-port 953;};# End of rndc.conf
# Use with the following in named.conf, adjusting the allow list as needed:#key “rndc-key” {# algorithm hmac-md5;
62
# secret “8EQdlGbpeIO2/I7yLJP5CQ==”;#};##controls {# inet 127.0.0.1 port 953# allow { 127.0.0.1; } keys { “rndc-key”; };#};# End of named.conf
Ok setelah itu kita pisahkan masing2 konfigurasi berdasarkan letaknya pada file masing2
# ee /etc/named/rndc.confkey “rndc-key” {algorithm hmac-md5;secret “8EQdlGbpeIO2/I7yLJP5CQ==”;};
options {default-key “rndc-key”;default-server 127.0.0.1;default-port 953;};
Sedangkan rndc.key saya letakkan pada# ee /etc/namedb/rndc.keykey “rndc-key” {algorithm hmac-md5;secret “8EQdlGbpeIO2/I7yLJP5CQ==”;};
Lakukan langkah yang sama pada pembuatan file rndc.conf dan rndc.key pada DNS server Slave.
Berikutnya akan kita bahas file named.conf yang berisi konfigurasi bind. Kita bagi pembahasan file named.conf ini, untuk file named.conf pada DNS server master dan named.conf untuk DNS server slave.# ee /etc/namedb/named.conf (pada DNS server master)acl slave {124.81.224.210/32;124.81.252.55/32;};
options {directory “/etc/namedb”;pid-file “/var/run/named/pid”;dump-file “/var/dump/named_dump.db”;statistics-file “/var/stats/named.stats”;allow-transfer { slave; };recursion no;notify yes;};
63
controls {inet 127.0.0.1 port 953allow { 127.0.0.1; } keys { “rndc-key”; };};
key “rndc-key” {algorithm hmac-md5;secret “8EQdlGbpeIO2/I7yLJP5CQ==”;};
zone “.” {type hint;file “named.root”;};
zone “0.0.127.IN-ADDR.ARPA” {type master;allow-update { none; };file “master/db.127.0.0.1”;};
zone “localhost” {type master;allow-update { none; };file “master/db.localhost”;};zone “mbalelo.info” {type master;allow-update { none; };file “master/db.mbalelo.info”;};
Pada konfigurasi diatas kita buat acl (Access Control) “acl slave” untuk mengatur server hostname mana yang boleh menerima tranfer zone. Opitons “recursion no” dengan option ini kita hanya memberikan jawaban query atas domain yang kita pegang (Authoritative Domain) dalam hal ini mbalelo.info. Selain domain tersebut maka DNS server tidak akan memberikan jawaban atas query selain domain mbalelo.info. Selain mengurangi resiko DNS cache poisoning atau resiko sekurity lainnya. Option ini juga akan meningkatkan performa DNS server karena kita tidak akan memberikan jawaban atas query domain yang lain. Options “notify yes” artinya setiap perubahan zone server master akan memberikan notify ke server slave untuk mengadakan update pada zone yang bersangkutan. Berikutnya adalah zone pointer dan reverse localhost seperti dibawah ini:
# ee /etc/namedb/master/db.127.0.0.1$TTL 86400@ IN SOA localhost. root.localhost. (2006081613 ; serial28800 ; refresh14400 ; retry3600000 ; expiry
64
86400 ) ; minimum
IN NS localhost.1 IN PTR localhost.
# ee /etc/namedb/master/db.localhost$TTL 86400$ORIGIN localhost.@ IN SOA localhost. root.localhost. (2006081613 ; serial28800 ; refresh14400 ; retry3600000 ; expiry86400 ) ; minimum
IN NS localhost.IN A 127.0.0.1
Untuk zone mbalelo.info sebagai berikut:# ee /etc/namedb/master/db.mbalelo.info$TTL 86400@ IN SOA ns1.mbalelo.info. info.mbalelo.info. (2007012602 ; Serial (YYYYMMDDnn)10800 ; Refresh3600 ; Retry604800 ; Expire86400 ) ; Negative Cache TTL
IN NS ns1.mbalelo.info.IN NS ns2.mbalelo.info.IN MX 10 mail.mbalelo.info.IN A 124.81.224.211
ns1 IN A 124.81.224.211ns2 IN A 124.81.224.210mail IN A 124.81.224.211www IN CNAME mbalelo.info.ftp IN CNAME mbalelo.info.download IN CNAME mbalelo.info.
Standart format serial untuk zone adalah (YYYYMMDDnn) “nn” adalah revisi zone. Setiap kali ada perubahan zone sebaliknya merubah serial zone. Misalkan kita dalam sehari melakukan beberapa kali update zone revisi sebaliknya berybah seperti 01 atau 02 sebanyak revisi yang kita lakukan. Secara tidak langsung juga untuk memberitahukan DNS Server Slave untuk mengupdate zonenya. SPF secara record disini berfungsi untuk mencegah spammer menggunakan domain untuk tujuan spam. Lebih jelasnnya lihat websitenya tentang format penulisan atau memanfaatkan wizard yang ada.
Berikut adalah file konfigurasi DNS Server Slave yang hampir sama dengan file konfigurasi server master. Untuk pembuatan file rndc.conf dan rndc.key sama dengan langkah yang dijelaskan diatas. Kita langsung saja pada file konfigurasi Bindnya.# ee /etc/namedb/named.conf (Pada DNS Server Slave)
65
options {directory “/etc/namedb”;pid-file “/var/run/named/pid”;dump-file “/var/dump/named_dump.db”;statistics-file “/var/stats/named.stats”;recursion no;notify no;};
key “rndc-key” {algorithm hmac-md5;secret “reseHZh2qBABma1zjrT3/A==”;};
controls {inet 127.0.0.1 port 953allow { 127.0.0.1; } keys { “rndc-key”; };};
zone “.” {type hint;file “named.root”;};
zone “0.0.127.IN-ADDR.ARPA” {type master;file “master/db.127.0.0.1”;};
zone “localhost” {type master;file “master/db.localhost”;};
zone “mbalelo.info” {type slave;file “slave/db.mbalelo.info”;masters {124.81.224.211;};};
Konfigurasi DNS server Slave tidak jauh beda dengan Master cuman parameter type disini adalah slave yang menyatakan server ini adalah DNS server slave dan ada tambahan parameter master yang diberitahukan DNS server slave harus mengambil dari mana update zone yang dipegangnya. Kemudian karena kita menjalankan bind dengan user bind maka kita harus rubah permission untuk file2 zone pada direktori /etc/namedb.
Server Master:#cd /etc/namedb/master#chown bind* db.*
66
Server Slave:#cd /etc/namedb/slave#chown bind* db.*
Setelah konfigurasi selesai maka berikutnya adalan menjalankan DNS server.Jalankan terlebih dahulu server master baru kemudian server slave.#/usr/sbin/named -u bind
Cek pesan server ketika bind dijalankan:# tail -f /var/log/messages
Bila sukses pesan yang ditampilkan adalah sebagai berikut:Jan 23 10:35:31 ns1 named[28558]: starting BIND 9.3.2 -u bindJan 23 10:35:31 ns1 named[28558]: command channel listening on 127.0.0.1#953Jan 23 10:35:31 ns1 named[28558]: running
Kemudian jalankan DNS Server Slave dan cek apakah file database zone telah ditransfer ke dalam direktori /etc/namedb/slave.Jika sudah maka proses testing server sudah selesai dan anda telah berhasil membuat DNS Server Master dan Slave.Jika file database zone belum ditransfer maka kita bisa secara manual mengkopi file database untuk zone tersebut ke server slave.Kemudian kita jalankan command rndc reload atau rndc reconfig untuk mereload konfigurasi atau zone yang baru.
Ok setelah semua konfigurasi selesai coba cek domain yang anda buat dengan DNS tools yang banyak di internet seperti DNS Report atau Checkdns.
Daftar Pustaka
67