Membuat mailserver kantor dengan zimbra dan internet speedy

| Posted in Debian, Project, Zimbra

Case studies ini pada perusahaan menengah dengan jumlah karyawan 25 orang dan berkeinginan memiliki sendiri mailserver pada kantor mereka. Ada banyak sisi positif jika menempatkan mailserver pada kantor sendiri daripada meng host di tempat lain. Untuk urusan keperluan IT kantor ini sudah memiliki komputer desktop dan server proxy,printer,internet. Semua sudah tersambung dalam jaringan Local Area Network, tinggal mailserver yang akan di setup disana. Internet memakai Telkom Speedy tersambung dengan Proxy server dimana proses access filtering sangat ketat, salah satunya hanya membolehkan membuka email kantor, email pribadi dan gratisan tidak diperkenankan. Direkturnya yang juga melek IT meminta saya membuat mailserver pakai Zimbra dengan topology existing yang sudah ada. Dia tanya perlu apa saja untuk keperluan diatas ? Saya jawab saya minta 1 unit komputer dan akses ke modem,server proxy dan domain manager perusahaannya. Setelah dipenuhi semuanya dia minta setengah hari harus jadi. Kondisi pada perusahaan ini untuk memiliki mailserver adalah tidak memiliki ip public (static) dikarenakan memakai layanan internet Speedy dengan IP Dynamic(berubah-rubah). Hal ini tidak menjadi kendala dan bisa diatasin dengan menggunakan fasilitas free dari Zoneedit.com yang dapat mengupdate domain perusahaan agar selalu mengarah ke ip dynamic Internet Speedy. Jadi Zimbra diset tanpa ip public dan melakukan MTA Relay ke SMTP Telkom(smtp.telkom.net). Step by step secara lengkap akan saya jabarkan di artikel ini sbb :

  1. Registrasi domain kantor ini ke zoneedit.com sebagai Managed DNS Service dan support Dynamic DNS. Jadi bisa mengupdate IP Speedy yang berubah-rubah. Add MX untuk domain perusahaan dan IP Address(A). Semua dilakukan pada control panel Zoneedit setelah kita berhasil registrasi.

  2. Mengganti nameserver domain perusahaan ini ke nameserver Zoneedit yang diberikan saat registrasi sebelumnya. Ini harus masuk ke domain manager perusahaan ini dimana diregister pertama kali.

  3. Re-setting Modem Speedy Sanex ADSL-SA 5100 untuk option Virtual Server dan DMZ diarahkan ke server proxy.

  4. Download dan Install Dynamic dns clients yang disupport oleh zoneedit .

  5. Menambah forwarding IP dan Port Policy pada server proxy ke server zimbra. Dalam hal ini port yang yang harus diforward ke IP Zimbra adalah Postfix 25,HTTP 80,POP3 110,IMAP 143,LDAP 389,HTTPS 443,Tomcat IMAP SSL 993,Tomcat POP SSL 995,Tomcat LMTP 7025,7306,7307

  6. Install Sistem operasi Linux dan Deploy Zimbra Open Source Edition ke server mailserver.

  7. Testing kirim dan terima email mengunakan webmail dan mail client.

Okay sekarang saatnya melihat proses instalasi dan konfigurasi berupa text dan capture gambar yang sempat saya dokumentasikan :

Read the rest of this entry »

Instalasi OCSP Responder

| Posted in Certificate Authority, Debian, PKI, Project, Security

Artikel ini merupakan kelanjutan dari artikel sebelumnya berjudul : Membuat Certification Authority dengan EJBCA,OCSP,JBOSS,Java,OpenLDAP.

Online Certificate Status Protocol (OCSP) sangat dibutuhkan dalam pembuatan public key infrastructure, OCSP merupakan protocol query(relying parties).  OCSP adalah sebuah status protocol yang dapat menghasilkan informasi status certificate secara real time, termasuk data-data yang berisi certificate revocation lists (CRLs).  Instalasi OCSP kali ini masih menggunakan software open source EJBCA.

Server OCSP bisa ditempatkan diluar server EJBCA yang berfungsi sebagai CA(certificateion authority).

Proses instalasi ini berada pada mesin berbeda dengan EJBCA.
Tahapannya :

– Install Java JDK, Ant,JBOSS,EJBCA

Install mysqlserver dan create username databse ejbca, dan allow grant privileges IP dari server EJBCA., settingan ini pada ocsp-database di server EJBCA. Jadi mysql di server OCSP akan berisi informasi CRLs dari server EJBCA.

ocsp-svr:/ejbca# ant -version
Apache Ant version 1.7.1 compiled on June 27 2008

ocsp-svr:/ejbca# java -version
java version “1.6.0_19”
Java™ SE Runtime Environment (build 1.6.0_19-b04)
Java HotSpot™ Client VM (build 16.2-b04, mixed mode, sharing)

– Deploy OCSP, source binary EJBCA sudah diekstrak ke /ejbca :

ocsp-svr:/ejbca# cp properties sample ke properties di /ejbca/conf

Read the rest of this entry »

Setup Certification Authority dengan EJBCA,OCSP,JBOSS,Java,OpenLDAP

| Posted in Certificate Authority, Debian, Other, PKI, Project, Security

Jika diminta membuat Public Key Infrastruktur(PKI) maka saya akan pakai EJBCA(Enterprise Java Bean Certificate Authority) sebagai alternatif pertama dan Dog Tag sebagai alternatif kedua, karena berbasis open sources dapat digunakan pada sistem operasi Linux.  PKI yang berbasis Windows seperti PKI Windows 2003 Server, juga memiliki kelebihan, tapi masih lebih unggul EJBCA karena EJBCA memiliki kelebihan di sisi multiplatform operating system, aspek kriptografis maupun administrasi.

Kali ini tutorial pada salah satu mesin produksi menggunakan EJBCA pada Linux Debian. Adapun requirement yang dibutuhkan dalam instalasi ini adalah :

-Linux Debian 5.0.4
-EJBCA 3.9.6, CA dan OCSP deploy.
-JBOSS 5.1.0
-Java jdk 6 update 19
-JCE Unlimited Strength Jurisdiction Policy Files 6
-Apache Ant 1.7.0
-OpenLDAP: slapd 2.4.11

Instalasi dan Konfigurasi :

Linux Debian 5.0.4 dengan kode Lenny sudah terinstall dengan standart system. EJBCA,JBOSS,JAVA JDK,JCE harus didownload dari situs nya dan diinstall manual di Debian, Untuk Ant,OpenLDAP menggunakan apt-get.

svr:/home/gtoms# wget  http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/jdk-6u19-linux-i586.bin?BundledLineItemUUID=0AdIBe.liu0AAAEnpPtoLfW6&OrderID=kExIBe.lavIAAAEnmftoLfW6&ProductID=8ihIBe.nLjEAAAEnh3cZVnKo&FileName=/jdk-6u19-linux-i586.bin

Read the rest of this entry »

Membuat PKI Certificate Authority(CA)

| Posted in Certificate Authority, Debian, Other, PKI, Security

Setelah cukup lama mengolah server-server linux utuk segmentasi Internet Service Provider/IT seperti DNS,SMTP,Webserver,Radius,Proxy,Mysql,Routing,Bandwidth Management,dsb rasanya perlu dikembangkan ke hal lain yang masih seputar open sources dan bersifat enterprise.

Di Indonesia sedikit rasanya yang bermain dengan Public Key Infrastuktur yang dapat menghasilkan Certificate Authority(CA).  Untuk itu saya kembali berkutat tentang konsep dan teknik kriptografi kunci publik. Tentu hal ini ada motivasinya, kalau tidak dan hanya sebatas riset saja pastilah lupa lagi. Kalau kuliah di Departemen Teknik Informatika ITB materi ini ada pada bahan kuliah Kriptografi. Tapi hanya membahas secara umum definisi dan konsep-konsep saja. Implementasi/instalasinya sangat sedikit di internet, mungkin karena tidak tau manfaatnya atau mahal ilmunya pada sungkan nulis di internet. Untuk itulah saya mencoba berbagi melalui blog ini, apalagi masih berbau linux sangat sedap untuk di deploy pada server testing dan kemudian ke server produksi.

PKI adalah Public Key Infrastructure sebuah infrastruktur sekuriti yang diimplementasikan menggunakan konsep dan teknik kriptografi kunci publik.  Public Key tersebut akan diberikan sertifikat digital  oleh sebuah sistem/perusahaan CA (Certificate Authority) dan merupakan institusi terpecaya. Biasanya situs-situs perbankan seperti klikbca.com ib.bankmandiri.co.id dan lainnya memiliki sistem tersebut. Untuk perusahaan CA yang cukup terkenal seperti verisign.com thawte.com

Nah dalam tuorial ini saya membangun sistem Certificate Authority seperti yang dimiliki verisign.com thawte.com atau lainnnya yang dapat digunakan untuk sebuah perusahaan yang ingin memiliki sistem CA sendiri. Pengembangannya sampai implementasi Online Certificate Status Protocol(OCSP).

Software enterprise untuk PKI Certificate Authority adalah EJBCA (Enterprise Java Bean Certificate Authority) dibangun menggunakan J2EE technology. EJBCA dapat berfungsi sebagai unruk mengauthentikasi user dalam mengakses  intranet/extranet/internet resources, Secure communication with SSL servers and SSL clients, Smart card logon to Windows and/or Linux, Signing and encrypting email,VPN connections by issuing certificates to your VPN routers such as OpenVPN, Cisco, Juniper etc, Client VPN access with certificates in users VPN clients, Single sign-on by using a single certificate to secure logon to web applications, Creating signed documents, Issue citizen certificates for access to government resources, used in passports etc, Create CVCAs and DVs and issue CV certificates (CVC) to Document Verifiers and Inspection Systems for EU EAC ePassports. Konesp jaringannya bisa dilihat di images diatas. Nilai plusnya kita bisa menggunakan smart card pada PKI ini.

Kita mulai instalasi dan konfigurasi, software yang dibutuhkan :
-Sistem operasi Linux GNU Debian
-Java JDK 1.5 – Java 2 Platform Standard Development Kit.
-Apache Ant – Java Build Utility, used to compile and build Java programs.
-JBoss 4.0.5 – J2EE Application Server EJBCA download
-Mysql
-EJBCA dan OCSP external.
-OpenLDAP.
-OpenSSL.
-Apache Project.
-Apache mod_ssl.

Kondisi sistem operasi Linux Debian 5 sudah terinstall dengan update terakhir.

Install JAVA JDK ,Ant

ejbca:/home/gtoms# apt-get install openjdk-6-jdk ant ant-optional

Read the rest of this entry »

Membuat server PXE network booting dengan Debian Lenny

| Posted in Debian

(server HP Proliant yang akan diinstall melalui PXE Boot)

Salah satu server HP Proliant di kantor mengalami kerusakan CDROM, sehingga tidak bisa booting melalui CD yang memuat sistem operasi linux.  Untuk ini saya memfungsikan server IBM lain untuk dijadikan server PXE network booting.

(server PXE menggunakan IBM)

PXE atau “Pre-boot eXecution Environment” bermanfaat untuk  recovery sistem dan instalasi system, menggunakan network booting. Dengan PXE kita dapat booting sistem dan mendapatkan IP address dari DHCP dan menjalankan kernel melalui network.

Berikut Instalasi PXE network booting pada salah satu server yang dapat berfungsi untuk instalasi sistem operasi server lain yang jika tidak memiliki cdrom.

Server PXE : Sudah terinstall Debian Lenny5.0  dengan IP address 10.190.159.263

Server client : Akan diinstall Debian Lenny 5.0 melalui network boot PXE dengan IP Address didapat dari DHCP server PXE

===================================

Instalasi

pxe-boot:/home/gtoms# apt-get install tftpd-hpa
Reading package lists… Done
Building dependency tree
Reading state information… Done
The following extra packages will be installed:
inetutils-inetd
Recommended packages:
inet-superserver
The following NEW packages will be installed:
inetutils-inetd tftpd-hpa
0 upgraded, 2 newly installed, 0 to remove and 8 not upgraded.
Need to get 117kB of archives.
After this operation, 287kB of additional disk space will be used.
Do you want to continue [Y/n]? y
Get:1 http://kambing.ui.ac.id lenny/main inetutils-inetd 2:1.5.dfsg.1-9 [82.2kB]
Get:2 http://kambing.ui.ac.id lenny/main tftpd-hpa 0.48-2.3 [34.6kB]
Fetched 117kB in 1s (99.0kB/s)
Preconfiguring packages …
Selecting previously deselected package inetutils-inetd.
(Reading database … 13312 files and directories currently installed.)
Unpacking inetutils-inetd (from …/inetutils-inetd_2%3a1.5.dfsg.1-9_i386.deb) ...
Selecting previously deselected package tftpd-hpa.
Unpacking tftpd-hpa (from …/tftpd-hpa_0.48-2.3_i386.deb) ...
Processing triggers for man-db …
Setting up inetutils-inetd (2:1.5.dfsg.1-9) ...
Not starting internet superserver: no services enabled. (warning).
Setting up tftpd-hpa (0.48-2.3) ...
invoke-rc.d: initscript inetutils-inetd, action “force-reload” failed.
tftpd-hpa disabled in /etc/default/tftpd-hpa
pxe-boot:/home/gtoms#

pxe-boot:/home/gtoms# nano /etc/default/tftpd-hpa

#Defaults for tftpd-hpa
RUN_DAEMON=”yes”
OPTIONS=”-l -s /var/lib/tftpboot”

Read the rest of this entry »

Installation & Managing OpenVZ

| Posted in Debian, Virtualization

Virtual Private Server (VPS), juga dikenal dengan Virtual Dedicated Server (VDS) atau Virtual Server adalah teknologi server side tentang operating system dan software yang memungkinkan sebuah mesin dengan kapasitas besar di bagi ke beberapa virtual mesin. Tiap virtual mesin ini melayani operating system dan software secara independen dan dengan konfigurasi yang cepat.

Salah satu solusi membangun VPS adalah menggunakan OpenVZ. OpenVZ menawarkan solusi server virtualization dalam sistem operasi Linux.  Tutorial Installation dan  Managing OpenVZ yang saya implementasikan diterapkan pada Sistem operasi Debian 5 (Lenny).  Hasil akhirnya adalah membuat banyak server VPS dengan hardware yang sama. Jika sudah berhasil mengimplementasikan teknologi virtualisasi ini, tak elok rasanya jika tidak berbagi ilmu dengan yang lain. Untuk ini saya dokumentasikan hasil instalasi disalah satu server vps yang terletak di Gedung Cyber Mampang Jakarta.

Sistem operasi yang sudah siap Debian 5 (Lenny),  beberapa IP Publik dengan koneksi internet.

Sistem operasi Linux Debian versi 5 sudah memuat Openvz kernel packages dan tools pada main repositorynya. Jika sistem operasinya versi sebelum 5, diharapkan upgrade dahulu ke versi Lenny ini. Setelah mendapat root dan password serta ip publik pemilik server ini, aku pun langsung meluncur ke server tersebut menggunakan ssh. Berikut dokumentasinya :

Read the rest of this entry »

Debian 5.0 “Lenny”

| Posted in Debian

Yes, akhirnya Debian GNU/Linux 5.0 “Lenny” Released, tanggal 14 February 2009 bertepatan hari valentine. Tapi tidak ada hubungannya dengan perayaan valentine. Lenny yang siap didownload menunjukkan kelangsungan hidup Sistem Operasi Linux Distribusi(distro) Debian. Hingar bingar kemajuan distro besar Linux seperti Ubuntu, openSUSE, Fedora, CentOS tidak mengurangi minat developer Debian meneruskan pengembangan distro ini. Semenjak ditinggal pendirinya Ian Murdock yang lari ke SUN, Debian terus berkembang walau agak lama released antar versi.

Berikut rentang waktu code name Debian yang sudah direleased :

buzz->rex 6 bulan
rex->bo 6 bulan
bo->hamm 13 bulan
hamm->slink 8 bulan
slink->potato 17 bulan
potato->woody 23 bulan
woody->sarge 35 bulan
sarge->etch 22 bulan
etch->lenny 22 bulan

Secara pribadi saya penggemar berat Debian untuk menggunakan sistem operasi ini bagi keperluan sebuah Server. Dari release diatas saya mulai menggunakan dari versi woody, sarge, etch. Sekarang semua server yang pernah saya install sudah versi Etch(Debian 4) semua, dengan release 6 untuk keluarga Etch. Dengan keluarnya Lenny  ini membuat saya mulai menjajal versi terbaru ini.

Menurut Release Notes yang dikeluarkan Tim Developer Debian diberitahukan bahwa versi baru ini memiliki  7700 lebih paket baru dari total lebih 23200 paket. Software-software yang disertakan merupakan versi terbaru. Jadi ada penambahan hampir 70 % paket baru dibanding versi Debian 4(etch), dan ada juga yang dibuang dari versi Etch pada keluaran Lenny ini. Untuk kernel menggunakan versi 2.6.26. Debian 5 ini lebih dekat dengan pemakaian komputer desktop dan laptop dengan GUI yang lebih menarik dan ramah hardware.

Untuk software paket keperluan server seperti Apache, BIND DNS Server, Courier MTA, Exim, MySQL, OpenLDAP, OpenSSH, PHP. Postfix MTA, PostgreSQL dll dibundled dengan versi terbaru.

Setelah produksi stable dan perbaikan released Lenny kedepan, rencananya Debian versi terbaru memiliki kode name “Squeeze”

Congrats and thanks to all people involved into releasing Lenny! Keep on the good work!

Selamat Ulang Tahun ke 15 Debian !

| Posted in Debian

Tanggal 16 Agustus 2008 distribusi Linux versi Debian memasuki usia ke 15 tahun sebagai salah satu distro tertua dan terbesar berbasis Linux.  Tanggal 16 Agustus 1993 distro Debian Linux di release oleh Ian Murdock melalui Newsgroups: comp.os.linux.development.   Tahun 2007 Ian Murdock pindah ke Sun Microsystems, dan membantu mengembangkan Open Solaris. Tapi perjalanan Debian tidak behenti karena struktur kepemimpinan(Debian Project Leader) dan anggotanya terus berjalan baik.  Hasil kerja keras mereka terlihat dari release debian dengan kode nama : Buzz, Rex, Bo, Hamm,  Slink, Potato, Woody, Sarge, Etch, Lenny(sedang dikembangkan).  Release terbaru masih Debian GNU/Linux 4.0 dengan kode nama Etch.

Saya termasuk pemakai fanatik Debian sejak tahun 2002, pertama kali memakai release debian Woody sampai sekarang semua server kantor yang berbasis Linux terinstall sistem operasi Debian versi terakhir(always update). Debian saya pakai hanya untuk server karena Admin Friendly, cepat, stabil, handal. Banyak uji coba experimen memakai distribusi lain untuk server seperti keluarga Redhat(Fedora, Centos), Slackware, Opensusee, Mandrake. Tapi yang cocok dan pas untuk Linux server yah Debian ini. Ada beberapa server client(side job) juga memakai Centos dan Fedora tergantung permintaan mereka.

Debian dikenal sebagai sistem operasi dengan konsep software development yang kaku dan kolot, dimana sangat pelit memasukkan software OpenSource versi terbaru kedalam distronya, sebelum benar-benar teruji dari sisi keamanannya ataupun kestabilannya. Met ultah Mbah Debian! Terima kasih pengembang/developer Debian !.

upgrade spamassassin

| Posted in Debian, Postfix

Spamassassin merupakan software tool anti spam yang berjalan di linux. Tahun 2006 tool ini memenangkan ‘Best Linux-based Anti-spam Solution’ pada ajang Linux New Media Awards 2006. Biasanya Spamassassin diintegrasikan kedalam mailserver yang menggunakan linux. Pada mailserver utama di kantorku yang memakai Debian dengan kombinasi mailserver Postfix, Qmail, Amavisd-new, Clamav, Vpopmail dan versi Spamassassinnya masih 3.0.3 dan karena ingin mengintegrasikan plugin FuzzyOCR di Spamassassin maka harus diupgrade. Untuk mengupgrade dilakukan langkah sbb : Read the rest of this entry »

python-dev

| Posted in Debian

Sewaktu hendak menginstall urwid sebuah console user interface library untuk Speedmeter pada distro Debian. Saya menemukan error sebagai berikut :

johncalvin:/home/gtoms/urwid-0.9.5# python setup.py install
running install
error: invalid Python installation: unable to open /usr/lib/python2.3/config/Makefile (No such file or directory)

error ini pernah juga saya dapat ketika menginstall hal yang sama pada mesin dengan distro Fedora, nah jika begitu berarti instalan pythonnya belum lengkap dan perlu ditambah paket python-dev :
johncalvin:/home/gtoms/urwid-0.9.5# apt-get install python-dev
Reading Package Lists… Done
Building Dependency Tree… Done
The following extra packages will be installed:
python2.3-dev
The following NEW packages will be installed:
python-dev python2.3-dev
0 upgraded, 2 newly installed, 0 to remove and 2 not upgraded.
Need to get 1488kB of archives.
After unpacking 4678kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://komo.vlsm.org stable/main python-dev 2.3.5-2 [6638B]
Get:2 http://security.debian.org stable/updates/main python2.3-dev 2.3.5-3sarge2 [1481kB]
Fetched 1488kB in 7m28s (3319B/s)
Selecting previously deselected package python2.3-dev.
(Reading database … 28743 files and directories currently installed.)
Unpacking python2.3-dev (from …/python2.3-dev_2.3.5-3sarge2_i386.deb) ...
Selecting previously deselected package python-dev.
Unpacking python-dev (from …/python-dev_2.3.5-2_all.deb) ...
Setting up python2.3-dev (2.3.5-3sarge2) ...

Setting up python-dev (2.3.5-2) ...