| Article Index |
|---|
| Installasi Qmail |
| Page 2 |
| Page 3 |
| Page 4 |
| Page 5 |
| All Pages |
by : budsz ( This e-mail address is being protected from spambots. You need JavaScript enabled to view it )
1. Program yg digunakan:   --------------------
Â
   1.1 Webserver + addon:
       -----------------
       1.1.1 apache_1.3.27.tar.gz (Webserver).
       1.1.2 openssl-0.9.6h.tar.gz
       1.1.3 mod_ssl-2.8.8-1.3.27.tar.gz
       1.1.4 mod_perl-1.27.tar.gz
       1.1.5 php-4.2.3.tar.gz
       1.1.6 mod_gzip-1.3.26.1a.tar.gz
1.2 Database:
 --------
 1.2.1 mysql-3.23.54.tar.gz
Â
 1.3 Aplikasi Email:
 --------------
 1.2.1 qmail-1.03.tar.gz (MTA).
 2.2.2 vpopmail-5.3.8.tar.gz (Virtual email untuk protokol POP ).
 3.2.3 courier-imap-1.4.6.20020529.tar.gz (Virtual mail untuk protokol IMAP).
 4.2.4 squirrelmail-1.2.6.tar.gz (Web base email reader untuk protocol IMAP).
Â
2. Perencanaan dan tata letak.
 --------------------------
 Silahkan anda "pikirkan masak-masak" anda mau simpen dimana data
 untuk web, mail anda. dan semuanya tergantung dari keperluan anda.
 kalo saya lebih seneng kalo meletakan khusus di partisi tersendiri
 sebagai contoh:
Â
 $df -h
 Filesystem Size Used Avail Capacity Mounted on
 /dev/ad0s1a 197M 58M 123M 32% /
 /dev/ad0s1g 4.9G 23M 4.5G 0% /home
 /dev/ad0s1d 2.4G 1.6M 2.2G 0% /mail
 /dev/ad0s1e 4.9G 1.0G 3.5G 23% /usr
 /dev/ad0s1f 1008M 9.1M 918M 1% /var
 /dev/ad0s1h 4.9G 205M 4.3G 4% /www
 procfs 4.0K 4.0K 0B 100% /proc
Â
 Nah untuk data webserver (/www), email (/mail) diletakan di partisi
 terpisah, nah perencanaan ini sebetulnya tidak layak untuk dibicarakan
 pada session ini karena memang ini dipikirkan pas anda mulai menginstall
 box anda.
   --------------------------
  Â
   3.1 Apache + PHP + OpenSSL + mod_ssl + mod_perl + mod_gzip + MySQL
       --------------------------------------------------------------
       3.1.1 Pembuatan bikin direktori source.
               Sebelum kita mulai terlebih dahulu kita harus login sbg
             "root" dan pastikan letak untuk source2 file tersebut, saya
             pribadi suka meletakan di /usr/local/src/
            Â
             $mkdir /usr/local/src
            Â
             Pastiakan semua source kita diletakan di direktori
             tersebut, sebetulnya tergantung anda mau disimpen dimana.
      Â
       3.1.2 Pengekstrakan semua source kita.
               Untuk sistem operasi berbasis UNIX tentunya kita tidak
             asing dengan perintah "tar" dan program kompresi (gzip,
             gunzip, bzip, bzip2). Sekarang kita lakukan untuk semua
             program pengekstrakan:
              /usr/local/src
             $tar zxvf apache_1.3.27.tar.gz
             $tar zxvf mod_perl-1.27.tar.gz
             $tar zxvf mod_ssl-2.8.8-1.3.27.tar.gz
             $tar zxvf mysql-3.23.54.tar.gz
             $tar zxvf openssl-0.9.6h.tar.gz
             $tar zxvf php-4.2.3.tar.gz
             $tar zxvf mod_gzip-1.3.26.1a.tar.gz
  Â
               Setelah perintah di atas dieksekusi pastikan terbentuk
             direktori:
             apache_1.3.27
             mod_perl-1.27
             mod_ssl-2.8.8-1.3.27
             mysql-3.23.54
             openssl-0.9.6h
             php-4.2.3
             mod_gzip-1.3.26.1a
               Sekarang lakukan kompile source MySQL tersebut, tapi
             diwajibkan anda membuat user/group untuk daemon MySQL
             dengan cara:
            Â
             $pw adduser mysql
             $pw addgroup mysql
            Â
             $./configure --help | more
             kompile MySQL:
             $./configure (defaulnya ini akan di ekstrak ke direktori
                           /usr/local)
             $make
             $make check
             $make install
             $make clean
             terjadi error tolong check pesan errornya. agar daemon
             MySQL running pas pertama kali booting silakan anda entri
             di /etc/rc.local:
              isi dng : /usr/local/bin/safe_mysqld --user=root &
            Â
              Â
             Note: Silahkan baca2 untuk manual README, INSTALL dsb.
             $./config --prefix=/usr/local
             $make
             $make install
             kita lanjutkan kompile mod_ssl sbb:
             $./configure --with-apache=/usr/local/src/apache_1.3.27 \
             $ --with-ssl=/usr/local/src/openssl-0.9.6h \
             $ --prefix=/www \
             $ --enable-module=ssl \
             $ --enable-module=all \
             $ --enable-rule=EAPI
             openssl, Hasilnya akan disimpen di parsisi /www, kita lakukan
             compile juga untuk apachenya:
             $make
             $make certificate TYPE=option (Jawab pertanyaan ini dengan seksama)
             $make install
             options "TYPE=custom" pas make certificate, Ada beberapa
             option dibawah ini yg bisa anda pake:
            Â
             - TYPE=dummy, Jika anda sbg maintainer paket.
             - TYPE=test, Jika anda sbg admin dan ingin ngetes saja.
             - TYPE=custom, Jika anda sbg admin yang ingin build server sendiri.
             - TYPE=existing, Jika anda sbg admin yang mengupgrade server.
            Â
               Jika anda tidak menyertakan options maka defaultnya punya orang
             dalam hal ini "Snake Oil CA" nanti kita bisa bikin sendiri
             sertifikatnya, kita lanjutkan dengan kompile PHP digabungkan
             dengan apache, mysql:
             $./configure --with-apxs=/www/bin/apxs \
             $ --with-mysql \
             $ --enable-trans-sid \
             $ --enable-debug=no \
             $ --enable-track-vars
             $make
             $make install
             perlu mengkopi file config untuk PHP ini:
              Â
               Pastikan supaya php module jalan di web anda, anda bisa
             tambahkan beberapa options di php.ini, sebelumnya silahkan
             anda baca dulu keterangan ttg options ini.
             Edit/Tambahkan:
             register_globals = On
            Â
             Berikut keteranganya:
             You should do your best to write your scripts so that they
             do not require register_global to be on; Using form
             variables as globals can easily lead to possible security
             problems, if the code is not very well thought of.
            Â
               Kalo memang sudah benar, kita lanjutkan ke proses
             kompile mod_perl tolong silahkan check pastikan perl sudah
             terinstall pada sistem anda, kompilenya dengan cara:
             $perl Makefile.PL USE_APXS=1 WITH_APXS=/www/bin/apxs EVERYTHING=1
             $make
             $make install
              Â
             $cd ../mod_gzip-1.3.26.1a
              Â
             $ls -l
             total 444
             drwxr-xr-x  3 mysql   mysql        512 Jan 10 22:33 .
             drwxr-xr-x 32 root    wheel       2048 Jan 10 21:46 ..
             -rw-r--r--  1 root    wheel       4866 Oct 1 14:29 ChangeLog
             -rw-r--r--  1 root    wheel        257 Jan 10 22:29 Makefile
             -rw-r--r--  1 root    wheel        252 Oct 1 14:29 Makefile.libdir
             -rw-r--r--  1 root    wheel       2042 Oct 1 14:29 Makefile.tmpl
             drwxr-xr-x  3 root    wheel        512 Jan 10 22:02 docs
             -rw-r--r--  1 root    wheel     227701 Oct 1 14:29 mod_gzip.c
             -rw-r--r--  1 root    wheel      10099 Oct 1 14:29 mod_gzip.h
             -rwxr-xr-x  1 root    wheel      80758 Jan 10 22:29 mod_gzip.so
             -rw-r--r--  1 root    wheel      71415 Oct 1 14:29 mod_gzip_compress.c
             -rw-r--r--  1 root    wheel      19671 Oct 1 14:29 mod_gzip_debug.c
             -rw-r--r--  1 root    wheel       4322 Oct 1 14:29 mod_gzip_debug.h
            Â
             $vim Makefile
              Edit/Tambahkan jadi:
              APXS?=/www/bin/apxs
             $make build
             $make install
             $make clean
Nah untuk proses kompile dah kelar tinggal kita lakukan
beberapa konfigurasi, pertama kita konfigurasi apache kita
dulu dan backup file yg aslinya, adapun langkahnya:
$cp /www/conf/httpd.conf /www/conf/httpd.conf.old
$vim /www/conf/httpd.conf
Cari:
<IfDefine SSL>
LoadModule ssl_module libexec/libssl.so
LoadModule php4_module libexec/libphp4.so
LoadModule perl_module libexec/libperl.so
LoadModule gzip_module libexec/mod_gzip.so
</IfDefine>
Edit/Tambahkan jadi:
<IfDefine SSL>
LoadModule ssl_module libexec/libssl.so
</IfDefine>
LoadModule php4_module libexec/libphp4.so
LoadModule perl_module libexec/libperl.so
LoadModule gzip_module libexec/mod_gzip.so
Cari:
<IfDefine SSL>
AddModule mod_ssl.c
AddModule mod_php4.c
AddModule mod_perl.c
AddModule mod_gzip.c
</IfDefine>
Edit/Tambahkan:
<IfDefine SSL>
AddModule mod_ssl.c
</IfDefine>
AddModule mod_php4.c
AddModule mod_perl.c
AddModule mod_gzip.c
Tambahkan juga agar engine gzip bisa running di mesin anda:
<IfModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_can_negotiate Yes
mod_gzip_static_suffix .gz
AddEncoding gzip .gz
mod_gzip_update_static No
mod_gzip_command_version '/mod_gzip_status'
mod_gzip_keep_workfiles No
mod_gzip_minimum_file_size 500
mod_gzip_maximum_file_size 500000
mod_gzip_maximum_inmem_size 60000
mod_gzip_min_http 1000
mod_gzip_handle_methods GET POST
mod_gzip_item_exclude reqheader "User-agent: Mozilla/4.0[678]"
mod_gzip_item_include file \.html$
mod_gzip_item_exclude file \.js$
mod_gzip_item_exclude file \.css$
mod_gzip_item_include file \.pl$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/html$
mod_gzip_item_include mime ^text/plain$
mod_gzip_item_include mime ^httpd/unix-directory$
mod_gzip_item_exclude mime ^image/
mod_gzip_dechunk Yes
LogFormat "%h %l %u %t \"%V %r\" %<s %b mod_gzip: %{mod_gzip_result}n %In:%{mod_gzip_input_size}n -< %Out:%{mod_gzip_output_size}n = %%{mod_gzip_compression_ratio}n pct." %common_with_mod_gzip_info2
CustomLog logs/mod_gzip.log
common_with_mod_gzip_info2
mod_gzip_add_header_count Yes
mod_gzip_send_vary Yes
</IfModule>
Note: Intinya yg ada di dalam tanda tag ('<', '>') hanya untuk
module libssl.so dan mod_ssl.c saja.
Cari/Tambahkan:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
Note: AddType di atas bertujuan agar ekstensi .php dapat
dikenal web browser.
Cari:
<IfModule mod_dir.c>
DirectoryIndex index.html
</IfModule>
Edit/Tambahkan:
<IfModule mod_dir.c>
DirectoryIndex index.html index.htm index.php
</IfModule>
Note: Penambahan index.php, index.htm ini untuk menentukan
ekstensi index.
Sekarang kita coba untuk create sertifikat sendiri tapi
sebelomnya kita bikin direktori dulu agar terlihat lebih
rapih, adapun langkah2nya sbb:
$mkdir /www/conf/sertifikat
$cd /www/conf/sertifikat
$openssl genrsa -des3 -out server.key 1024
$openssl rsa -noout -text -in server.key
$openssl rsa -in server.key -out server.key.unsecure
$openssl req -new -key server.key -out server.csr
$openssl req -noout -text -in server.csr
$openssl req -new -x509 -days 365 -key server.key -out server.crt
$openssl genrsa -des3 -out ca.key 1024
$openssl rsa -noout -text -in ca.key
$openssl rsa -in ca.key -out ca.key.unsecure
$openssl req -new -x509 -days 365 -key ca.key -out ca.crt
$openssl x509 -noout -text -in ca.crt
Nah langkah diatas kita bikin sertifikat di bawah direktori
/www/conf, kita bikin file yg kita namakan server.key,
server.key.unsecure, server.csr, server.crt. selanjutnya
kita perlu sedikit pengeditan PATH di file /www/conf/httpd.conf
sbb:
$vim /www/conf/httpd.conf
Cari/Edit/Tambahkan:
SSLCertificateFile /www/conf/sertifikat/server.crt
SLCertificateKeyFile /www/conf/sertifikat/server.key
SSLCertificateChainFile /www/conf/sertifikat/ca.crt
Cari/Edit/Tambahkan:
SSLCertificateChainFile /www/conf/ssl.crt/ca.crt
Coba anda check PATH-nya sudah tepat atau belom, nah
selanjutnya kita jalankan daemon apachenya:
$apachectl starssl (SSL aktif)
$apachectl start (tanpa SSL)
$apachectl stop (untuk berhenti)
Untuk mengetes sudah jalan atau belom SSL-nya coba anda
browse ke server anda misalnya https://www.kumprang.or.id,
biasakan check log file di /www/logs/error_log, nah check baris per
baris kalo2 ada yg error.
       ------------------------------------------------------------------------
       3.2.1 Perencanaan penyimpanan email.
               Semua email saya coba letakan di /mail, sesuai dengan
             rencana semula, nah otomatis saya akan PATH-kan semua
             konfigurasinya ke /mail.
      Â
       3.2.2 Pengekstrakan file.Â
               Seperti biasa file tarball (*.tar.gz) diletakan di
             direktori /usr/local/src. kita akan lakukan pengekstrakan
             dengan login super user (root) untuk file dibawah ini:
              Â
             $cd /usr/local/src
             $tar zxvf qmail-1.03.tar.gz
             $tar zxvf ucspi-tcp-0.88.tar.gz
             $tar zxvf daemontools-0.76.tar.gz
             $tar zxvf vpopmail-5.3.8.tar.gz
             apache, sebagai contoh saya akan letakan di /www/htdocs
             dan saya rename dng nama webmail langkahnya sebagai berikut:
             $cp /usr/local/src/squirrelmail-1.2.6.tar.gz /www/htdocs/
             $tar zxvf squirrelmail-1.2.6.tar.gz
             $mv squirrelmail webmail
             dengan access user biasa, dan kita letakan tarballnya di
             /home/budsz (misalnya), langkahnya:
             root
             $cp /usr/local/src/courier-imap-1.4.6.20020529.tar.gz ~budsz/
             $chown budsz.petugas ~budsz/courier-imap-1.4.6.20020529.tar.gz
             $exit
             $whoami
             budsz
             $pwd
             /home/budsz
             $ls -l courier-imap-1.4.6.20020529.tar.gz
             -rw-r--r--  1 budsz petugas 1182227 Jan 6 00:11 courier-imap-1.4.1.tar.gz
             $tar zxvf courier-imap-1.4.6.20020529.tar.gz
            Â
               Langkah diatas adalah mengcopi tarball courier-imap-1.4.6.20020529.tar.gz
             ke ~/budsz (homedir budsz), selanjutnya memberikan identifikasi file ke
             user budsz dan group petugas (chown), anda exit dari account root dan
             lakukan pengekstrakan di homedir budsz.
               Awalnya saya biasa menginstall qmail dan kawan2 terlebih
             dahulu, adapun langkah-langkahnya meliputi:
             Password:
             $whoami
             root
             $cd /usr/local/src
             $cd qmail-1.03
             $cp INSTALL.ids ids
             $chmod 755 ids
             source kita diletakan, kita pertama2 akan membuat user dan group
             untuk menjalankan daemon qmail dan kawan2, pastikan anda
             buang yg tidak anda perlukan disini saya akan ambil untuk
             sistem operasi FreeBSD dan tanda uncomment (#) silahkan dihilangkan,
             langkahnya meliputi:
             $vim ids
             Cari:
             #pw groupadd nofiles
             #pw useradd alias -g nofiles -d /var/qmail/alias -s /nonexistent
             #pw useradd qmaild -g nofiles -d /var/qmail -s /nonexistent
             #pw useradd qmaill -g nofiles -d /var/qmail -s /nonexistent
             #pw useradd qmailp -g nofiles -d /var/qmail -s /nonexistent
             #pw groupadd qmail
             #pw useradd qmailq -g qmail -d /var/qmail -s /nonexistent
             #pw useradd qmailr -g qmail -d /var/qmail -s /nonexistent
             #pw useradd qmails -g qmail -d /var/qmail -s /nonexistent
            Â
             Edit/Hilangkan:
             pw groupadd nofiles
             pw useradd alias -g nofiles -d /var/qmail/alias -s /nonexistent
             pw useradd qmaild -g nofiles -d /var/qmail -s /nonexistent
             pw useradd qmaill -g nofiles -d /var/qmail -s /nonexistent
             pw useradd qmailp -g nofiles -d /var/qmail -s /nonexistent
             pw groupadd qmail
             pw useradd qmailq -g qmail -d /var/qmail -s /nonexistent
             pw useradd qmailr -g qmail -d /var/qmail -s /nonexistent
             pw useradd qmails -g qmail -d /var/qmail -s /nonexistent
            Â
               Sebelom kita execute file terlebih dahulu kita bikin
             homedir untuk qmail:
            Â
             $mkdir /var/qmail
             $sh ids
             $cat /etc/master.passwd | grep qmail
             alias:*:1002:1004::0:0:User &:/var/qmail/alias:/nonexistent
             qmaild:*:1003:1004::0:0:User &:/var/qmail:/nonexistent
             qmaill:*:1004:1004::0:0:User &:/var/qmail:/nonexistent
             qmailp:*:1005:1004::0:0:User &:/var/qmail:/nonexistent
             qmailq:*:1006:1005::0:0:User &:/var/qmail:/nonexistent
             qmailr:*:1007:1005::0:0:User &:/var/qmail:/nonexistent
             qmails:*:1008:1005::0:0:User &:/var/qmail:/nonexistent
            Â
             $cat /etc/group | grep nofiles ; cat /etc/group | grep qmail
             nofiles:*:1004:
             qmail:*:1005:
              Â
               Nah kita lakukan pengecheckan seperti diatas, dan
             ternyata sudah OK. kita juga akan buat direktori untuk log
             qmail:
             $mkdir /var/log/qmail/qmail-send
             $mkdir /var/log/qmail/qmail-smtpd
             $mkdir /var/log/qmail/qmail-pop3d
             $chown -R qmaill.wheel /var/log/qmail
             $chmod -R 750 /var/log/qmail
             $vim conf-split
             Cari:
             23
             199
            Â
             $vim conf-spawn
             Cari:
             120
             255
             direktori qmail menjadi lebih besar sehingga kapasitas
             antrian (queue) qmail lebih besar, modifikasi untuk
             conf-spawn artinya menambah jumlah pembatasan control file.
             anda "tidak diperbolehkan" mengeset lebih dari "255" karena
             qmail akan menolak pas anda kompile. selanjutnya kita akan
             kompile qmailnya:
             $./config atau $./config-fast mail.domainkamu.com
             anda untuk host ini udah OK, tapi kalo anda pake
             ./config-fast mail.domainkamu.com diasumsikan DNS kamu
             belom aktif. nah ./config-fast akan meletakan nama domain
             yang kamu input di /var/qmail/control/me,
             /var/qmail/control/locals, dan /var/qmail/control/rcpthosts
             sehingga qmail akan menerima email atas nama mail.domainkamu.com
             sbb:
             $package/install
             berbeda dengan versi sebelomnya, pas anda ekstrak otomatis
             direktori admin akan terbentuk (bukan direktori daemomtools-0.76)
             nah dengan penginstalan ini otomatis akan terbentuk direktori
             /command, ini bersini link2 ke direktori
             /usr/local/src/admin/daemontools-0.76/package/command/
             agar source kita bisa kita hapus maka kita:
             $rm -rf *
             $cp -r /usr/local/src/admin/daemontools-0.76/package/command/* /command/
             Â
               Sebelom daemonnya running ada lebih baik untuk men-nonaktifkan
             sendmail bawaan box (asumsi anda running sendmail), caranya:
             Cari:
             sendmail_enable="YES"
            Â
             Edit/ganti:
             sendmail_enable="NO"
            Â
             $chmod 0 /usr/sbin/sendmail
             $mv /usr/sbin/sendmail /usr/sbin/sendmail.old
              Â
               Kita ganti sendmail daemonnya dengan sendmail yg punya qmail
             langkahnya baiknya anda check dulu isi file dan kasi comment di:
            Â
             $vim /etc/mail/mailer.conf
             Cari:
             sendmail  /usr/libexec/sendmail/sendmail
             send-mail /usr/libexec/sendmail/sendmail
             mailq     /usr/libexec/sendmail/sendmail
             newaliases /usr/libexec/sendmail/sendmail
             #sendmail  /usr/libexec/sendmail/sendmail
             #send-mail /usr/libexec/sendmail/sendmail
             #mailq     /usr/libexec/sendmail/sendmail
             #newaliases /usr/libexec/sendmail/sendmail
             sendmail   /var/qmail/bin/sendmail
             newaliases /var/qmail/bin/newaliases
            Â
               Silahkan reboot mesin anda untuk melihat hasilnya dan pastikan
             sebelom mereboot terdapat entry di /etc/rc.local seperti:
             csh -cf '/command/svscanboot &'
             $shutdown -r now
             lakukan langkah seperti ini:
             $make
             $make setup check
             server kita:
             $mkdir tcpserver
             $cd tcpserver
             $vim tcp.smtp
             Isi dengan:
             127.0.0.1:allow,RELAYCLIENT=""
             198.168.1.:allow,RELAYCLIENT=""
             200.200.200.:allow,RELAYCLIENT=""
             :allow
             email via mail server kita atau istilahknya "ngerelay". nah
             sebagai contoh anda input ip untuk formatnya anda bisa listing
             perip (192.168.0.1) atau bisa persubnet (192.168.0.) artinya
             host yg bernomor ip 192.168.0.XXX, dimana XXX bernilei antara
             1 - 255 host. nah tipe accessnya "allow" (diperbolehkan).
             pertama2 kita periksa dulu apakah direktori alias telah
             dibikin apa belom tapi defaultnya telah terbentuk coba kita check:
            Â
               Saya asumsikan direktori alias belom ada, OK kita mulai untuk
             untuk create direktori dan kasi mode access tersebut:
             $chown alias.qmail ~alias
            Â
               Setelah itu kita akan masukan user alias untuk ngehandle
             qmail contohnya:
             $echo budsz > /var/qmail/alias/.qmail-postmaster
             $echo budsz > /var/qmail/alias/.qmail-mailer-daemon
             $chmod 2755 ~alias
             $chmod 644 ~alias/.qmail-*
             $ls -l /var/qmail/ | grep alias
             drwxr-sr-x  2 alias  qmail  512 Jun 8 09:16 alias
             total 14
             -rw-r--r-- 1 root qmail  4 Jun 7 23:28 concurrencyremote
             -rw-r--r-- 1 root qmail  6 Jun 8 09:23 defaultdomain
             -rw-r--r-- 1 root qmail 10 Jun 9 05:05 locals
             -rw------- 1 root qmail  0 Jun 9 05:05 locals.lock
             -rw-r--r-- 1 root qmail 15 Jun 8 09:22 me
             -rw-r--r-- 1 root qmail  6 Jun 7 23:27 plusdomain
             -rw-r--r-- 1 root qmail 15 Jun 13 01:22 rcpthosts
             -rw------- 1 root qmail  0 Jun 9 05:05 rcpthosts.lock
            Â
             $echo 255 > /var/qmail/control/concurrencyremote
             $chmod 644 /var/qmail/control/concurrencyremote
             dan kita beri mode access 644, isi file "defaultsdomain" berisi
             "or.id", isi file "locals" berisi "localhost", isi "me" berisi
             "kumprang.or.id", isi "plusdomain" berisi "or.id", isi "rcpthosts"
             berisi "kumprang.or.id".
               Dengan daemontools yg versi baru ini anda bekerja lebih praktis
             dan tidak perlu untuk bikin "startup script", jika konfigurasiÂ
             anda telah kelar otomatis daemon akan running. Nah jika semua
             dah OK kita akan coba buat startup supervise qmail dkk, langkahnya meliputi:
            Â
             $cd /
             $mkdir service
             $chmod 755 /service
             $mkdir /var/qmail/supervise
             $chmod 755 /var/qmail/supervise
             memudahkan untuk pengontrolan. nah kita buat beberapa direktori
             untuk daemon qmail. langkahnya meliputi:
             $mkdir /var/qmail/supervise/qmail-pop3d/log
             $chmod +t /var/qmail/supervise/qmail-pop3d
             $mkdir /var/qmail/supervise/qmail-send/log
             $chmod +t /var/qmail/supervise/qmail-send
             $mkdir /var/qmail/supervise/qmail-smtpd/log
             $chmod +t /var/qmail/supervise/qmail-smtpd
            Â
             $ln -s /var/qmail/supervise/* /service
            Â
               Setelah direktori tersebut terbentuk maka kita coba untuk
             membuat script2nya dengan cara:
             Isi:
             #!/bin/sh
             env env - PATH="/var/qmail/bin:/usr/local/bin" \
             qmail-start ./Maildir/
            Â
             $chmod 700 /var/qmail/rc
            Â
               Langkah diatas adalah untuk membuat control file untuk qmail
             dan kita kasi mode 700.
             Isi:
             #!/bin/sh
             exec /usr/local/bin/tcpserver -H -R -v -c100 0 110 \
             /var/qmail/bin/qmail-popup mail-host.domainkamu.org \
             /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir 2>&1
             untuk filenya.
             Isi:
             #!/bin/sh
             exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t \
             s100000 n20 /var/log/qmail/qmail-pop3d 2>&1
            Â
             $chmod 755 /var/qmail/supervise/qmail-pop3d/log
             $chmod 755 /var/qmail/supervise/qmail-pop3d/log/run
             mode 755 untuk direktorinya dan mode 755 untuk file runnya.
             Isi:
             #!/bin/sh
             exec /usr/local/bin/tcpserver -p -R -x /etc/tcp.smtp.cdb \
             -u 1003 -g 1004 -v -c 100 0 smtp rblsmtpd /var/qmail/bin/qmail-smtpd 2>&1
            Â
             $chmod 755 /var/qmail/supervise/qmail-smtpd/run
            Â
               Untuk menjalankan qmail-smtpd maka kita membuat script kayak
             diatas, nah untuk "-u 1003" dan "-g 1004" itu silahkan anda check
             dengan uid/gid "qmaild" di mesin anda. Untuk opsi rblsmtpd
             berguna untuk "ngeblock" address, ini berguna untuk solusi
             "Open relay" nantinya disini kita bisa buat link ke database
             open relay di dunia, selanjutnya kita kasi mode 755 untuk file
             runnya.
             Isi:
             #!/bin/sh
             exec /usr/local/bin/setuidgid qmaill \
             /usr/local/bin/multilog t s100000 n20 \
             /var/log/qmail/qmail-smtpd 2>&1
             $chmod 755 /var/qmail/supervise/qmail-smtpd/log/run
             755 untuk direktori log maupun file log runnya.
            Â
               Kita sekarang mulai install vpopmail, setelah souce tarball
             kita ekstrak di direktori /usr/local/src/, maka sebelom kita
             install terlebih dahulu kita buat direktori di /mail untuk
             meletakan semua email user-user dan membuat user untuk daemon
             vpopmail.
            Â
             $pw groupadd -n vchkpw -g 98
             $mkdir /mail/vpopmail
             $pw useradd -n vpopmail -u 98 -g 98 -c VpopMail-User -d /mail/vpopmail
             $cd /usr/local/src/vpopmail-5.2.1
             $vim vmysql.h
             Cari:
             /* Edit to match your set up */
             #define MYSQL_UPDATE_SERVER "localhost"
             #define MYSQL_UPDATE_USER  "root"
             #define MYSQL_UPDATE_PASSWD "secret"
             #define MYSQL_READ_USER    "root"
             #define MYSQL_READ_PASSWD  "secret"
             #define MYSQL_UPDATE_SERVER "Host_MySQL"
             #define MYSQL_UPDATE_USER  "User_Untuk_konek_Ke_Database"
             #define MYSQL_UPDATE_PASSWD "Password_Untuk_Konek_Ke_Database"
             #define MYSQL_READ_USER    "User_Untuk_Konek_Ke_Database"
             #define MYSQL_READ_PASSWD  "Password_Untuk_Konek_Ke_Database"
            Â
             $./configure --enable-roaming-users=y --enable-logging=y \
              --enable-defaultquota="2400000000S" \
              --enable-ip-alias-domains=y \
              --enable-mysql=y \
              --enable-sqllib=/usr/local/lib/mysql/ \
              --enable-sqlincdir=/usr/local/include/mysql/
             $make
             $make install-strip
             pas install yg berfungsi untuk "mengkonekan" vpopmail dengan
             database MySQL, maka dari itu kita wajib untuk terlebih
             dahulu membuatkan database untuk vpopmail:
             Enter password: atau
             $mysql -u root -h kumprang.or.id -p
             Enter password:
             Welcome to the MySQL monitor. Commands end with ; or \g.
             Your MySQL connection id is 787 to server version: 3.23.49
             buffer.
                   IDENTIFIED BY 'Password_Konek_Ke_Database';
             mysql>CREATE DATABASE vpopmail;
             Query OK, 1 row affected (0.09 sec)
             mysql>exit
             dengan nama databasenya "vpopmail" akan di redirect ke file
             vpopmail_backup.txt, sebagai contoh:
             Enter password:
             ubah tanda redirect sebaliknya, misalnya:
             Enter password:
            Â
               Coba anda check di direktori /mail/vpopmail, dengan perintah
             ls -l misalnya:
             total 12
             drwxr-xr-x 2 vpopmail vchkpw 512 Jun 9 04:38 bin
             drwxr-xr-x 4 vpopmail vchkpw 512 Jun 9 04:38 doc
             drwxr-xr-x 3 vpopmail vchkpw 512 Jun 12 15:03 domains
             drwxr-xr-x 2 vpopmail vchkpw 512 Jun 15 15:08 etc
             drwxr-xr-x 2 vpopmail vchkpw 512 Jun 9 04:38 include
             drwxr-xr-x 2 root     wheel  512 Jun 9 04:38 lib
             domain dan user pop misalnya:
             $./vadddomain domainkamu.com
             $./vadduser This e-mail address is being protected from spambots. You need JavaScript enabled to view it Alamat email ini telah dilindungi dari spam bots, anda perlukan Javascript enabled untuk melihatnya
             Please enter password for This e-mail address is being protected from spambots. You need JavaScript enabled to view it Alamat email ini telah dilindungi dari spam bots, anda perlukan Javascript enabled untuk melihatnya :
             enter password again:
            Â
               Dengan langkah diatas maka akan terbentuk direktori
             domainkamu.com di /mail/vpopmail/domains/ dan didalamnya
             akan ada user yg anda create tadi. untuk login nanti
             silahkan anda entri di Outlook Express/Netscape mail etc
             Login: This e-mail address is being protected from spambots. You need JavaScript enabled to view it Alamat email ini telah dilindungi dari spam bots, anda perlukan Javascript enabled untuk melihatnya , passwordnya masukan juga
             berikut untuk setting server dsb..dsb saya asumsikan anda
             dah bisa. nah agar anda bisa check email via web base maka
             saya pake squirrelmail. anda bisa pilih webmail yg lainnya
             nah untuk squirrelmail ini dia butuh IMAP server maka dari
             itu kita musti install courier, nah ada beberapa macam
             courier tapi saya pilih courier-imap, OK kita coba untuk
             install courier-imat terlebih dahulu, untuk menginstallnya
             anda tidak perlu access root:
             $whoami
             user
             $cd
             $pwd
             /home/budsz
             $wget -c http://www.kumprang.or.id/ftp/tarball/courier-imap-1.4.1.tar.gz
             $ls -l courier-imap-1.4.1.tar.gz
             -rw-r--r-- 1 user user-group 1182227 Jan 6 00:11 courier-imap-1.4.1.tar.gz
            Â
               Pastikan sebelom kita ekstrak ownernya milik user yg
             bersangkutan. kita mulai penginstalan:
             $cd courier-imap-1.4.1
             $./configure --without-authuserdb
             $make
             $make check
             ini artinya kita tidak memperkenankan autorisasi userdb,
             nah pastikan untuk proses make dan make check tidak
             terjadi error. nah untuk proses selanjutnya kita butuh
             access root:
             Password:
             $whoami
             root
             $make install-strip
             $make install-configure
             /usr/lib/courier-imap, nah agar IMAP server kita bisa
             booting di awal maka kita entry di /etc/rc.local
             Isi:
             /usr/lib/courier-imap/libexec/imapd.rc startÂ
             mejadi:
             $cp imapd-ssl.dist imapd-ssl
             $cp imapd.dist imapd
             $cp pop3d-ssl.dist pop3d-ssl
             $cp pop3d.dist pop3d
             $/usr/lib/courier-imap/libexec/imapd.rc start
             nah untuk configurasi IMAP server ini anda check di /usr/lib/courier-imap/etc/imapdÂ
             selanjutnya kita akan create user IMAP:
            Â
             $mkdir -p /mail/courier-imap/userdb
             $cat > /mail/courier-imap/userdb/domainkamu.com
             $userdbpw -md5 | userdb -f \
             /mail/courier-imap/userdb/domainkamu.com \
             This e-mail address is being protected from spambots. You need JavaScript enabled to view it Alamat email ini telah dilindungi dari spam bots, anda perlukan Javascript enabled untuk melihatnya set uid=1010 gid=1001 \
             home=/mail/vpopmail/domains/domainkamu.com/user-imap \
             mail=/mail/vpopmail/domains/domainkamu.com/user-imap/Maildir
            Â
               Langkah diatas kita membuat direktori courier-imap dan userdb
             sekaligus dan file domainkamu.com dimana didalam file domainkamu.com
             akan disimpan account user-imap dengan password encrypt tipe -md5
             dengan UID/GID ini tergantung anda bisa definisikan atau tidak
             artinya kalo user tersebut ada entri di /etc/master.passwd maka
             anda isi UID/GID-nya, tapi kalo tidak anda bisa mengabaikannya,
             untuk direktori penyimpanan diletakan di mail=/mail/vpopmail/domains/domainkamu.com/user-imap/Maildir
             dan homedirnya di home=/mail/vpopmail/domains/domainkamu.com/user-imap
             nah untuk memudahkan pekerjaan ini silahkan anda buat script kecil
             This e-mail address is being protected from spambots. You need JavaScript enabled to view it Alamat email ini telah dilindungi dari spam bots, anda perlukan Javascript enabled untuk melihatnya set uid=1010 gid=1001
             home=/mail/vpopmail/domains/domainkamu.com/user-imap
             mail=/mail/vpopmail/domains/domainkamu.com/user-imap/Maildir" > /root/adduser-imap
             file adduser-imap di direktori root, agar bisa di eksekusi
             silahkan kasi mode 755 untuk file ini dan kasi PATH shell:
             Isi:
             /bin/sh
             ganti user-imap denga udin misalnya
                   create user IMAP.
             kita telah ekstrak di direktori web server kita:
             $perl conf.pl
  Â
             SquirrelMail Configuration : Read: config.php (1.2.0)
             ---------------------------------------------------------
             Main Menu --
             1. Organization Preferences
             2. Server Settings
             3. Folder Defaults
             4. General Options
             5. Themes
             6. Address Books (LDAP)
             7. Message of the Day (MOTD)
             8. Plugins
             9. Database
             S  Save data
             Q  Quit
  Â
               Nah anda sekarang melihat menu setup untuk squirrelmail,
             nah silahkan anda ubah hal-hal yg perlu. pastikan sebelom
             langkah diatas anda telah install perl, atau jika ada
             lebih menyukai cara manual. anda bisa melakukan langkah
             seperti:
             $/www/htdocs/webmail/config
             $cp config.php config.php.old
             $vim config
             Edit opsi seperlunya
             mengedit langsung file config .php
               Untuk ini anda wajib melakukan pengujian, silahkan anda
             gunakan mailer favorit anda misalnya coba anda kirim email
             keluar dengan menggunakan mutt atau pine, setelah itu anda
             check log file di /var/log/qmail/qmail-send/current coba
             apakah pesannya model gini:
             @400000003d10e18016afa3dc info msg 442: bytes 2513 from < This e-mail address is being protected from spambots. You need JavaScript enabled to view it Alamat email ini telah dilindungi dari spam bots, anda perlukan Javascript enabled untuk melihatnya > qp 70883 uid 1003
             @400000003d10e18017d63604 starting delivery 1283: msg 442 to local This e-mail address is being protected from spambots. You need JavaScript enabled to view it Alamat email ini telah dilindungi dari spam bots, anda perlukan Javascript enabled untuk melihatnya
             @400000003d10e18017d8aaec status: local 1/10 remote 0/255
             @400000003d10e18018ffe50c delivery 1283: success: did_0+0+1/
             @400000003d10e18019050d5c status: local 0/10 remote 0/255
             @400000003d10e1801909ef5c end msg 442
            Â
               Kalo seperti diatas berarti pengiriman sudah OK, kalo belom
             coba anda teliti apakah daemon dah running atau belom, sama
             halnya dengan anda ngepop email dari mesin lain misalnya anda
             menggunakan outlook express, anda silahkan setting untuk
             server email anda, dan login/passwordnya. coba anda bisa
             nggak ngepop email berikut ngirimnya.
             atau Netscape. coba anda browse http://www.domainkamu.com/webmailÂ
             kalo pas pertama menampilkan login dan password squirrelmail
             berati langkah pertama dah OK, selanjutnya anda coba login misalnya
             This e-mail address is being protected from spambots. You need JavaScript enabled to view it Alamat email ini telah dilindungi dari spam bots, anda perlukan Javascript enabled untuk melihatnya dan input juga passwordnya, trus anda
             anda bisa liat tampilan layaknya email yahoo berarti dah OK
             selanjutnya anda juga testing untuk pengiriman via web mail ini
             kalo misalnya ada pesan "permission deny" untuk inbox anda tolong
             check permission /mail/vpopmail/domains/domainkamu.com/user
             pastikan karena memang defaultnya mode 600 untuk homedir mail
             user ini dan owner usernya vpopmail maka agar bisa dipake
             bersamaan dengan squirrelmail maka anda ubah ke mode 755.
             untuk keamanan memang ini rentan karena user lain bisa membaca
             hanya dengan login shell, kalo tidak anda ubah untuk owner yang
             lebih aman. nah memang sampe tulisan ini dibuat masih menjadi
             delematis, mengigat vpopmail ini pasangannya dengan sqwebmail
             untuk itu kita rada repot jika pake squirrelmail karena squirrelmail
             ini tidak "kenal" POP protokol dia hanya bisa IMAP protokol.
Alamat email ini telah dilindungi dari spam bots, anda perlukan Javascript enabled untuk melihatnya             elektron ke This e-mail address is being protected from spambots. You need JavaScript enabled to view it  mengigat memang saya juga masih
             newbie.
             $Id: Setup-WWW-Mail-Server.txt,v 1.6 2005-02-04 21:51:18+07 budsz Exp $
Â
ÂÂ
| Next > |
|---|



Comments