Selasa, 06 Juli 2010

Domain Controller (Dokumentasi Tugas Besar)

Domain Controller

Membuat Web Server di Ubuntu

Beikut merupakan cara membuat webserver di linux dan semoga bisa membantu temen-temen semua dalam belajar pemrograman web khususnya di linux. Jangan lupa untuk laptop atau komputer kita harus terkoneksi internet terlebih dahulu karena file-file yang akan kita install seperti apache, php dan server database nanti langsung didownload dari internet, sebenarnya ada cara lain untuk mendapatkan file-file untuk tersebut yaitu dengan DVD repositorinya linux, tapi untuk cara tersebut tidak saya bahas disini.


1. Instal web server apache

   # sudo apt-get install apache2


2. Instal database server

    # sudo apt-get install mysql-server

      kemudian install php untuk apache

       # sudo apt-get install php5


3. Instal mysql untuk apache

   # apt-get install libapache-mod-acct-mysql


   # apt-get install php5-mysql


4. Tes di browser dengan mengetikkan alamat localhost

     http://localhost


   jika telah tampil tulisan “it work“, berarti instalasi yang lakukan telah berhasil
   direktory htdoc di linux adalah :
         / var / www /

Setup Proxy Server di Ubuntu

Ringkasan ini tidak tersedia. Harap klik di sini untuk melihat postingan.

Membuat Server Mail di Ubuntu

Membuat server email di Ubuntu sekarang menjadi lebih mudah dengan adanya zimbra. Zimbra sendiri sudah memiliki fitur yang sangat lengkap, mulai dari MTA (mail transfer agent) yang dilengkapi dengan fitur anti spam dan anti virus, IMAP/POP3, webmail dan fitur kolaborasi lainnya. Di tulisan ini, kita akan belajar instalasi awal zimbra di Ubuntu.


Sebelum Anda melanjutkan membaca tulisan ini, ada baiknya Anda tidak melewatkan seri tutorial DNS Server dengan Bind9 (1, 2 dan 3). Karena dalam instalasi zimbra, Anda harus memahami bagaimana cara membuat sebuah hostname bisa di resolve dengan baik dan bagaimana membuat entri mx record.

Saat tulisan ini dibuat, rilis terbaru zimbra untuk versi 5, adalah 5.0.18, dan untuk versi ini zimbra hanya menyediakan installer untuk distro RHEL 4/5, Fedora 7, Debian 4, MacOS 10.4/10.5, openSUSE 10.2, SLES 10, Ubuntu 6.06/8.04 LTS.

Dan untuk tutorial kali ini, kita akan menggunakan Ubuntu 8.04 (Hardy Heron). Instalasi ubuntu diasumsikan menggunakan instalasi default ubuntu 8.04 server edition.

Mengkonfigurasi berkas /etc/hosts

Zimbra mensyaratkan hostname bisa diresolve dengan baik, sekarang coba Anda sunting berkas /etc/hosts.

Dari asalnya,
 
127.0.0.1 localhost

127.0.1.1 zimbra

# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
 127.0.0.1 localhost

192.168.56.113 zimbra.perusahaan.com zimbra

menjadi :

# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
 
Paket-paket yang dibutuhkan untuk instalasi zimbra


Instal paket-paket berikut.

sudo apt-get install libidn11 libpcre3 libgmp3c2 libexpat1 libstdc++6 libstdc++5 libltdl3

Untuk memudahkan, kita akan uninstall apparmor (Anda boleh tidak setuju dengan cara ini, tapi ini demi memudahkan instalasi).

sudo dpkg --purge apparmor apparmor-utils

Anda juga harus memastikan tidak ada yg listen di port 25, 80, 110, 143. Untuk memeriksanya, jalankan perintah berikut. Lihat port yang listen di server Anda.

sudo lsof -i -n -P


Hostname & Alamat IP


* hostname: zimbra.perusahaan.com
* ip: 192.168.56.113

Kita akan buatkan alias, dibuatkan hostname yang mencerminkan fungsi dari service/layanan yang diberikan.

* imap.perusahaan.com, untuk akses imap
* pop.perusahaan.com, untuk akses pop3
* smtp.perusahaan.com, untuk akses smtp (mengirim email)
* webmail.perusahaan.com, untuk akses webmail

$TTL 7200 ; 2 hours

@ IN SOA ns1.perusahaan.com. hostmaster.perusahaan.com. (
2009060708 ; serial
7200 ; refresh (2 hours)
3600 ; retry (1 hour)
604800 ; expire (1 week)
10800 ; minimum (3 hours)
)


NS ns1.perusahaan.com.
MX 10 zimbra.perusahaan.com. ns1 A 192.168.56.113
zimbra A 192.168.56.113

imap CNAME zimbra
pop CNAME zimbra
smtp CNAME zimbra
webmail CNAME zimbra

 Instalasi Zimbra


Pertama, ambil dulu berkas sumber dari halaman unduh zimbra. Ambil sesuai dengan arsitektur komputer Anda (32 bit atau 64 bit).
Contoh, untuk versi yang saya gunakan.

wget http://h.yimg.com/lo/downloads/5.0.18_GA/zcs-5.0.18_GA_3011.UBUNTU8.20090708092550.tgz

Ekstrak,

tar zxvf zcs-5.0.18_GA_3011.UBUNTU8.20090708092550.tgz

Lalu jalankan skrip instalasi.

cd zcs-5.0.18_GA_3011.UBUNTU8.20090708092550


sudo ./install.sh
 
 
Proses Instalasi


Harusnya Anda tinggal enter-enter saja, dan menjawab beberapa pertanyaan. Tapi jika penasasaran, Anda bisa lihat urutan proses instalasinya. Mudah-mudahan bisa membuat Anda lebih paham.

Operations logged to /tmp/install.log.12383

Checking for existing installation...


zimbra-ldap...NOT FOUND
zimbra-logger...NOT FOUND
zimbra-mta...NOT FOUND
zimbra-snmp...NOT FOUND
zimbra-store...NOT FOUND
zimbra-apache...NOT FOUND
zimbra-spell...NOT FOUND
zimbra-proxy...NOT FOUND
zimbra-archiving...NOT FOUND
zimbra-convertd...NOT FOUND
zimbra-cluster...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.


License Terms for the Zimbra Collaboration Suite:
http://www.zimbra.com/license/zimbra_public_eula_2.1.html

Press Return to continue

Silakan Anda tekan enter disitu.

Checking for prerequisites...



FOUND: NPTL
FOUND: sudo-1.6.9p10-1ubuntu3.4
FOUND: libidn11-1.1-1
FOUND: libpcre3-7.4-1ubuntu2.1
FOUND: libgmp3c2-2:4.2.2+dfsg-1ubuntu2
FOUND: libexpat1-2.0.1-0ubuntu1
FOUND: libstdc++6-4.2.4-1ubuntu4
FOUND: libstdc++5-1:3.3.6-15ubuntu6
FOUND: libltdl3-1.5.26-1ubuntu1


Checking for suggested prerequisites...


FOUND: perl-5.8.8


Prerequisite check complete.


Checking for installable packages

Found zimbra-core
Found zimbra-ldap
Found zimbra-logger
Found zimbra-mta
Found zimbra-snmp
Found zimbra-store
Found zimbra-apache
Found zimbra-spell
Found zimbra-proxy

Select the packages to install

Install zimbra-ldap [Y] --tekan enter--
Install zimbra-logger [Y] --tekan enter--
Install zimbra-mta [Y] --tekan enter--
Install zimbra-snmp [Y] --tekan enter--
Install zimbra-store [Y] --tekan enter--
Install zimbra-apache [Y] --tekan enter--
Install zimbra-spell [Y] --tekan enter--
Install zimbra-proxy [N] --tekan enter--


Checking required space for zimbra-core
checking space for zimbra-store
Installing:
zimbra-core
zimbra-ldap
zimbra-logger
zimbra-mta
zimbra-snmp
zimbra-store
zimbra-apache
zimbra-spell


The system will be modified. Continue? [N] --ketik Y disini--

Lalu zimbra akan melanjutkan dengan menginstal paket-paket yang diperlukan.

Removing /opt/zimbra

Removing zimbra crontab entry...done.
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 Suite
Finished removing Zimbra Collaboration Suite.



Installing packages


zimbra-core......zimbra-core_5.0.18_GA_3011.UBUNTU8_i386.deb...done
zimbra-ldap......zimbra-ldap_5.0.18_GA_3011.UBUNTU8_i386.deb...done
zimbra-logger......zimbra-logger_5.0.18_GA_3011.UBUNTU8_i386.deb...done
zimbra-mta......zimbra-mta_5.0.18_GA_3011.UBUNTU8_i386.deb...done
zimbra-snmp......zimbra-snmp_5.0.18_GA_3011.UBUNTU8_i386.deb...done
zimbra-store......zimbra-store_5.0.18_GA_3011.UBUNTU8_i386.deb...done
zimbra-apache......zimbra-apache_5.0.18_GA_3011.UBUNTU8_i386.deb...done
zimbra-spell......zimbra-spell_5.0.18_GA_3011.UBUNTU8_i386.deb...done
Operations logged to /tmp/zmsetup.07152009-091904.log



Setting defaults...


Setelah ini akan muncul pesan seperti di bawah. Kita menggunakan hostname zimbra.perusahaan.com, dan yang kita set record mx adalah domain perusahaan.com, karena kita memang inginnya zimbra menghosting domain perusahaan.com.

NS ERROR resolving MX for zimbra.perusahaan.com
It is suggested that the domain name have an MX record configured in DNS
Change domain name? [Yes] --tekan enter--
Create Domain: [zimbra.perusahaan.com] --ketik perusahaan.com disini---
MX: zimbra.perusahaan.com (192.168.56.113)
Interface: 10.0.2.15
Interface: 192.168.56.113
Interface: 127.0.0.1
done.
Checking for port conflicts
Port conflict detected: 80 (zimbra-store)
Port conflicts detected! - Any key to continue


Disini terlihat salah satu contoh error. Ada port conflict di port 80. Saya cek dengan perintah

sudo lsof -i -n -P

Ternyata ada thttpd yg listen di port 80 (padahal ini untuk tutorial berikutnya hehe). Setelah service thttpd saya matikan, instalasi jalan kembali.

Main menu


1) Common Configuration:
2) zimbra-ldap: Enabled
3) zimbra-store: Enabled
+Create Admin User: yes
+Admin user to create: admin@perusahaan.com
******* +Admin Password UNSET
+Enable automated spam training: yes
+Spam training user: spam.tdp4n_la5h@perusahaan.com
+Non-spam(Ham) training user: ham.owo5zfr2q@perusahaan.com
+Global Documents Account: wiki@perusahaan.com
+SMTP host: zimbra.perusahaan.com
+Web server HTTP port: 80
+Web server HTTPS port: 443
+Web server mode: http
+IMAP server port: 143
+IMAP server SSL port: 993
+POP server port: 110
+POP server SSL port: 995
+Use spell check server: yes
+Spell server URL: http://zimbra.perusahaan.com:7780/aspell.php
+Configure store for use with reverse mail proxy: FALSE
+Configure store for use with reverse web proxy: FALSE
4) zimbra-mta: Enabled
5) zimbra-snmp: Enabled
6) zimbra-logger: Enabled
7) zimbra-spell: Enabled
8) Default Class of Service Configuration:
r) Start servers after configuration yes
s) Save config to file
x) Expand menu
q) Quit


Address unconfigured (**) items (? - help)


Sekarang Anda dihadapkan dengan menu di atas. Perhatikan di bagian yang diberi tanda bintang (*******) itu ada di menu nomor tiga. Jadi Anda pilih atau ketik 3, kemudian tekan enter.


Store configuration
1) Status: Enabled
2) Create Admin User: yes
3) Admin user to create: admin@perusahaan.com
** 4) Admin Password UNSET
5) Enable automated spam training: yes
6) Spam training user: spam.tdp4n_la5h@perusahaan.com
7) Non-spam(Ham) training user: ham.owo5zfr2q@perusahaan.com
8) Global Documents Account: wiki@perusahaan.com
9) SMTP host: zimbra.perusahaan.com
10) Web server HTTP port: 80
11) Web server HTTPS port: 443
12) Web server mode: http
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://zimbra.perusahaan.com:7780/aspell.php
19) Configure store for use with reverse mail proxy: FALSE
20) Configure store for use with reverse web proxy: FALSE


Select, or 'r' for previous menu [r]


Sekarang Anda dihadapkan dengan menu berikutnya. Sama seperti tadi, perhatikan bagian yang diberi tanda bintang (**), itu ada di menu nomor 4. Jadi Anda ketik 4, lalu tekan enter.


Password for admin@perusahaan.com (min 6 characters): [hINYHBUe5]

Sekarang Anda diminta menuliskan password untuk user Admin. Jika Anda tekan enter, default passwordnya adalah yang ada di dalam kurung kotak. Silakan Anda ketik password yang Anda ingin set.


Store configuration
1) Status: Enabled
2) Create Admin User: yes
3) Admin user to create: admin@perusahaan.com
4) Admin Password set
5) Enable automated spam training: yes
6) Spam training user: spam.tdp4n_la5h@perusahaan.com
7) Non-spam(Ham) training user: ham.owo5zfr2q@perusahaan.com
8) Global Documents Account: wiki@perusahaan.com
9) SMTP host: zimbra.perusahaan.com
10) Web server HTTP port: 80
11) Web server HTTPS port: 443
12) Web server mode: http
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://zimbra.perusahaan.com:7780/aspell.php
19) Configure store for use with reverse mail proxy: FALSE
20) Configure store for use with reverse web proxy: FALSE
Select, or 'r' for previous menu [r]




Sekarang semua sudah diset dengan baik. Anda tikan tekan r,


Main menu
1) Common Configuration:
2) zimbra-ldap: Enabled
3) zimbra-store: Enabled
4) zimbra-mta: Enabled
5) zimbra-snmp: Enabled
6) zimbra-logger: Enabled
7) zimbra-spell: Enabled
8) Default Class of Service Configuration:
r) Start servers after configuration yes
s) Save config to file
x) Expand menu

q) Quit


*** CONFIGURATION COMPLETE - press 'a' to apply

Select from menu, or press 'a' to apply config (? - help) --ketik a disini, lalu enter--
Save configuration data to a file? [Yes] --tekan enter--
Save config in file: [/opt/zimbra/config.17874]
Saving config in /opt/zimbra/config.17874...done.
The system will be modified - continue? [No] --ketik Yes disini, lalu enter--


Dan tunggu zimbra mengkonfigurasi sistem Anda sampai selesai. Agak lama prosesnya, jadi Anda harus sedikit bersabar.

Setelah semuanya selesai, Anda bisa mengakses halaman web adminnya di

https://zimbra.perusahaan.com:7071/

Ingat, pakai https bukan http. Loginnya admin, password seperti yang sudah Anda set sebelumnya.

Dan untuk webmail (akses untuk membaca email dari web, untuk user).

http://webmail.perusahaan.com/

Seperti yang sudah kita set di DNS sebelumnya.

Membuat FTP di Ubuntu

Merujuk pada wikipedia, FTP (File Transfer Protocol) adalah sebuah protokol Internet yang berjalan di dalam lapisan aplikasi yang merupakan standar untuk pentransferan berkas (file) komputer antar mesin-mesin dalam sebuah internetwork. Protokol ini masih digunakan hingga saat ini untuk melakukan pengunduhan (download) dan penggugahan (upload) berkas-berkas komputer antara klien FTP dan server FTP. Sebuah server FTP diakses dengan menggunakan Universal Resource Identifier (URI) dengan menggunakan format ftp://namaserver. Klien FTP dapat menghubungi server FTP dengan membuka URI tersebut.FTP hanya menggunakan metode autentikasi standar, yakni menggunakan username dan password yang dikirim dalam bentuk tidak terenkripsi. Pengguna terdaftar dapat menggunakan username dan password-nya untuk mengakses, men-download, dan meng-upload berkas-berkas yang ia kehendaki. Umumnya, para pengguna terdaftar memiliki akses penuh terhadap beberapa direktori, sehingga mereka dapat membuat berkas, membuat direktori, dan bahkan menghapus berkas. Pengguna yang belum terdaftar dapat juga menggunakan metode anonymous login, yakni dengan menggunakan nama pengguna anonymous dan password yang diisi dengan menggunakan alamat e-mail.

Cara Meginstal dan Konfigurasi FTP

Instalasi vsftpd

Dengan asumsi bahwa Anda telah menginstal Ubuntu, masuk ke terminal kemudian jalankan perintah :

$sudo apt-get install vsftpd

Tunggu hingga selesai kemudian jalankan perintah :

$sudo /etc/init.d/vsftpd start


Untuk menjalankan FTP server :

Konfigurasi vsftpd
File konfigurasinya terletak di /etc/vsftpd.conf untuk membukanya jalankan perintah :

$sudo nano /etc/vsftpd.conf

Bila anda ingin user anonymous dapat menggunakan ftp, tambahkan atau edit baris ini :

anonymous_enable=YES

Sebaliknya bila anda tidak ingin user anonymous dapat menggunakan ftp, ubah nilai baris diatas menjadi NO seperti di bawah ini :

anonymous_enable=NO

Bila anda ingin lokal user (user pengguna komputer namun bukan root user) dapat login menggunakan ftp protokol, tambahkan atau edit baris ini :

local_enable=YES

 Sebaliknya bila anda ingin lokal user (user pengguna komputer namun bukan root user) tidak dapat login menggunakan ftp protokol ubah nilai baris diatas menjadi NO.

Bila anda ingin mengubah root directory dari user anonymous (default root directorynya ada di /home/ftp ), tambahkan atau edit baris ini :

 anon_root=anonymous user root directory yang anda inginkan

 Bila ingin memberikan pesan selamat datang, tambahkan dan edit baris ini :

 ftpd_banner “pesan selamat datang”

 Membatasi jumlah klien, tambahkan dan edit baris ini:

 max_client jumlah maksimum klien

 Membatasi jumlah klien dengan IP yang sama, tambahkan dan edit baris ini:
max_per_ip jumlah maksimum klien per IP

Mengunci FTP user di direktori home, tambahkan dan edit baris berikut:

 chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

Untuk file /etc/vsftpd/chroot_list tambahkan bila tidah ada. Dengan begitu semua ftp root directory tiap local user ada di home directory masing-masing user. Jika anda ingin membuat pengecualian untuk user tertentu agar root directorynya tetap berada di / anda dapat menuliskan nama user tersebut di file /etc/vsftpd/chroot_list.

Namun jika anda ingin agar hanya user tertentu saja yang ftp root direktorinya pindah ke home direktori masing-masing anda dapat mengubah paramater baris chroot_local_user menjadi NO seperti ini chroot_local_user=NO lalu menuliskan user yang ingin dipindah root direktorinya ke dalam file /etc/vsftpd/chroot_list.

Membuat DNS di Ubuntu

Dibawah ini tahapan membuat DNS Server di dalam ubuntu dan sebelumnya pastikan terlebih dahulu koneksi internet Anda telah terhubung.

1. install paket BIND9 sudo apt-get install bind9, dan paket
    sudo apt-get install dnsutils
 
2. edit ethernet anda, di /etc/network/interfaces eth0
    isikan alamat IP yang digunakan dengan perintah
              sudo gedit /etc/network/interfaces eth0
 
3. edit /etc/bind/named.conf.options dengan perintah
         sudo nano edit /etc/bind/named.conf.options
 
4. edit /etc/bind/named.conf.local dengan perintah
        sudo nano edit /etc/bind/named.conf.local
 
5. copy kan loopback/local ke teka.com dengan perintah
       sudo cp /etc/bind/db.local /etc/bind/db.teka.com

6. copy alamat loopback 127 ke 192 dengan perintah
      sudo cp /etc/bind/db.127 /etc/bind/db.192
      Kemudian editlah dokumen db.teka.com dengan perintah
          sudo nano /etc/bind/db.teka.com
      edit juga dokumen db.192 dengan perintah
          sudo nano /etc/bind/db.192
 
7. edit reserve /etc/resolv.conf dengan perintah
       sudo nano /etc/resolv.conf
 
8. edit file /etc/hosts dengan perintah
      sudo nano /etc/hosts
 
9. restart service sudo /etc/init.d/bind9 restart dengan mengetikan perintah
      sudo /etc/init.d/bind9
10. restart service sudo /etc/init.d/networking restart dengan mengetikan
      sudo /etc/init.d/networking restart

11. ketikan nslookup teka.com untuk melihat detail DNS yang telah dibuat.

Konfigurasi DHCP di Ubuntu

DHCP Server merupakan sebuah layanan yang dapat memberikan alamat IP dan informasi TCP/IP lainnya kepada semua klien yang memintanya. DHCP server umumnya memiliki sekumpulan alamat yang diizinkan untuk didistribusikan kepada klien. Berikut ini merupakan langkah – langkah penginstallan dan Konfigurasi DHCP Server di Ubuntu (Ubuntu yang digunakan adalah Ubuntu 9.10) :

1. Menginstall DHCP
Untuk Proses menginstall DHCP ini, ketikan di terminal ubuntu anda : sudo apt-get install dhcp3-server

2. Mengkonfigurasi DHCP
Jika komputer ubuntu anda mempunyai 2 network card atau lebih, maka anda harus memilih salah satu network card yang digunakan untuk menerima permintaan IP dari client. Lalu buka dan editlah file dhcp3-server anda dengan mengetikkan :
sudo gedit /etc/default/dhcp3-server

3. Lalu ubahlah INTERFACES=”eth0″ menjadi eth1

4. Simpan file yang telah diedit tadi kemudian exit

5. Untuk membackup file dhcpd ketikan
cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.back

6. Setelah itu ganti konfigurasi dhcpd dengan mengetikan perintah sudo gedit /etc/dhcp3/dhcpd.conf dengan konfigurasi sebagai berikut :
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.254;
option domain-name-servers 192.168.1.1, 192.168.1.2;
option domain-name “yourdomainname.com”;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.200;
}
host client1{
hardware ethernet 00:1b:63:ef:db:54;
fixed-address 192.168.1.20;
}
host client2{
hardware ethernet 00:0a:95:b4:d4:b0;
fixed-address 192.168.1.21;
}
host client3{
hardware ethernet 00:16:cb:aa:2a:cd;
fixed-address 192.168.1.22;
}
host client4{
hardware ethernet 00:0a:95:f5:8f:b3;
fixed-address 192.168.1.23;
}
Edit Konfigurasi DHCP

7. Setelah selesai kita perlu merestart dhcp nya dengan perintah : sudo /etc/init.d/dhcp3-server restart