GNU/Linux >> Belajar Linux >  >> Panels >> Panels

Server Sempurna - CentOS 5.7 x86_64 [ISPConfig 3]

Server Sempurna - CentOS 5.7 x86_64 [ISPConfig 3]

Tutorial ini menunjukkan cara menyiapkan server CentOS 5.7 x86_64 untuk instalasi ISPConfig 3, dan cara menginstal ISPConfig 3. ISPConfig 3 adalah panel kontrol webhosting yang memungkinkan Anda untuk mengkonfigurasi layanan berikut melalui browser web:Server web Apache, Postfix server email, MySQL, server nama BIND, PureFTPd, SpamAssassin, ClamAV, dan banyak lagi.

Harap perhatikan bahwa pengaturan ini tidak berfungsi untuk ISPConfig 2 ! Ini hanya berlaku untuk ISPConfig 3!

Saya tidak memberikan jaminan apa pun bahwa ini akan berhasil untuk Anda!

Untuk mempelajari cara menggunakan ISPConfig 3, saya sangat menyarankan untuk mengunduh Manual ISPConfig 3.

Pada sekitar 300 halaman, ini mencakup konsep di balik ISPConfig (admin, reseller, klien), menjelaskan cara menginstal dan memperbarui ISPConfig 3, menyertakan referensi untuk semua formulir dan bidang formulir di ISPConfig bersama dengan contoh input yang valid, dan memberikan tutorial untuk tugas paling umum di ISPConfig 3. Ini juga menjelaskan cara membuat server Anda lebih aman dan dilengkapi dengan bagian pemecahan masalah di bagian akhir.

1 Persyaratan

Untuk menginstal sistem seperti itu, Anda memerlukan yang berikut:

  • Unduh dua DVD CentOS 5.7 atau delapan CD CentOS 5.7 dari mirror di sebelah Anda (daftar mirror dapat ditemukan di sini:http://isoredirect.centos.org/centos/5/isos/x86_64/) .
  • koneksi internet yang cepat.

2 Catatan Awal

Dalam tutorial ini saya menggunakan hostname server1.example.com dengan alamat IP 192.168.0.100 dan gateway 192.168.0.1. Setelan ini mungkin berbeda untuk Anda, jadi Anda harus menggantinya jika perlu.

3 Instal Sistem Dasar

Boot dari CD CentOS 5.7 pertama Anda (CD 1) atau DVD CentOS 5.7 pertama Anda. Tekan pada prompt boot:

Diperlukan waktu lama untuk menguji media penginstalan, jadi kami melewatkan tes ini di sini:

Layar pembuka penginstal CentOS muncul. Klik Berikutnya:

Pilih bahasa Anda selanjutnya:

Pilih tata letak keyboard Anda:

Saya menginstal CentOS 5.7 pada sistem yang baru, jadi saya menjawab Ya untuk pertanyaan Apakah Anda ingin menginisialisasi drive ini, menghapus SEMUA DATA?

Sekarang kita harus memilih skema partisi untuk instalasi kita. Demi kesederhanaan, saya memilih Hapus partisi linux pada drive yang dipilih dan buat tata letak default. Ini akan menghasilkan /boot kecil dan partisi / besar serta partisi swap. Tentu saja, Anda bebas mempartisi hard drive Anda sesuka Anda. Lalu saya tekan Next:

Jawab pertanyaan berikut (Apakah Anda yakin ingin melakukannya?) dengan Ya:

Ke pengaturan jaringan. Pengaturan default di sini adalah untuk mengonfigurasi antarmuka jaringan dengan DHCP, tetapi kami memasang server, jadi alamat IP statis bukanlah ide yang buruk... Klik tombol Edit di kanan atas.

Di jendela yang muncul, hapus centang Konfigurasi IP Dinamis (DHCP) dan Aktifkan dukungan IPv6 dan berikan kartu jaringan Anda alamat IP statis (dalam tutorial ini saya menggunakan alamat IP 192.168.0.100 untuk tujuan demonstrasi) dan netmask yang sesuai (mis. 255.255.255.0; jika Anda tidak yakin tentang nilai yang benar, http://www.subnetmask.info dapat membantu Anda):

Atur nama host secara manual, mis. server1.example.com, dan masukkan gateway (mis. 192.168.0.1) dan hingga dua server DNS (mis. 8.8.8.8 dan 145.253.2.75):

Pilih zona waktu Anda:

Berikan root kata sandi:

Server Sempurna - CentOS 5.7 x86_64 [ISPConfig 3] - Halaman 2

4 Sesuaikan /etc/hosts

Selanjutnya kita edit /etc/hosts. Jadikan seperti ini:

vi /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               localhost.localdomain localhost
192.168.0.100           server1.example.com server1
::1             localhost6.localdomain6 localhost6

5 Konfigurasi Alamat IP Tambahan

(Bagian ini sepenuhnya opsional. Bagian ini hanya menunjukkan cara menambahkan alamat IP tambahan ke antarmuka jaringan Anda eth0 jika Anda memerlukan lebih dari satu alamat IP. Jika Anda setuju dengan satu alamat IP, Anda dapat melewati bagian ini.)

Mari kita asumsikan antarmuka jaringan kita adalah eth0. Lalu ada file /etc/sysconfig/network-scripts/ifcfg-eth0 yang berisi pengaturan untuk eth0. Kita dapat menggunakan ini sebagai contoh untuk antarmuka jaringan virtual baru kita eth0:0:

cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:0

Sekarang kita ingin menggunakan alamat IP 192.168.0.101 pada antarmuka virtual eth0:0. Oleh karena itu kami membuka file /etc/sysconfig/network-scripts/ifcfg-eth0:0 dan memodifikasinya sebagai berikut (kami dapat mengabaikan baris HWADDR karena ini adalah kartu jaringan fisik yang sama):

vi /etc/sysconfig/network-scripts/ifcfg-eth0:0
# Intel Corporation 82545EM Gigabit Ethernet Controller (Copper)
DEVICE=eth0:0
BOOTPROTO=static
BROADCAST=192.168.0.255
IPADDR=192.168.0.101
NETMASK=255.255.255.0
NETWORK=192.168.0.0
ONBOOT=yes

Setelah itu kita harus me-restart jaringan:

/etc/init.d/network restart

Anda mungkin juga ingin menyesuaikan /etc/hosts setelah Anda menambahkan alamat IP baru, meskipun ini tidak perlu.

Sekarang jalankan

ifconfig

Anda sekarang akan melihat alamat IP baru Anda di output:

[[email protected] ~]# ifconfig
eth0     Link encap:Ethernet  HWaddr 00:0C:29:89:71:35
         inet addr:192.168.0.100  Bcast:192.168.0.255 .Mask 255.0
          UP BROADCAST MENJALANKAN MULTICAST  MTU:1500  Metrik:1
         RX packets:307 errors:0 dropped:0 overruns:0 frame:0
      errors :0 carrier:0
         collisions:0 txqueuelen:1000
         RX byte:29217 (28.5 KiB)  TX byte:45961 (44.8 KiB)

eth0 encap HWaddr 00:0C:29:89:71:35
         inet addr:192.168.0.101  Bcast:192.168.0.255  Mask:255.255.255.0
        UP BROADCAST RUNNING MULTICAST:1
lo        Link encap:Local Loopback
         inet addr:127.0.0.1  Mask:255.0.0.0
        UP LOOPBACK MENJALANKAN  MTU:16436 RX  Metrik   :0 overruns:0 frame:0
         TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
         RX byte:560 (560.0 b)  TX bytes:560 (560.0 b)

[[email protected] ~]#

6 Nonaktifkan Firewall Dan SELinux

(Anda dapat melewati bab ini jika Anda telah menonaktifkan firewall dan SELinux di akhir penginstalan sistem dasar (di Agen Setup).)

Saya ingin menginstal ISPConfig di akhir tutorial ini yang dilengkapi dengan firewallnya sendiri. Itu sebabnya saya menonaktifkan firewall CentOS default sekarang. Tentu saja, Anda bebas untuk membiarkannya dan mengonfigurasinya sesuai kebutuhan Anda (tetapi Anda tidak boleh menggunakan firewall lain di kemudian hari karena kemungkinan besar akan mengganggu firewall CentOS).

SELinux adalah ekstensi keamanan CentOS yang seharusnya memberikan keamanan yang diperluas. Menurut pendapat saya Anda tidak memerlukannya untuk mengkonfigurasi sistem yang aman, dan biasanya menyebabkan lebih banyak masalah daripada keuntungan (pikirkan setelah Anda melakukan pemecahan masalah selama seminggu karena beberapa layanan tidak berfungsi seperti yang diharapkan, dan kemudian Anda mengetahui bahwa semuanya baik-baik saja, hanya SELinux yang menyebabkan masalah). Oleh karena itu saya menonaktifkannya juga (ini adalah suatu keharusan jika Anda ingin menginstal ISPConfig nanti).

Jalankan

system-config-securitylevel

Setel Tingkat Keamanan dan SELinux ke Dinonaktifkan dan tekan OK:

Setelah itu kita harus me-reboot sistem:

reboot

7 Instal Beberapa Perangkat Lunak

Pertama-tama kita mengimpor kunci GPG untuk paket perangkat lunak:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*

Aktifkan repositori contrib dan centosplus:

vi /etc/yum.repos.d/CentOS-Base.repo

Edit baris di bawah ini:

[base]
[...]
exclude=postfix
[...]
[updates]
[...]
exclude=postfix
[...]
[centosplus]
[...]
enabled=1
includepkgs=postfix
[...]
[contrib]
[...]
enabled=1
[...]

Kemudian kami memperbarui paket kami yang ada di sistem:

yum update

Sekarang kita install beberapa paket software yang dibutuhkan nantinya:

yum groupinstall 'Development Tools'
yum groupinstall 'Development Libraries'

8 Kuota

(Jika Anda telah memilih skema partisi yang berbeda dari saya, Anda harus menyesuaikan bab ini sehingga kuota berlaku untuk partisi yang Anda butuhkan.)

Untuk memasang kuota, kita jalankan perintah ini:

yum install quota

Edit /etc/fstab dan tambahkan,usrquota,grpquota ke partisi / (/dev/VolGroup00/LogVol00):

vi /etc/fstab
/dev/VolGroup00/LogVol00 /                       ext3    defaults,usrquota,grpquota        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
/dev/VolGroup00/LogVol01 swap                    swap    defaults        0 0

Kemudian jalankan

sentuh /aquota.user /aquota.group
chmod 600 /aquota.*
mount -o remount /
quotacheck -avugm
quotaon -avug

untuk mengaktifkan kuota.

9 Instal Apache, MySQL, phpMyAdmin

Pertama kita aktifkan repositori RPMforge pada sistem CentOS karena banyak paket yang akan kita instal selama tutorial ini tidak tersedia di repositori resmi CentOS 5.7:

wget http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
rpm --import RPM-GPG-KEY.dag.txt

cd /tmp
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm
rpm -ivh rpmforge-release- 0.5.2-2.el5.rf.x86_64.rpm

(Jika tautan di atas tidak berfungsi lagi, Anda dapat menemukan versi rpmforge-release saat ini di sini:http://packages.sw.be/rpmforge-release/)

Setelah itu kita dapat menginstal paket-paket yang dibutuhkan dengan satu perintah:

yum install ntp httpd mysql-server php php-mysql php-mbstring php-mcrypt phpmyadmin

Server Sempurna - CentOS 5.7 x86_64 [ISPConfig 3] - Halaman 4

10 Instal Dovecot

Ada paket Dovecot di repositori CentOS, tapi sayangnya tidak mendukung MySQL. Oleh karena itu kita harus menghapus Dovecot yang ada dan menginstal paket Dovecot lain (dari ATrpms) yang datang dengan dukungan MySQL.

yum remove dovecot

Buat file baru /etc/yum.repos.d/atrpms.repo...

vi /etc/yum.repos.d/atrpms.repo

... dan masukkan baris berikut ke dalam file:

[atrpms]
name=Red Hat Enterprise Linux 5 - $basearch - ATrpms
baseurl=http://dl.atrpms.net/el5-$basearch/atrpms/stable
failovermethod=priority
exclude=dovecot-2*
includepkgs=dovecot dovecot-sieve

#
# requires stable
#
[atrpms-testing]
name=Red Hat Enterprise Linux 5 - $basearch - ATrpms testing
baseurl=http://dl.atrpms.net/el5-$basearch/atrpms/testing
failovermethod=priority
enabled=1
exclude=dovecot-2*
includepkgs=dovecot dovecot-sieve

#
# requires stable and testing
#
[atrpms-bleeding]
name=Red Hat Enterprise Linux 5 - $basearch - ATrpms bleeding
baseurl=http://dl.atrpms.net/el5-$basearch/atrpms/bleeding
failovermethod=priority
enabled=0

Kemudian impor kunci tge gpg dari repositori atrpm...

wget http://ATrpms.net/RPM-GPG-KEY.atrpms
rpm --import RPM-GPG-KEY.atrpms

...dan instal Dovecot:

yum install dovecot dovecot-sieve

Pada sistem 64-bit, lakukan juga ini (jangan lakukan ini pada sistem 32-bit!):

ln -s /usr/lib64/dovecot/ /usr/lib/dovecot

Sekarang kita membuat link startup sistem untuk Dovecot:

chkconfig --levels 235 dovecot aktif
/etc/init.d/dovecot start

Jika Dovecot gagal memulai dengan kesalahan berikut:

Fatal: listen(::, 143) failed: Address already in use

... buka /etc/dovecot.conf...

vi /etc/dovecot.conf 

... dan tambahkan baris listen =*:

[...]
#listen = *, [::]
listen = *
[...]

Kemudian coba mulai Dovecot lagi:

/etc/init.d/dovecot start 

11 Instal Postfix Dengan Dukungan MySQL

Paket Postfix "normal" dari repositori CentOS tidak memiliki MySQL, tetapi paket Postfix dari repositori CentOS Plus memilikinya. Oleh karena itu kami menghapus Postfix...

yum remove postfix

... dan instal lagi, kali ini dari repositori CentOS Plus:

yum install postfix   

Kemudian matikan Sendmail dan mulai Postfix dan MySQL:

chkconfig --levels 235 mysqld pada
/etc/init.d/mysqld start

chkconfig --level 235 sendmail mati
chkconfig --level 235 postfix aktif
/etc/init.d/sendmail stop
/etc/init.d/postfix start

12 Instal Getmail

Getmail dapat diinstal sebagai berikut:

yum install getmail

13 Tetapkan Kata Sandi MySQL Dan Konfigurasi phpMyAdmin

Setel kata sandi untuk akun root MySQL:

mysql_secure_installation

[[email protected] tmp]# mysql_secure_installation




CATATAN:MENJALANKAN SEMUA BAGIAN SKRIP INI DIREKOMENDASIKAN UNTUK SEMUA MySQL
     SERVER IN PRODUKSI MENGGUNAKAN! HARAP BACA SETIAP LANGKAH DENGAN SEKSAMA!


Untuk masuk ke MySQL guna mengamankannya, kami memerlukan kata sandi
saat ini untuk pengguna root. Jika Anda baru menginstal MySQL, dan
belum menyetel sandi root, sandi akan kosong,
jadi Anda cukup tekan enter di sini.

Enter sandi saat ini untuk root (masukkan untuk none):
Oke, sandi berhasil digunakan, pindah ...

Menyetel sandi root memastikan bahwa tidak ada yang dapat masuk ke akar MySQL
pengguna tanpa otorisasi yang sesuai.

Tetapkan sandi root? [Y/n] <-- ENTER
Sandi baru: <-- yourrootsqlpassword
Masukkan kembali sandi baru: <-- yourrootsqlpassword
Sandi berhasil diperbarui!
Memuat ulang tabel hak istimewa. .
 ... Berhasil!


Secara default, penginstalan MySQL memiliki pengguna anonim yang memungkinkan siapa saja
masuk ke MySQL tanpa harus memiliki akun pengguna dibuat untuk
mereka. Ini dimaksudkan hanya untuk pengujian, dan untuk membuat pemasangan
menjadi sedikit lebih lancar. Anda harus menghapusnya sebelum berpindah ke 
lingkungan produksi.

Hapus pengguna anonim? [Y/n] <-- ENTER
 ... Berhasil!

Biasanya, root hanya diizinkan untuk terhubung dari 'localhost'. Ini
memastikan bahwa seseorang tidak dapat menebak kata sandi root dari jaringan.

Larang login root dari jarak jauh? [Y/n] <-- ENTER
 ... Berhasil!

Secara default, MySQL dilengkapi dengan database bernama 'test' yang dapat diakses oleh siapa saja
. Ini juga ditujukan hanya untuk pengujian, dan harus dihapus
sebelum dipindahkan ke lingkungan produksi.

Hapus database pengujian dan akses ke sana? [Y/n] <-- MASUKKAN
 - Menghapus basis data pengujian...
 ... Berhasil!
 - Menghapus hak istimewa pada basis data pengujian...
 ... Berhasil !

Memuat ulang tabel hak istimewa akan memastikan bahwa semua perubahan yang dibuat sejauh ini
akan segera berlaku.

Muat ulang tabel hak istimewa sekarang? [Y/n] <-- ENTER
 ... Berhasil!

Membersihkan...



Selesai! Jika Anda telah menyelesaikan semua langkah di atas, penginstalan MySQL
Anda seharusnya kini aman.

Terima kasih telah menggunakan MySQL!


[contoh @unixlinux.online tmp]#

Sekarang kita mengkonfigurasi phpMyAdmin. Kami mengubah konfigurasi Apache sehingga phpMyAdmin mengizinkan koneksi tidak hanya dari localhost (dengan mengomentari bait ):

vi /etc/httpd/conf.d/phpmyadmin.conf
#
#  Web application to manage MySQL
#

#<Directory "/usr/share/phpmyadmin">
#  Order Deny,Allow
#  Deny from all
#  Allow from 127.0.0.1
#</Directory>

Alias /phpmyadmin /usr/share/phpmyadmin
Alias /phpMyAdmin /usr/share/phpmyadmin
Alias /mysqladmin /usr/share/phpmyadmin

Selanjutnya kita ubah otentikasi di phpMyAdmin dari cookie menjadi http:

vi /usr/share/phpmyadmin/config.inc.php
[...]
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'http';
[...]

Kemudian kami membuat tautan startup sistem untuk Apache dan memulainya:

chkconfig --levels 235 httpd pada
/etc/init.d/httpd start

Sekarang Anda dapat mengarahkan browser Anda ke http://server1.example.com/phpmyadmin/ atau http://192.168.0.100/phpmyadmin/ dan masuk dengan nama pengguna root dan kata sandi MySQL root Anda yang baru.

14 Instal Amavisd-new, SpamAssassin Dan ClamAV

Untuk menginstal amavisd-new, spamassassin dan clamav, jalankan perintah berikut:

yum install amavisd-new spamassassin clamav clamd unzip bzip2 unrar perl-DBD-mysql

Buka /etc/sysconfig/amavisd...

vi /etc/sysconfig/amavisd

... dan batalkan komentar pada baris CONFIG_FILE="/etc/amavisd.conf":

### Uncomment this if you want to use amavis with sendmail milter interface.
### See README.milter for details.
#
#MILTER_SOCKET="local:/var/amavis/amavis-milter.sock"
#MILTER_SOCKET="[email protected]"

### These are other defaults.
#AMAVIS_ACCOUNT="amavis"
CONFIG_FILE="/etc/amavisd.conf"
#MILTER_FLAGS=""

Kemudian kita mulai freshclam, amavisd, dan clamd...

sa-update
chkconfig --levels 235 amavisd aktif
chkconfig --levels 235 clamd aktif
/usr/bin/freshclam
/etc/init.d/amavisd start
/etc/init.d/clamd start

... dan buat beberapa direktori yang diperlukan:

mkdir /var/run/amavisd /var/spool/amavisd /var/spool/amavisd/tmp /var/spool/amavisd/db
chown amavis /var/run/amavisd /var/spool/amavisd /var/ spool/amavisd/tmp /var/spool/amavisd/db
ln -s /var/run/clamav/clamd.sock /var/spool/amavisd/clamd.sock

Server Sempurna - CentOS 5.7 x86_64 [ISPConfig 3] - Halaman 5

15 Menginstal Apache2 Dengan mod_php, mod_fcgi/PHP5, dan suPHP

ISPConfig 3 memungkinkan Anda untuk menggunakan mod_php, mod_fcgi/PHP5, cgi/PHP5, dan suPHP per situs web.

mod_fcgid tidak tersedia di repositori resmi CentOS, tetapi ada paket untuk CentOS 5.x di repositori pengujian centos.karan.org. Kami mengaktifkan repositori sebagai berikut:

cd /etc/yum.repos.d/
wget http://centos.karan.org/kbsingh-CentOS-Extras.repo

Selanjutnya kita buka /etc/yum.repos.d/kbsingh-CentOS-Extras.repo...

vi /etc/yum.repos.d/kbsingh-CentOS-Extras.repo

... dan atur gpgcheck ke 0 dan aktifkan ke 1 di bagian [kbs-CentOS-Testing]:

[...]
# pkgs in the -Testing repo are not gpg signed
[kbs-CentOS-Testing]
name=CentOS.Karan.Org-EL$releasever - Testing
gpgcheck=0
gpgkey=http://centos.karan.org/RPM-GPG-KEY-karan.org.txt
enabled=1
baseurl=http://centos.karan.org/el$releasever/extras/testing/$basearch/RPMS/

Setelah itu kita dapat menginstal Apache2 dengan mod_php5, mod_fcgid, dan PHP5:

yum install php php-devel php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc php-eaccelerator php-mbstring php-mcrypt php-mhash php-mssql php-snmp php-soap php-tidy curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel mod_fcgid php-cli httpd-devel

Selanjutnya kita buka /etc/php.ini...

vi /etc/php.ini

... dan ubah pelaporan kesalahan (agar pemberitahuan tidak ditampilkan lagi) dan tambahkan cgi.fix_pathinfo =1 di akhir file:

[...]
;error_reporting  =  E_ALL
error_reporting = E_ALL & ~E_NOTICE
[...]
cgi.fix_pathinfo = 1

Selanjutnya kita install suPHP:

cd /tmp
wget http://suphp.org/download/suphp-0.7.1.tar.gz
tar xvfz suphp-0.7.1.tar.gz
cd suphp-0.7 .1/
./configure --prefix=/usr --sysconfdir=/etc --with-apr=/usr/bin/apr-1-config --with-apxs=/usr/sbin/apxs --with-apache-user=apache --with-setid-mode=owner --with-php=/usr/bin/php-cgi --with-logfile=/var/log/httpd/suphp_log --enable- SUPHP_USE_USERGROUP=ya
buat
buat instal

Kemudian kita tambahkan modul suPHP ke konfigurasi Apache kita...

vi /etc/httpd/conf.d/suphp.conf
LoadModule suphp_module modules/mod_suphp.so

... dan buat file /etc/suphp.conf sebagai berikut:

vi /etc/suphp.conf
[global]
;Path to logfile
logfile=/var/log/httpd/suphp.log
;Loglevel
loglevel=info
;User Apache is running as
webserver_user=apache
;Path all scripts have to be in
docroot=/
;Path to chroot() to before executing script
;chroot=/mychroot
; Security options
allow_file_group_writeable=true
allow_file_others_writeable=false
allow_directory_group_writeable=true
allow_directory_others_writeable=false
;Check wheter script is within DOCUMENT_ROOT
check_vhost_docroot=true
;Send minor error messages to browser
errors_to_browser=false
;PATH environment variable
env_path=/bin:/usr/bin
;Umask to set, specify in octal notation
umask=0077
; Minimum UID
min_uid=100
; Minimum GID
min_gid=100
[handlers]
;Handler for php-scripts
x-httpd-suphp="php:/usr/bin/php-cgi"
;Handler for CGI-scripts
x-suphp-cgi="execute:!self"

Akhirnya kita restart Apache:

/etc/init.d/httpd restart

15.1 Ruby

Dimulai dengan versi 3.0.3, ISPConfig 3 memiliki dukungan bawaan untuk Ruby. Alih-alih menggunakan CGI/FastCGI, ISPConfig bergantung pada mod_ruby yang tersedia di Apache server.

Untuk CentOS 5.7, tidak ada paket mod_ruby yang tersedia, jadi kita harus mengompilasinya sendiri. Pertama kita install beberapa prasyarat:

yum install httpd-devel ruby ruby-devel

Selanjutnya kita download dan install mod_ruby sebagai berikut :

cd /tmp
wget http://modruby.net/archive/mod_ruby-1.3.0.tar.gz
tar zxvf mod_ruby-1.3.0.tar.gz
cd mod_ruby-1.3 .0/
./configure.rb --with-apr-includes=/usr/include/apr-1
make
make install

Terakhir kita harus menambahkan modul mod_ruby ke konfigurasi Apache, jadi kita buat file /etc/httpd/conf.d/ruby.conf...

vi /etc/httpd/conf.d/ruby.conf
LoadModule ruby_module modules/mod_ruby.so

... dan mulai ulang Apache:

/etc/init.d/httpd restart

15.2 WebDAV

WebDAV seharusnya sudah diaktifkan, tetapi untuk memeriksanya, buka /etc/httpd/conf/httpd.conf dan pastikan ketiga modul berikut aktif:

vi /etc/httpd/conf/httpd.conf
[...]
LoadModule auth_digest_module modules/mod_auth_digest.so
[...]
LoadModule dav_module modules/mod_dav.so
[...]
LoadModule dav_fs_module modules/mod_dav_fs.so
[...]

Jika Anda harus memodifikasi /etc/httpd/conf/httpd.conf, jangan lupa untuk me-restart Apache setelahnya:

/etc/init.d/httpd restart 

16 Instal PureFTPd

PureFTPd dapat diinstal dengan perintah berikut:

yum install pure-ftpd

Kemudian buat tautan startup sistem dan mulai PureFTPd:

chkconfig --levels 235 pure-ftpd aktif
/etc/init.d/pure-ftpd start

Sekarang kita mengkonfigurasi PureFTPd untuk mengizinkan sesi FTP dan TLS. FTP adalah protokol yang sangat tidak aman karena semua kata sandi dan semua data ditransfer dalam teks yang jelas. Dengan menggunakan TLS, seluruh komunikasi dapat dienkripsi, sehingga membuat FTP jauh lebih aman.

OpenSSL dibutuhkan oleh TLS; untuk menginstal OpenSSL, kita cukup menjalankan:

yum install openssl

Buka /etc/pure-ftpd/pure-ftpd.conf...

vi /etc/pure-ftpd/pure-ftpd.conf

Jika Anda ingin mengizinkan sesi FTP dan TLS, setel TLS ke 1:

[...]
# This option can accept three values :
# 0 : disable SSL/TLS encryption layer (default).
# 1 : accept both traditional and encrypted sessions.
# 2 : refuse connections that don't use SSL/TLS security mechanisms,
#     including anonymous sessions.
# Do _not_ uncomment this blindly. Be sure that :
# 1) Your server has been compiled with SSL/TLS support (--with-tls),
# 2) A valid certificate is in place,
# 3) Only compatible clients will log in.
TLS                      1
[...]

Untuk menggunakan TLS, kita harus membuat sertifikat SSL. Saya membuatnya di /etc/ssl/private/, oleh karena itu saya membuat direktori itu terlebih dahulu:

mkdir -p /etc/ssl/private/

Setelah itu, kita dapat membuat sertifikat SSL sebagai berikut:

openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem

Nama Negara (kode 2 huruf) [GB]:<-- Masukkan Nama Negara Anda (mis., "DE").
Nama Negara Bagian atau Provinsi (nama lengkap) [Berkshire]:<-- Masukkan Negara Bagian atau Provinsi Anda Nama.
Nama Lokalitas (mis., kota) [Newbury]:<-- Masukkan Kota Anda.
Nama Organisasi (mis., Perusahaan) [Perusahaan Saya Ltd]:<-- Masukkan Nama Organisasi Anda (mis. , nama perusahaan Anda).
Nama Unit Organisasi (mis., bagian) []:<-- Masukkan Nama Unit Organisasi Anda (mis. "Departemen TI").
Nama Umum (mis., nama Anda atau nama host server Anda) []:<-- Masukkan Nama Domain yang Memenuhi Syarat dari sistem (misalnya "server1.example.com").
Alamat Email []:<-- Masukkan Alamat Email Anda.

Ubah izin sertifikat SSL:

chmod 600 /etc/ssl/private/pure-ftpd.pem

Akhirnya restart PureFTPd:

 /etc/init.d/pure-ftpd restart

Itu dia. Anda sekarang dapat mencoba terhubung menggunakan klien FTP Anda; namun, Anda harus mengonfigurasi klien FTP Anda untuk menggunakan TLS.

17 Instal Server DNS Chroot (BIND9)

Untuk menginstal BIND9 chroot, kita lakukan ini:

yum install bind-chroot

Kemudian lakukan ini:

chmod 755 /var/named/
chmod 775 /var/named/chroot/
chmod 775 /var/named/chroot/var/
chmod 775 /var/named/chroot/var/ bernama/
chmod 775 /var/named/chroot/var/run/
chmod 777 /var/named/chroot/var/run/named/
cd /var/named/chroot/ var/named/
ln -s ../../ chroot
touch /var/named/chroot/var/named/named.local
cp /usr/share/doc/bind -9.3.6/sample/var/named/named.root /var/named/chroot/var/named/named.root
touch /var/named/chroot/etc/named.conf.local
vi /var/named/chroot/etc/named.conf

//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
options {
        listen-on port 53 { any; };
        listen-on-v6 port 53 { any; };
        directory       "/var/named/chroot/var/named";
        dump-file       "/var/named/chroot/var/named/data/cache_dump.db";
        statistics-file "/var/named/chroot/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/chroot/var/named/data/named_mem_stats.txt";
        allow-query     { any; };
        recursion no;
        allow-recursion { none; };
};
logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};
zone "." IN {
        type hint;
        file "named.root";
};
include "/var/named/chroot/var/named/named.local";

chkconfig --levels 235 bernama pada
/etc/init.d/named start

BIND akan berjalan di penjara chroot di bawah /var/named/chroot/var/named/. Saya akan menggunakan ISPConfig untuk mengkonfigurasi BIND (zona, dll.).

18 Instal Vlogger, Webalizer, dan AWStats

Vlogger, webalizer, dan AWStats dapat diinstal sebagai berikut:

yum install webalizer awstats perl-DateTime-Format-HTTP perl-DateTime-Format-Builder

cd /tmp
wget http://n0rp.chemlab.org/vlogger/vlogger-1.3.tar.gz
tar xvfz vlogger-1.3.tar.gz
mv vlogger-1.3/vlogger /usr/sbin/
rm -rf vlogger*

19 Instal Jailkit

Jailkit diperlukan hanya jika Anda ingin chroot pengguna SSH. Ini dapat diinstal sebagai berikut (penting:Jailkit harus diinstal sebelum ISPConfig - tidak dapat diinstal setelahnya!):

cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.14.tar.gz
tar xvfz jailkit-2.14.tar.gz
cd jailkit-2.14
./configure
make
make install
cd ..
rm -rf jailkit-2.14*

20 Instal fail2ban

Ini opsional tetapi disarankan, karena monitor ISPConfig mencoba menampilkan log:

yum install fail2ban

chkconfig --levels 235 fail2ban pada
/etc/init.d/fail2ban mulai

21 Instal rkhunter

rkhunter dapat diinstal sebagai berikut:

yum install rkhunter

Server Sempurna - CentOS 5.7 x86_64 [ISPConfig 3] - Halaman 6

22 Instal SquirrelMail

Untuk menginstal klien webmail SquirrelMail, jalankan...

yum install squirrelmail

... dan restart Apache:

/etc/init.d/httpd restart

Kemudian konfigurasikan SquirrelMail:

/usr/share/squirrelmail/config/conf.pl

Kita harus memberitahu SquirrelMail bahwa kita menggunakan Courier-IMAP/-POP3:

Konfigurasi SquirrelMail : Baca: config.php (1.4.0)
--------------------------------- ------------------------
Menu Utama --
1. Preferensi Organisasi
2. Setelan Server
3. Folder Default
4. Opsi Umum
5. Tema
6. Buku Alamat
7. Pesan Hari ini (MOTD)
8. Plugin
9. Basis data
10. Bahasa

D. Setel setelan yang telah ditentukan sebelumnya untuk server IMAP tertentu

C   Matikan warna
S   Simpan data
Q   Keluar

Perintah >> <-- D


Konfigurasi SquirrelMail : Baca: config.php
--------------------------- ------------------------------
Sementara kami telah membangun SquirrelMail, kami telah menemukan beberapa
preferensi yang berfungsi lebih baik dengan beberapa server yang tidak berfungsi dengan baik
dengan server lain. Jika Anda memilih server IMAP Anda, opsi ini akan
menyetel beberapa setelan yang telah ditentukan sebelumnya untuk server tersebut.

Harap diperhatikan bahwa Anda masih harus melakukan dan memastikan
semuanya benar. Ini tidak mengubah semuanya. 
Hanya ada beberapa setelan yang akan diubah.

Harap pilih server IMAP Anda:
    bincimap    = Server IMAP Binc
    kurir     = Server Kurir /IMAP
>    cyrus       = Server IMAP Cyrus
    dovecot     = Server IMAP Dovecot Secure
    pertukaran    = Server IMAP Microsoft Exchange
    hmailserver=  < Server Mailmer /32
    uw         = Server IMAP Universitas Washington

    keluar       = Jangan mengubah apa pun
Command >> <-- dovecot
>

Konfigurasi SquirrelMail : Baca: config.php
-------------------------------------- -------------------
Sementara kami sedang membangun SquirrelMail, kami telah menemukan beberapa preferensi yang berfungsi lebih baik dengan beberapa server yang tidak berfungsi begitu
baik dengan orang lain. Jika Anda memilih server IMAP Anda, opsi ini akan
menyetel beberapa setelan yang telah ditentukan sebelumnya untuk server tersebut.

Harap diperhatikan bahwa Anda masih harus melakukan dan memastikan
semuanya benar. Ini tidak mengubah semuanya. 
Hanya ada beberapa setelan yang akan diubah.

Harap pilih server IMAP Anda:
    bincimap    = Server IMAP Binc
    kurir     = Server Kurir /IMAP
>    cyrus       = Server IMAP Cyrus
    dovecot     = Server IMAP Dovecot Secure
    pertukaran    = Server IMAP Microsoft Exchange
    hmailserver=  < Server Mailmer /32
    uw         = Server IMAP Universitas Washington

    keluar       = Jangan ubah apa pun
Command >> dovecot

    _ server default_folder_prefix =
trash_folder =trash
sent_folder =dikirim
draft_folder =drafts
show_prefix_option =false
default_sub_of_inbox =false
show_contain_subfolders_opted>           optional_delimiter = detect
         delete_folder = false

Tekan tombol apa saja untuk melanjutkan... <-- tekan tombol


Konfigurasi SquirrelMail : Baca: config.php (1.4.0)
------------------------------------------------------------------- -----------
Menu Utama --
1. Preferensi Organisasi
2. Setelan Server
3. Folder Default
4. Opsi Umum
5. Tema
6. Buku Alamat
7. Pesan Hari ini (MOTD)
8. Plugin
9. Basis data
10. Bahasa

D. Setel setelan yang telah ditentukan sebelumnya untuk server IMAP tertentu

C   Matikan warna
S   Simpan data
Q   Keluar

Perintah >> <--S


Konfigurasi SquirrelMail : Baca: config.php (1.4.0)
---------------------- -----------------------------------
Menu Utama --
1. Preferensi Organisasi
2. Setelan Server
3. Folder Default
4. Opsi Umum
5. Tema
6. Buku Alamat
7. Pesan Hari ini (MOTD)
8. Plugin
9. Basis data
10. Bahasa

D. Setel setelan yang telah ditentukan sebelumnya untuk server IMAP tertentu

C   Matikan warna
S   Simpan data
Q   Keluar

Perintah >> <--Q

Satu hal terakhir yang perlu kita lakukan adalah memodifikasi file /etc/squirrelmail/config_local.php dan mengomentari variabel $default_folder_prefix - jika Anda tidak melakukan ini, Anda akan melihat pesan kesalahan berikut di SquirrelMail setelah Anda masuk :Permintaan:BUAT "Terkirim" Alasan yang Diberikan:Nama kotak surat tidak valid.

vi /etc/squirrelmail/config_local.php
<?php

/**
 * Local config overrides.
 *
 * You can override the config.php settings here.
 * Don't do it unless you know what you're doing.
 * Use standard PHP syntax, see config.php for examples.
 *
 * @copyright &copy; 2002-2006 The SquirrelMail Project Team
 * @license http://opensource.org/licenses/gpl-license.php GNU Public License
 * @version $Id: config_local.php,v 1.2 2006/07/11 03:33:47 wtogami Exp $
 * @package squirrelmail
 * @subpackage config
 */

//$default_folder_prefix                = '';
?>

Sekarang Anda dapat mengetikkan http://server1.example.com/webmail atau http://192.168.0.100/webmail di browser Anda untuk mengakses SquirrelMail.

23 Instal ISPConfig 3

Untuk menginstal ISPConfig 3 dari versi rilis terbaru, lakukan ini:

cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install /instal/

Langkah selanjutnya adalah menjalankan

php -q install.php

Ini akan memulai penginstal ISPConfig 3:

[[email protected] install]# php -q install.php


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


>> Konfigurasi awal

Sistem Operasi: CentOS 5 atau kompatibel

    Berikut adalah beberapa pertanyaan untuk konfigurasi utama jadi hati-hati.
    Nilai default berada dalam [tanda kurung] dan dapat diterima dengan .
    Ketuk di "keluar" (tanpa tanda kutip) untuk menghentikan pemasang.


Pilih bahasa (id, de) [id]: <-- ENTER

Mode instalasi (standard,expert) [standard]: <-- ENTER

Hostname berkualifikasi lengkap (FQDN) dari server , misalnya server1.domain.tld  [server1.example.com]: <-- ENTER

MySQL server hostname [localhost]: <-- ENTER

MySQL root username [ root]: <-- ENTER

MySQL root password []: <-- yourrootsqlpas sword

MySQL database untuk membuat [dbispconfig]: <-- ENTER

MySQL charset [utf8]: <-- ENTER

Membuat 2048 bit RSA kunci pribadi
...............+++
...+++
menulis kunci pribadi baru ke 'smtpd.key'
-----
Anda akan diminta untuk memasukkan informasi yang akan dimasukkan ke dalam permintaan sertifikat Anda.
Yang akan Anda masukkan adalah apa yang disebut Nama yang Terhormat atau DN.
Ada cukup banyak bidang tetapi Anda dapat membiarkan beberapa kosong
Untuk beberapa bidang akan ada nilai default,
Jika Anda memasukkan.', bidang tersebut akan di kosongkan .
-----
Nama Negara (2 kode huruf) [GB]: <-- ENTER
Nama Negara atau Provinsi (nama lengkap) [Berkshire]: <- - MASUKKAN
Nama Lokalitas (mis., kota) [Newbury]: <-- MASUKKAN
Nama Organisasi (mis., perusahaan) [Perusahaan Saya Ltd]: <-- MASUKKAN
Nama Unit Organisasi ( mis., bagian) []: <-- ENTER
Nama Umum (mis., nama Anda atau nama host server Anda) []: <-- ENTER
Alamat Email ss []: <-- ENTER
Mengonfigurasi Jailkit
Mengonfigurasi Dovecot
Mengonfigurasi Spamassassin
Mengonfigurasi Amavisd
Mengonfigurasi Getmail
Mengonfigurasi Pureftpd
Mengonfigurasi BIND
Mengonfigurasi Apache
Mengonfigurasi Vlogger
Mengonfigurasi Aplikasi vhost
Mengonfigurasi Firewall
Menginstal ISPConfig
ISPConfig Port [8080]: <-- ENTER

Mengonfigurasi DBServer
Menginstal ISPConfig crontab
no crontab for root
no crontab for getmail
Memulai ulang layanan ...
Menghentikan MySQL:                        > Memulai mysql:[ok]
Mematikan postfix:[ok]
Mulai postfix:[ok]
Menghentikan saslauthd:[gagal]
Memulai saslauthd:[ok]
Mematikan Pemindai Virus Mail (amavisd):    [  OK  ]
Memulai Mail Virus Scanner (amavisd):                 [  OK  ]
Menghentikan Clam AntiVirus Daemon:                 >      > ruste ". br /> [ok]
Menghentikan dovecot imap:[ok]
Jika Anda memiliki masalah dengan kegagalan otentikasi,
Aktifkan pengaturan auth_debug. Lihat http://wiki.dovecot.org/WhyDoesItNotWork
Pesan ini hilang setelah login pertama yang berhasil.
Fatal: listen(::, 143) failed: Alamat sudah digunakan
Mulai Dovecot IMAP:[Gagal]
Menghentikan httpd:[ok]
[Senin 26 September 13:29:58 2011] [Warn] namevirtualhost*:80 tidak memiliki virtualhosts
Memulai httpd:[OK ]
Menghentikan Pure-FTPD:[OK]
Memulai Pure-FTPD:[OK]
Instalasi selesai.
[[email protected] Instal]#

Pemasang secara otomatis mengonfigurasi semua layanan yang mendasarinya, jadi tidak diperlukan konfigurasi manual.

Jika Dovecot gagal memulai dengan kesalahan berikut:

Fatal: listen(::, 143) failed: Address already in use

... buka /etc/dovecot.conf...

vi /etc/dovecot.conf 

... dan tambahkan baris listen =*:

[...]
#listen = *, [::]
listen = *
[...]

Kemudian coba mulai Dovecot lagi:

/etc/init.d/dovecot start

Setelah itu Anda dapat mengakses ISPConfig 3 di bawah http://server1.example.com:8080/ atau http://192.168.0.100:8080/. Masuk dengan nama pengguna admin dan kata sandi admin (Anda harus mengubah kata sandi default setelah login pertama Anda):

Sistem sekarang siap digunakan.

23.1 ISPConfig 3 Manual

Untuk mempelajari cara menggunakan ISPConfig 3, saya sangat menyarankan untuk mengunduh Manual ISPConfig 3.

Pada sekitar 300 halaman, ini mencakup konsep di balik ISPConfig (admin, reseller, klien), menjelaskan cara menginstal dan memperbarui ISPConfig 3, menyertakan referensi untuk semua formulir dan bidang formulir di ISPConfig bersama dengan contoh input yang valid, dan memberikan tutorial untuk tugas paling umum di ISPConfig 3. Ini juga menjelaskan cara membuat server Anda lebih aman dan dilengkapi dengan bagian pemecahan masalah di bagian akhir.

  • CentOS:http://www.centos.org/
  • ISPConfig:http://www.ispconfig.org/

Panels
  1. Server Sempurna - Fedora 15 x86_64 [ISPConfig 2]

  2. Server Sempurna - Fedora 15 x86_64 [ISPConfig 3]

  3. Server Sempurna - Ubuntu 11.04 [ISPConfig 3]

  1. Server Sempurna - CentOS 5.6 x86_64 [ISPConfig 2]

  2. Server Sempurna - CentOS 6.1 x86_64 Dengan Apache2 [ISPConfig 3]

  3. Server Sempurna - OpenSUSE 12.1 x86_64 Dengan Nginx [ISPConfig 3]

  1. Server Sempurna - CentOS 5.7 x86_64 [ISPConfig 2]

  2. Server Sempurna - Ubuntu 11.10 [ISPConfig 3]

  3. Server Sempurna - CentOS 6.0 x86_64 [ISPConfig 2]