Thursday 25 July 2013

Panduan Install ISPConfig3

 Pendahuluan

ISPConfig 3 adalah control panel open source untuk Linux yang mampu mengelola beberapa server menjadi satu panel kontrol.
Mendukung

ISPConfig juga mendukung beberapa software berikut ini:

HTTP: Apache2 dan nginx
SMTP: Postfix
POP3/IMAP: Courier dan Dovecot (1.2.x)
FTP: PureFTPd
DNS: BIND dan MyDNS
Database: MySQL
Statistics: Webalizer dand AWStats
Virtualization: OpenVZ

Support Sistem Operasi:

Debian 5 & 6 (recommended)
Ubuntu 8.10 – 12.04 (recommended)
CentOS 5.2 – 6.2
Fedora 10 dan 12-15
OpenSuSE 11.1 – 12.1

Header Topik

Pada bahasan ini saya akan menerangkan proses installasi ISPConfig3 menggunakan Sistem Operasi Ubuntu Server 10.04 64 bit dengan modul komplit HTTP, SMTP, POP3/IMAP, FTP, DNS, DATABASES, dan untuk STATISTICS, serta headering untuk pengamanan server.
Proses Install SSH Server

Jalan kan perintah dibawah ini untuk melakukan install ssh server pada server anda.

root@angga:~# aptitude install ssh openssh-server

Memeriksa Pengatusan Standar Shell

Pada ISPConfig /bin/sh memerlukan symlink ke /bin/dash kalo tidak proses installasi ISPConfig tidak dapat dilakukan dengan hasil yg sempurna, jadi yang kita perlukan adalah /bin/bash, bukan /bin/dash. Untuk mengedit pengaturan tersebut anda dapat menjalankan perintah sebagai berikut:

root@angga:~# dpkg-reconfigure dash

akan tampak pilihan seperti berikut ini:

Install dash as /bin/sh? <-- No

Mematikan AppArmor

AppArmor merupakan ekstensi keamanan (mirip dengan SELinux). Menurut pendapat saya AppArmor tidak perlu di aktifkan karena menyebabkan lebih banyak masalah (banyak terjadi masalah ketika AppArmor aktif karena beberapa layanan tidak bekerja seperti yang diharapkan). Oleh karena itu saya sarankan menonaktifkan itu (ini merupakan suatu keharusan jika Anda ingin menginstal ISPConfig). Untuk mematikan AppArmor anda dapat menjalankan perintah berikut:

root@angga:~# /etc/init.d/apparmor stop
root@angga:~# update-rc.d -f apparmor remove
root@angga:~# aptitude remove apparmor apparmor-utils

Sinkronisasi Sistem Clock

Ini merupakan ide yang baik untuk melakukan sinkronisasi sistem clock dengan server (protokol jaringan waktu) NTP melalui Internet. cukup jalankan perintah berikut:

root@angga:~# aptitude install ntp ntpdate

Install Postfix, Courier, Saslauthd, MySQL, rkhunter, binutils

Untuk menginstall modul ini anda dapat menjalankan perintah dibawah ini:

root@angga:~# aptitude install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-authlib-mysql courier-pop courier-pop-ssl courier-imap courier-imap-ssl libsasl2-2 libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl getmail4 rkhunter binutils maildrop

Anda akan ditanya pertanyaan-pertanyaan seperti berikut:

New password for the MySQL "root" user: <-- isi password mysql anda
Repeat password for the MySQL "root" user: <-- isi password mysql anda
Create directories for web-based administration? <-- No
General type of mail configuration: <-- Internet Site
System mail name: <-- angga.or.id
SSL certificate required <-- Ok

Agar mysql dapat di akses tidak hanya di localhost, oleh karena itu anda dapat mengedit file my.cnf dan menghapus baris bind-address = 127.0.0.1, anda dapat menjalankan perintah berikut untuk mengedit my.cnf:

root@angga:~# nano /etc/mysql/my.cnf

periksa baris berikut dan ubah seperti ini:

[...]
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
# bind-address           = 127.0.0.1
[...]

lakukan restart MySQL:

root@angga:~# /etc/init.d/mysql restart

Sekarang periksa jaringan mysql sudah aktif apa belum, dengan menjalankan perintah:

root@angga:~# netstat -tap | grep mysql

hasil akan terlihat seperti ini:

root@angga:~# netstat -tap | grep mysql
tcp        0      0 *:mysql                 *:*                     LISTEN      9732/mysqld

Selama instalasi sertifikat SSL untuk IMAP-SSL dan POP3-SSL diciptakan standar dengan hostname localhost. Anda harus mengubah ini ke (contoh: angga.or.id dalam tutorial ini) ganti dengan hostname anda, dan menghapus file imapd.pem dan pop3d.pem, dengan melakukan perintah dibawah ini:

root@angga:~# rm -f /etc/courier/imapd.pem
root@angga:~# rm -f /etc/courier/pop3d.pem

kemudian mengedit dua file berikut, ganti CN= ​localhost dengan CN=angga.or.id (silakan mengedit hal yang di perlukan):

root@angga:~# nano /etc/courier/imapd.cnf

[...]
CN=angga.or.id
[...]

root@angga:~# nano /etc/courier/pop3d.cnf

[...]
CN=angga.or.id
[...]

Jalankan perintah berikut untuk membuat sertifikat:

root@angga:~# mkimapdcert
root@angga:~# mkpop3dcert

kemudian restart Courier-IMAP-SSL dan Courier-POP3-SSL:

root@angga:~# /etc/init.d/courier-imap-ssl restart
root@angga:~# /etc/init.d/courier-pop-ssl restart

Install Amavisd-new, SpamAssassin, dan Clamav

untuk melakukan installasi modul ini anda dapat menjalankan perintah berikut:

root@angga:~# aptitude install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl

Install Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear, dan mcrypt

untuk melakukan installasi modul ini anda dapat menjalankan perintah berikut:

root@angga:~# aptitude install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libopenssl-ruby libapache2-mod-ruby

Anda akan ditanya pertanyaan-pertanyaan seperti berikut:

Web server to reconfigure automatically: <-- apache2
Configure database for phpmyadmin with dbconfig-common? <-- No

Kemudian jalankan perintah berikut untuk mengaktifkan modul:

root@angga:~# a2enmod suexec rewrite ssl actions include
root@angga:~# a2enmod dav_fs dav auth_digest

Kemudian lakukan restart Apache2:

root@angga:~# /etc/init.d/apache2 restart

Install PureFTPd And Quota

untuk melakukan installasi modul ini anda dapat menjalankan perintah berikut:

root@angga:~# aptitude install pure-ftpd-common pure-ftpd-mysql quota quotatool

kemudian mengedit file /etc/default/pure-ftpd-common, dengan menjalankan perintah:

root@angga:~# nano /etc/default/pure-ftpd-common

lihat baris berikut dan edit seperti berikut ini:

[...]
STANDALONE_OR_INETD=standalone
[...]
VIRTUALCHROOT=true
[...]

lakukan restart PureFTPd:

root@angga:~# /etc/init.d/pure-ftpd-mysql restart

edit /etc/fstab dan menambahkan ,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 pada partisi mount point /, dengan menjalankan perintah berikut ini:

root@angga:~# nano /etc/fstab

contoh:

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
# / was on /dev/sda2 during installation
UUID=b4d373b0-5695-4ed3-885d-9d28ae69c5f7 /               ext3    errors=remount-ro 0       1
# swap was on /dev/sda1 during installation
UUID=c199555b-5b67-42e6-87e2-c4b762a69e6d none            swap    sw              0       0
/dev/scd0       /media/cdrom0   udf,iso9660 user,noauto     0       0
/dev/fd0        /media/floppy0  auto    rw,user,noauto  0       0

untuk mengaktifkan quota, jalankan perintah berikut:

root@angga:~# touch /aquota.user /aquota.group
root@angga:~# chmod 600 /aquota.*
root@angga:~# mount -o remount /

root@angga:~# quotacheck -avugm
root@angga:~# quotaon -avug

Install BIND DNS Server

untuk menginstall modul ini anda dapat menjalankan perintah berikut:

root@angga:~# aptitude install bind9 dnsutils

Install Vlogger, Webalizer, And AWstats

untuk menginstall modul ini anda dapat menjalankan perintah berikut:

root@angga:~# aptitude install vlogger webalizer awstats geoip-database

kemudian menyalin file awstats_buildstaticpages.pl dengan menjalankan perintah berikut:

root@angga:~# cd /usr/share/awstats/
root@angga:/usr/share/awstats# mkdir tools
root@angga:/usr/share/awstats# cp -prf /usr/share/doc/awstats/examples/awstats_buildstaticpages.pl /usr/share/awstats/tools/awstats_buildstaticpages.pl

Install Jailkit

Jailkit diperlukan jika anda ingin pengguna SSH chroot. untuk menginstall ini anda dapat menjalankan perintah berikut:

root@angga:~# aptitude install build-essential autoconf automake1.9 libtool flex bison debhelper

proses install jailkit dengan menjalankan perintah berikut ini (jika anda membutuhkan versi terbaru silahkan periksa di website penyedia jailkit):

root@angga:~# cd /tmp
root@angga:/tmp# wget http://olivier.sessink.nl/jailkit/jailkit-2.14.tar.gz
root@angga:/tmp# tar xvfz jailkit-2.14.tar.gz
root@angga:/tmp# cd jailkit-2.14
root@angga:/tmp/jailkit-2.14# ./debian/rules binary
root@angga:/tmp/jailkit-2.14# cd ..
root@angga:/tmp# dpkg -i jailkit_2.14-1_x86_64.deb
root@angga:/tmp# rm -rf jailkit-2.14*

Install fail2ban

fail2ban boleh di install/tidak tapi disarankan anda menginstall ini, karena pada ISPConfig ini berfungsi untuk menampilkan monitoring log, untuk menginstall ini anda dapat menjalankan perintah berikut:

root@angga:~# aptitude install fail2ban

Install ISPConfig 3

Untuk menginstal ISPConfig 3 anda dapat menjalankan perintah di bawah ini, untuk versi terbaru anda dapat memeriksa di website ispconfig:

root@angga:~# cd /tmp
root@angga:/tmp# wget http://prdownloads.sourceforge.net/ispconfig/ISPConfig-3.0.4.5.tar.gz
root@angga:/tmp# tar xvfz ISPConfig-3.0.4.5.tar.gz
root@angga:/tmp# cd ispconfig3_install/install/

tahap selanjutnya untuk menajalankan installasi anda dapat menggunakan perintah berikut:

root@angga:/tmp/ispconfig3_install/install# php -q install.php

Installer akan mengkonfigurasi semua layanan seperti postfix, dll pada server anda, akan tampak proses seperti berikut ini:

root@angga:/tmp/ispconfig3_install/install# php -q install.php
PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php5/cli/conf.d/imagick.ini on line 1 in Unknown on line 0
PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php5/cli/conf.d/imap.ini on line 1 in Unknown on line 0
PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php5/cli/conf.d/mcrypt.ini on line 1 in Unknown on line 0


--------------------------------------------------------------------------------
 _____ ___________   _____              __ _
|_   _/  ___| ___ \ /  __ \            / _(_)
  | | \ `--.| |_/ / | /  \/ ___  _ __ | |_ _  __ _
  | |  `--. \  __/  | |    / _ \| '_ \|  _| |/ _` |
 _| |_/\__/ / |     | \__/\ (_) | | | | | | | (_| |
 \___/\____/\_|      \____/\___/|_| |_|_| |_|\__, |
                                              __/ |
                                             |___/
--------------------------------------------------------------------------------


>> Initial configuration

Operating System: Debian Squeeze/Sid or compatible

    Following will be a few questions for primary configuration so be careful.
    Default values are in [brackets] and can be accepted with <ENTER>.
    Tap in "quit" (without the quotes) to stop the installer.


Select language (en,de) [en]: <-- ENTER

Installation mode (standard,expert) [standard]: <-- ENTER

Full qualified hostname (FQDN) of the server, eg server1.domain.tld  [angga.or.id]: <-- ENTER

MySQL server hostname [localhost]: <-- ENTER

MySQL root username [root]: <-- ENTER

MySQL root password []: <-- isi dengan password root mysql anda

MySQL database to create [dbispconfig]: <-- ENTER

MySQL charset [utf8]: <-- ENTER

Generating a 2048 bit RSA private key
...............+++
............................+++
writing new private key to 'smtpd.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]: <-- ENTER
State or Province Name (full name) [Some-State]: <-- ENTER
Locality Name (eg, city) []: <-- ENTER
Organization Name (eg, company) [Internet Widgits Pty Ltd]: <-- ENTER
Organizational Unit Name (eg, section) []: <-- ENTER
Common Name (eg, YOUR name) []: <-- ENTER
Email Address []: <-- ENTER
Configuring Jailkit
Configuring SASL
Configuring PAM
Configuring Courier
Configuring Spamassassin
Configuring Amavisd
Configuring Getmail
Configuring Pureftpd
Configuring BIND
Configuring Apache
Configuring vlogger
Configuring Apps vhost
Configuring Firewall
Installing ISPConfig
ISPConfig Port [8080]: <-- ENTER

Configuring DBServer
Installing Crontab
no crontab for root
no crontab for getmail
Restarting services ...
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mysql restart

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the restart(8) utility, e.g. restart mysql
mysql start/running, process 24840
 * Stopping Postfix Mail Transport Agent postfix
   ...done.
 * Starting Postfix Mail Transport Agent postfix
   ...done.
 * Stopping SASL Authentication Daemon saslauthd
   ...done.
 * Starting SASL Authentication Daemon saslauthd
   ...done.
Stopping amavisd: amavisd-new.
Starting amavisd: amavisd-new.
 * Stopping ClamAV daemon clamd
   ...done.
 * Starting ClamAV daemon clamd
   ...done.
 * Stopping Courier authentication services authdaemond
   ...done.
 * Starting Courier authentication services authdaemond
   ...done.
 * Stopping Courier IMAP server...
   ...done.
 * Starting Courier IMAP server...
   ...done.
 * Stopping Courier IMAP-SSL server...
   ...done.
 * Starting Courier IMAP-SSL server...
   ...done.
 * Stopping Courier POP3 server...
   ...done.
 * Starting Courier POP3 server...
   ...done.
 * Stopping Courier POP3-SSL server...
   ...done.
 * Starting Courier POP3-SSL server...
   ...done.
 * Restarting web server apache2
 ... waiting ..   ...done.
Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -H -E -b -O clf:/var/log/pure-ftpd/transfer.log -8 UTF-8 -u 1000 -A -B
Installation completed.

Setelah itu anda dapat mengakses ISPConfig2 anda pada https://IP:8080/ (IP ganti dengan IP Static atau hostname server anda). Login dengan username admin dan password admin (Anda harus mengubah default password setelah login pertama anda)

Selesai sudah proses installasi ISPConfig3, semoga panduan ini bermanfaat. Regards, Angga

2 comments:

  1. gan untuk mengulang penginsatalan gamana caranya

    ReplyDelete
  2. Panduan Install Ispconfig3 >>>>> Download Now

    >>>>> Download Full

    Panduan Install Ispconfig3 >>>>> Download LINK

    >>>>> Download Now

    Panduan Install Ispconfig3 >>>>> Download Full

    >>>>> Download LINK

    ReplyDelete