Doni Setiawan
Jumat, 24 April 2015
tugas pak deby
Sempurna Server - Ubuntu 14.10 dengan Apache, PHP, MySQL, PureFTPD, BIND, Postfix, Dovecot dan ISPConfig
1. Perhatikan Awal
Dalam tutorial ini saya menggunakan server1.example.com nama host dengan alamat IP 19.89.30.9 dan 19.89.30.5 gateway. Pengaturan ini mungkin berbeda untuk Anda, sehingga Anda harus mengganti mereka di mana perlu. Sebelum melangkah lebih jauh Anda harus memiliki instalasi minimal dasar Ubuntu 14.10 seperti yang dijelaskan dalam tutorial.
2. Ubah /etc/apt/sources.list Dan Perbarui Instalasi Linux Anda
Mengedit /etc/apt/sources.list. Komentar atau keluarkan CD instalasi dari file tersebut dan memastikan bahwa alam semesta dan repositori multiverse diaktifkan. Seharusnya terlihat seperti ini:
# nano /etc/apt/sources.list
#
# deb cdrom:[Ubuntu-Server 14.10 _Utopic Unicorn_ - Release amd64 (20141022.2)]/ utopic main restricted
#deb cdrom:[Ubuntu-Server 14.10 _Utopic Unicorn_ - Release amd64 (20141022.2)]/ utopic main restricted
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://de.archive.ubuntu.com/ubuntu/ utopic main restricted
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic main restricted
## Major bug fix updates produced after the final release of the
## distribution.
deb http://de.archive.ubuntu.com/ubuntu/ utopic-updates main restricted
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic-updates main restricted
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://de.archive.ubuntu.com/ubuntu/ utopic universe
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic universe
deb http://de.archive.ubuntu.com/ubuntu/ utopic-updates universe
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic-updates universe
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://de.archive.ubuntu.com/ubuntu/ utopic multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic multiverse
deb http://de.archive.ubuntu.com/ubuntu/ utopic-updates multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic-updates multiverse
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://de.archive.ubuntu.com/ubuntu/ utopic-backports main restricted universe multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu utopic-security main restricted
deb-src http://security.ubuntu.com/ubuntu utopic-security main restricted
deb http://security.ubuntu.com/ubuntu utopic-security universe
deb-src http://security.ubuntu.com/ubuntu utopic-security universe
deb http://security.ubuntu.com/ubuntu utopic-security multiverse
deb-src http://security.ubuntu.com/ubuntu utopic-security multiverse
## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
# deb http://archive.canonical.com/ubuntu utopic partner
# deb-src http://archive.canonical.com/ubuntu utopic partner
## Uncomment the following two lines to add software from Ubuntu's
## 'extras' repository.
## This software is not part of Ubuntu, but is offered by third-party
## developers who want to ship their latest software.
# deb http://extras.ubuntu.com/ubuntu utopic main
# deb-src http://extras.ubuntu.com/ubuntu utopic main
# apt-get update
# apt-get upgrade
# reboot
3. Ubah Default Shell
/ bin / sh adalah sebuah symlink ke / bin / dash, namun kami perlu / bin / bash, tidak / bin / dash. Oleh karena itu kami melakukan ini:
# dpkg-reconfigure dash
Gunakan dasbor sebagai default sistem shell (/ bin / sh)? <- No
Jika Anda tidak melakukan hal ini, instalasi ISPConfig akan gagal.
4. Nonaktifkan AppArmor
AppArmor adalah ekstensi keamanan (mirip dengan SELinux) yang harus memberikan keamanan diperpanjang. Menurut pendapat saya, Anda tidak perlu untuk mengkonfigurasi sistem yang aman, dan biasanya menyebabkan lebih banyak masalah daripada keuntungan (berpikir itu setelah Anda melakukan seminggu pemecahan masalah karena beberapa layanan tidak bekerja seperti yang diharapkan, dan kemudian Anda mengetahui bahwa semuanya ok, hanya AppArmor menyebabkan masalah). Oleh karena itu saya menonaktifkannya (ini adalah suatu keharusan jika Anda ingin menginstal ISPConfig di kemudian hari).
Kita bisa menonaktifkannya seperti ini:
# service apparmor stop
# update-rc.d -f apparmor remove
# apt-get remove apparmor apparmor-utils
5. Sinkronisasi Jam Sistem
Ini adalah ide yang baik untuk melakukan sinkronisasi jam sistem dengan server NTP (waktu protokol jaringan) melalui Internet. Jalankan
# apt-get install ntp ntpdate
dan waktu sistem anda akan selalu sinkron.
6. Pasang Postfix, Dovecot, MySQL, phpMyAdmin, rkhunter, binutils
Untuk menginstal postfix kita perlu berhenti dan menghapus sendmail
# service sendmail stop; update-rc.d -f sendmail remove
Sekarang kita dapat menginstal Postfix, Dovecot, MySQL, rkhunter, dan binutils dengan satu perintah:
# apt-get install postfix postfix-mysql postfix-doc mariadb-client mariadb-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d dovecot-mysql dovecot-sieve sudo
Anda akan diminta pertanyaan berikut:
Password baru untuk MySQL "root" user: <- yourrootsqlpassword
Ulangi password untuk MySQL "root" user: <- yourrootsqlpassword
Buat ditandatangani sendiri sertifikat SSL ?: <- Ya
Nama host: <- server1.example.com
Lokal saja: <- OK
Jenis umum konfigurasi mail: <- Situs Internet
Sistem Nama mail: <- server1.example.com
Selanjutnya buka TLS / SSL dan penyerahan pelabuhan di Postfix:
# nano /etc/postfix/master.cf
Tanda komentar pengajuan dan SMTPs bagian sebagai berikut - tambahkan baris o smtpd_client_restrictions = permit_sasl_authenticated, menolak untuk kedua bagian dan meninggalkan segala sesuatu sesudahnya berkomentar:
[...]
submission inet n - - - - smtpd
-o syslog_name=postfix/submission
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o smtpd_reject_unlisted_recipient=no
# -o smtpd_client_restrictions=$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
smtps inet n - - - - smtpd
-o syslog_name=postfix/smtps
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o smtpd_reject_unlisted_recipient=no
# -o smtpd_client_restrictions=$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
[...]
Restart Postfix setelah:
# service postfix restart
Kami ingin MySQL untuk mendengarkan pada semua antarmuka, bukan hanya localhost, oleh karena itu kita edit /etc/mysql/my.cnf dan komentar pada baris bind-address = 127.0.0.1:
# nano /etc/mysql/my.cnf
[...]
# 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
[...]
Kemudian kita restart MySQL:
# service mysql restart
Sekarang cek jaringan yang diaktifkan. Menjalankan
# netstat -tap | grep mysql
Output akan terlihat seperti ini:
root@server1:~# netstat -tap | grep mysql
tcp 0 0 *:mysql *:* LISTEN 24603/mysqld
root@server1:~#
7. Pasang Amavisd-baru, SpamAssassin, dan Clamav
Untuk menginstal amavisd-baru, SpamAssassin, dan ClamAV, kita jalankan
# apt-get 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
The ISPConfig 3 pengaturan menggunakan amavisd yang banyak maka perpustakaan SpamAssassin Filter internal, sehingga kita bisa menghentikan SpamAssassin untuk membebaskan beberapa RAM:
# service spamassassin stop
# update-rc.d -f spamassassin remove
Jalankan penggunaan clamav
# freshclam
# service clamav-daemon start
8. Pasang Apache2, PHP5, phpMyAdmin, FCGI, suexec, Pear, dan mcrypt
Apache2, PHP5, phpMyAdmin, FCGI, suexec, Pear, dan mcrypt dapat diinstal sebagai berikut:
# apt-get install apache2 apache2-doc apache2-utils 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 libruby libapache2-mod-python php5-curl php5-intl php5-memcache php5-memcached php5-ming php5-ps php5-pspell php5-recode php5-sqlite php5-tidy php5-xmlrpc php5-xsl memcached
Anda akan melihat pertanyaan berikut:
Web server untuk mengkonfigurasi ulang secara otomatis: <- apache2
Mengkonfigurasi database untuk phpmyadmin dengan dbconfig-umum? <- No
Kemudian jalankan perintah berikut untuk mengaktifkan Apache modul suexec, menulis ulang, ssl, tindakan, dan termasuk (ditambah dav, dav_fs, dan auth mencerna jika Anda ingin menggunakan WebDAV):
# a2enmod suexec rewrite ssl actions include cgi
# a2enmod dav_fs dav auth_digest
Berikutnya terbuka /etc/apache2/mods-available/suphp.conf ...
# nano /etc/apache2/mods-available/suphp.conf
... Dan komentar pada <FilesMatch "\ ph (p3 | TML?) $"> Bagian dan menambahkan aplikasi baris AddType / x-httpd-php suPHP .php3 .php4 .php5 phtml - jika tidak semua file PHP akan dijalankan oleh suPHP:
<IfModule mod_suphp.c>
#<FilesMatch "\.ph(p3?|tml)$">
# SetHandler application/x-httpd-suphp
#</FilesMatch>
AddType application/x-httpd-suphp .php .php3 .php4 .php5 .phtml
suPHP_AddHandler application/x-httpd-suphp
<Directory />
suPHP_Engine on
</Directory>
# By default, disable suPHP for debian packaged web applications as files
# are owned by root and cannot be executed by suPHP because of min_uid.
<Directory /usr/share>
suPHP_Engine off
</Directory>
# # Use a specific php config file (a dir which contains a php.ini file)
# suPHP_ConfigPath /etc/php5/cgi/suphp/
# # Tells mod_suphp NOT to handle requests with the type <mime-type>.
# suPHP_RemoveHandler <mime-type>
</IfModule>
Restart Apache setelah:
# service apache2 restart
Jika Anda ingin meng-host file Ruby dengan Rb ekstensi di situs web Anda diciptakan melalui ISPConfig, Anda harus komentar pada aplikasi baris / x-ruby rb di /etc/mime.types:
# nano /etc/mime.types
[...]
#application/x-ruby rb
[...]
(Hal ini diperlukan hanya untuk file Rb, file Ruby dengan ekstensi .rbx latihan kotak.)
Restart Apache setelah:
# service apache2 restart
8.1 xcache
Xcache adalah PHP opcode cacher gratis dan terbuka untuk caching dan mengoptimalkan kode menengah PHP. Hal ini mirip dengan tembolok PHP opcode lainnya, seperti eAccelerator dan APC. Hal ini sangat dianjurkan untuk memiliki salah satu dari ini dipasang untuk mempercepat halaman PHP Anda.
Xcache dapat diinstal sebagai berikut:
# apt-get install php5-xcache
Sekarang restart Apache:
# service apache2 restart
8.2 PHP-FPM
Dimulai dengan ISPConfig 3.0.5, ada modus PHP tambahan yang dapat Anda pilih untuk penggunaan dengan Apache: PHP-FPM.
Untuk menggunakan PHP-FPM dengan Apache, kita perlu mod_fastcgi Apache module (jangan mencampur ini dengan mod_fcgid - mereka sangat mirip, tetapi Anda tidak dapat menggunakan PHP-FPM dengan mod_fcgid). Kita dapat menginstal PHP-FPM dan mod_fastcgi sebagai berikut:
# apt-get install libapache2-mod-fastcgi php5-fpm
Pastikan Anda mengaktifkan modul dan restart Apache:
# a2enmod actions fastcgi alias
# service apache2 restart
8.3 Versi Tambahan PHP
Dimulai dengan ISPConfig 3.0.5, adalah mungkin untuk memiliki beberapa versi PHP pada satu server (dipilih melalui ISPConfig) yang dapat dijalankan melalui FastCGI dan PHP-FPM. Untuk mempelajari bagaimana membangun versi tambahan PHP (PHP-FPM dan FastCGI) dan bagaimana mengkonfigurasi ISPConfig, silakan cek tutorial ini: Cara Menggunakan Beberapa Versi PHP (PHP-FPM & FastCGI) Dengan ISPConfig 3 (Ubuntu 12.10) (bekerja untuk Ubuntu 14.10 juga).
9. Pasang Mailman
Sejak versi 3.0.4, ISPConfig juga memungkinkan Anda untuk mengelola (membuat / memodifikasi / menghapus) mailing list Mailman. Jika Anda ingin menggunakan fitur ini, instal Mailman sebagai berikut:
# apt-get install mailman
Pilih setidaknya satu bahasa, mis .:
Bahasa untuk mendukung: <- en (English)
Daftar situs <Hilang – Ok
Sebelum kita bisa mulai Mailman, mailing list pertama bernama mailman harus dibuat:
# newlist mailman
root @ server1: ~ # baru daftar mailman
Masukkan email dari orang yang menjalankan daftar: <- alamat email admin, misalnya listadmin@example.com
Awal mailman password: <- password admin untuk daftar mailman
Untuk menyelesaikan pembuatan milis Anda, Anda harus mengedit / etc / aliases (atau
setara) file dengan menambahkan baris berikut, dan mungkin menjalankan
`Program newaliases ':
## Mailman mailing list
mailman: "| / var / lib / mailman / mail / mailman pos mailman"
mailman-admin: "| / var / lib / mailman / mail / mailman admin mailman"
mailman-bounce: "| / var / lib / mailman / mail / mailman memantul mailman"
mailman-confirm: "| / var / lib / mailman / mail / mailman konfirmasi mailman"
mailman-join: "| / var / lib / mailman / mail / mailman bergabung mailman"
mailman-cuti: "| / var / lib / mailman / mail / mailman cuti mailman"
mailman-pemilik: "| / var / lib / mailman / mail / mailman pemilik mailman"
mailman-request: "| / var / lib / mailman / mail / mailman permintaan mailman"
mailman-berlangganan: "| / var / lib / mailman / mail / mailman berlangganan mailman"
mailman-unsubscribe: "| / var / lib / mailman / mail / mailman mailman unsubscribe"
Tekan enter untuk memberitahu pemilik mailman ... <- ENTER
root @ server1: ~ #
Buka / etc / aliases setelah ...
# nano /etc/aliases
. Dan tambahkan baris berikut:
[...]
## mailman mailing list
mailman: "|/var/lib/mailman/mail/mailman post mailman"
mailman-admin: "|/var/lib/mailman/mail/mailman admin mailman"
mailman-bounces: "|/var/lib/mailman/mail/mailman bounces mailman"
mailman-confirm: "|/var/lib/mailman/mail/mailman confirm mailman"
mailman-join: "|/var/lib/mailman/mail/mailman join mailman"
mailman-leave: "|/var/lib/mailman/mail/mailman leave mailman"
mailman-owner: "|/var/lib/mailman/mail/mailman owner mailman"
mailman-request: "|/var/lib/mailman/mail/mailman request mailman"
mailman-subscribe: "|/var/lib/mailman/mail/mailman subscribe mailman"
mailman-unsubscribe: "|/var/lib/mailman/mail/mailman unsubscribe mailman"
menjalankan
# newaliases
setelah itu dan me-restart Postfix:
# service postfix restart
Akhirnya kita harus mengaktifkan konfigurasi Mailman Apache:
# ln -s /etc/mailman/apache.conf /etc/apache2/conf-available/mailman.conf
Ini mendefinisikan alias / cgi-bin / mailman / untuk semua Apache vhosts, yang berarti Anda dapat mengakses antarmuka admin Mailman untuk daftar di http: // <vhost> / cgi-bin / mailman / admin / <nama daftar>, dan halaman web untuk pengguna mailing list dapat ditemukan di http: // <vhost> / cgi-bin / mailman / listinfo / <listname>.
Di bawah httpd: // <vhost> / pipermail Anda dapat menemukan arsip milis.
Restart Apache setelah:
# service apache2 restart
Kemudian mulai daemon Mailman:
# service mailman start
10. Pasang PureFTPd Dan Kuota
PureFTPd dan kuota dapat diinstal dengan perintah berikut:
# apt-get install pure-ftpd-common pure-ftpd-mysql quota quotatool
Edit file / etc / default / pure-ftpd-umum ...
# nano /etc/default/pure-ftpd-common
... Dan pastikan bahwa modus start diatur untuk mandiri dan mengatur VIRTUALCHROOT = true:
[...]
STANDALONE_OR_INETD=standalone
[...]
VIRTUALCHROOT=true
[...]
Sekarang kita mengkonfigurasi Murni ftpd untuk memungkinkan FTP dan TLS sesi. FTP adalah protokol yang sangat tidak aman karena semua password dan semua data ditransfer dalam bentuk teks. Dengan menggunakan TLS, seluruh komunikasi bisa dienkripsi, sehingga membuat FTP jauh lebih aman.
Jika Anda ingin mengizinkan FTP dan TLS sesi, jalankan
# echo 1 > /etc/pure-ftpd/conf/TLS
Untuk menggunakan TLS, kita harus membuat sertifikat SSL. Saya membuat di / etc / ssl / / swasta, karena itu saya membuat direktori pertama:
# mkdir -p /etc/ssl/private/
Setelah itu, kita dapat menghasilkan 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 (2 huruf kode) [AU]: <- Masukkan Anda Nama Negara (misalnya, "DE").
Negara atau Nama Propinsi (nama lengkap) [Beberapa Negara]: <- Masukkan Negara atau Provinsi Nama.
Lokalitas Nama (misalnya, kota) []: <- Masukkan Kota Anda.
Nama organisasi (misalnya, perusahaan) [Internet Widgits Pty Ltd]: <- Masukkan Nama Organisasi Anda (misalnya, nama perusahaan Anda).
Organisasi Nama Satuan (misalnya, bagian) []: <- Masukkan Nama Unit Organisasi (misalnya "Departemen IT").
Common Name (misalnya, nama ANDA) []: <- Masukkan Nama Fully Qualified Domain dari sistem (misalnya "server1.example.com").
Alamat Email []: <- Masukkan Alamat Email Anda.
Mengubah hak akses dari sertifikat SSL:
# chmod 600 /etc/ssl/private/pure-ftpd.pem
Kemudian restart proftpd:
# service pure-ftpd-mysql restart
root@server1:~# service pure-ftpd-mysql restart
Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -8 UTF-8 -u 1000 -E -O clf:/var/log/pure-ftpd/transfer.log -Y 1 -B
root@server1:~#
Mengedit / etc / fstab. Tambang terlihat seperti ini (saya menambahkan, usrjquota = aquota.user, kuota kelompok = quota.group, jqfmt = vfsv0 ke partisi dengan mount /):
# nano /etc/fstab
# /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>
/dev/mapper/server1--vg-root / ext4 errors=remount-ro,usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0 0 1
# /boot was on /dev/sda1 during installation
UUID=9b8299f1-b2a2-4231-9ba1-4540fad76b0f /boot ext2 defaults 0 2
/dev/mapper/server1--vg-swap_1 none swap sw 0 0
Untuk mengaktifkan kuota, jalankan perintah ini:
# mount -o remount /
# quotacheck -avugm
# quotaon -avug
11. Pasang BIND DNS Server
BIND dapat diinstal sebagai berikut:
# apt-get install bind9 dnsutils
12. Pasang vlogger, Webalizer, dan AWstats
Vlogger, Webalizer, dan AWstats dapat diinstal sebagai berikut:
# apt-get install vlogger webalizer awstats geoip-database libclass-dbi-mysql-perl
Terbuka /etc/cron.d/awstats setelah ...
# nano /etc/cron.d/awstats
.. Dan komentar segala sesuatu dalam file tersebut:
#MAILTO=root
#*/10 * * * * www-data [ -x /usr/share/awstats/tools/update.sh ] && /usr/share/awstats/tools/update.sh
# Generate static reports:
#10 03 * * * www-data [ -x /usr/share/awstats/tools/buildstatic.sh ] && /usr/share/awstats/tools/buildstatic.sh
13. Pasang Jailkit
Jailkit diperlukan hanya jika Anda ingin chroot pengguna SSH. Hal ini dapat diinstal sebagai berikut (penting: Jailkit harus diinstal sebelum ISPConfig - tidak dapat diinstal setelah itu!):
# apt-get install build-essential autoconf automake1.9 libtool flex bison debhelper binutils-gold
# cd /tmp
# wget http://olivier.sessink.nl/jailkit/jailkit-2.17.tar.gz
tar xvfz jailkit-2.17.tar.gz
# cd jailkit-2.17
# ./debian/rules binary
Anda sekarang dapat menginstal paket .deb Jailkit sebagai berikut:
# cd ..
# dpkg -i jailkit_2.17-1_*.deb
# rm -rf jailkit-2.17*
14. Pasang fail2ban
Ini adalah opsional tetapi dianjurkan, karena monitor ISPConfig mencoba untuk menunjukkan log:
# apt-get install fail2ban
Untuk membuat fail2ban memantau proftpd dan Dovecot, membuat file /etc/fail2ban/jail.local:
# nano /etc/fail2ban/jail.local
[pureftpd]
enabled = true
port = ftp
filter = pureftpd
logpath = /var/log/syslog
maxretry = 3
[dovecot-pop3imap]
enabled = true
filter = dovecot-pop3imap
action = iptables-multiport[name=dovecot-pop3imap, port="pop3,pop3s,imap,imaps", protocol=tcp]
logpath = /var/log/mail.log
maxretry = 5
[postfix-sasl]
enabled = true
port = smtp
filter = postfix-sasl
logpath = /var/log/mail.log
maxretry = 3
Kemudian membuat dua file filter berikut:
# nano /etc/fail2ban/filter.d/pureftpd.conf
[Definition]
failregex = .*pure-ftpd: \(.*@<HOST>\) \[WARNING\] Authentication failed for user.*
ignoreregex =
# nano /etc/fail2ban/filter.d/dovecot-pop3imap.conf
[Definition]
failregex = (?: pop3-login|imap-login): .*(?:Authentication failure|Aborted login \(auth failed|Aborted login \(tried to use disabled|Disconnected \(auth failed|Aborted login \(\d+ authentication attempts).*rip=(?P<host>\S*),.*
ignoreregex =
Tambahkan baris ignoreregex hilang dalam file postfix-sasl:
# echo "ignoreregex =" >> /etc/fail2ban/filter.d/postfix-sasl.conf
Restart fail2ban setelah:
# service fail2ban restart
15 Pasang SquirrelMail
Untuk menginstal webmail client SquirrelMail, jalankan
# apt-get install squirrelmail
Lalu konfigurasikan SquirrelMail:
# squirrelmail-configure
Kita harus memberitahu SquirrelMail yang kita gunakan users-IMAP / -POP3:
SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1. OrganizationPreferences
2. Server Settings
3. Folder Defaults
4. General Options
5. Themes
6. Address Books
7. Message of the Day (MOTD)
8. Plugins
9. Database
10. Languages
D. Set pre-defined settings for specific IMAP servers
C Turn color on
S Save data
Q Quit
Command >> <-- D
SquirrelMail Configuration : Read: config.php
---------------------------------------------------------
While we have been building SquirrelMail, we have discovered some
preferences that work better with some servers that don't work so
well with others. If you select your IMAP server, this option will
set some pre-defined settings for that server.
Please note that you will still need to go through and make sure
everything is correct. This does not change everything. There are
only a few settings that this will change.
Please select your IMAP server:
bincimap = Binc IMAP server
courier = Courier IMAP server
cyrus = Cyrus IMAP server
dovecot = Dovecot Secure IMAP server
exchange = Microsoft Exchange IMAP server
hmailserver = hMailServer
macosx = Mac OS X Mailserver
mercury32 = Mercury/32
uw = University of Washington's IMAP server
gmail = IMAP access to Google mail (Gmail) accounts
quit = Do not change anything
Command >> <-- dovecot
SquirrelMail Configuration : Read: config.php
---------------------------------------------------------
While we have been building SquirrelMail, we have discovered some
preferences that work better with some servers that don't work so
well with others. If you select your IMAP server, this option will
set some pre-defined settings for that server.
Please note that you will still need to go through and make sure
everything is correct. This does not change everything. There are
only a few settings that this will change.
Please select your IMAP server:
bincimap = Binc IMAP server
courier = Courier IMAP server
cyrus = Cyrus IMAP server
dovecot = Dovecot Secure IMAP server
exchange = Microsoft Exchange IMAP server
hmailserver = hMailServer
macosx = Mac OS X Mailserver
mercury32 = Mercury/32
uw = University of Washington's IMAP server
gmail = IMAP access to Google mail (Gmail) accounts
quit = Do not change anything
Command >> dovecot
imap_server_type = dovecot
default_folder_prefix = <none>
trash_folder = Trash
sent_folder = Sent
draft_folder = Drafts
show_prefix_option = false
default_sub_of_inbox = false
show_contain_subfolders_option = false
optional_delimiter = detect
delete_folder = false
Press any key to continue... <-- press a key
SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1. Organization Preferences
2. Server Settings
3. Folder Defaults
4. General Options
5. Themes
6. Address Books
7. Message of the Day (MOTD)
8. Plugins
9. Database
10. Languages
D. Set pre-defined settings for specific IMAP servers
C Turn color on
S Save data
Q Quit
Command >> <-- S
SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1. Organization Preferences
2. Server Settings
3. Folder Defaults
4. General Options
5. Themes
6. Address Books
7. Message of the Day (MOTD)
8. Plugins
9. Database
10. Languages
D. Set pre-defined settings for specific IMAP servers
C Turn color on
S Save data
Q Quit
Command >> <-- Q
Sekarang kita akan mengkonfigurasi SquirrelMail sehingga Anda dapat menggunakannya dari dalam situs web Anda (diciptakan melalui ISPConfig) dengan menggunakan / squirrelmail atau / webmail alias. Jadi jika website Anda adalah www.example.com, Anda akan dapat mengakses SquirrelMail menggunakan www.example.com/squirrelmail atau www.example.com/webmail.
Konfigurasi SquirrelMail Apache adalah dalam file /etc/squirrelmail/apache.conf, tetapi file ini tidak dimuat oleh Apache karena tidak di direktori /etc/apache2/conf.d/. Oleh karena itu kami membuat symlink disebut squirrelmail.conf di direktori /etc/apache2/conf.d/ yang menunjuk ke /etc/squirrelmail/apache.conf dan kembali Apache setelah:
# cd /etc/apache2/conf-available/
ln -s ../../squirrelmail/apache.conf squirrelmail.conf
service apache2 reload
Sekarang /etc/apache2/conf.d/squirrelmail.conf terbuka ...
# nano /etc/apache2/conf-available/squirrelmail.conf
... Dan tambahkan baris berikut ke <Directory / usr / share / squirrelmail> </ Directory> wadah yang memastikan bahwa mod_php digunakan untuk mengakses SquirrelMail, terlepas dari apa modus PHP yang Anda pilih untuk website Anda di ISPConfig:
[...]
<Directory /usr/share/squirrelmail>
Options FollowSymLinks
<IfModule mod_php5.c>
AddType application/x-httpd-php .php
php_flag magic_quotes_gpc Off
php_flag track_vars On
php_admin_flag allow_url_fopen Off
php_value include_path .
php_admin_value upload_tmp_dir /var/lib/squirrelmail/tmp
php_admin_value open_basedir /usr/share/squirrelmail:/etc/squirrelmail:/var/lib/squirrelmail:/etc/hostname:/etc/mailname
php_flag register_globals off
</IfModule>
<IfModule mod_dir.c>
DirectoryIndex index.php
</IfModule>
# access to configtest is limited by default to prevent information leak
<Files configtest.php>
order deny,allow
deny from all
allow from 127.0.0.1
</Files>
</Directory>
[...]
Membuat direktori / var / lib / squirrelmail / tmp ...
# mkdir /var/lib/squirrelmail/tmp
.. Dan membuatnya dimiliki oleh pengguna www-data:
# chown www-data /var/lib/squirrelmail/tmp
Selanjutnya kita perlu mengaktifkan squirrelmail dengan apache2.
# a2enconf squirrelmail
Reload Apache lagi:
# service apache2 reload
Itu sudah - /etc/apache2/conf.d/squirrelmail.conf mendefinisikan alias disebut / squirrelmail yang menunjuk ke SquirrelMail itu direktori instalasi / usr / share / squirrelmail.
Sekarang Anda dapat mengakses SquirrelMail dari situs web Anda sebagai berikut:
http://192.168.0.100/squirrelmail
http://www.example.com/squirrelmail
Anda juga dapat mengaksesnya dari vhost panel kontrol ISPConfig (setelah Anda menginstal ISPConfig, lihat bab berikutnya) sebagai berikut (ini tidak memerlukan konfigurasi di ISPConfig):
http://server1.example.com:8080/squirrelmail
Jika Anda ingin menggunakan alias / webmail bukan / squirrelmail, cukup terbuka /etc/apache2/conf.d/squirrelmail.conf ...
# nano /etc/apache2/conf-available/squirrelmail.conf
... Dan tambahkan baris Alias / webmail / usr / share / squirrelmail:
Alias /squirrelmail /usr/share/squirrelmail
Alias /webmail /usr/share/squirrelmail
[...]
Kemudian kembali Apache:
# service apache2 reload
Sekarang Anda dapat mengakses Squirrelmail sebagai berikut:
http: // 192.168.0.100/webmail
http://www.example.com/webmail
http://server1.example.com:8080/webmail (setelah Anda menginstal ISPConfig, lihat bab berikutnya)
Jika Anda ingin menentukan vhost seperti webmail.example.com mana pengguna dapat mengakses SquirrelMail, Anda harus menambahkan konfigurasi vhost berikut untuk /etc/apache2/conf.d/squirrelmail.conf:
# nano /etc/apache2/conf.d/squirrelmail.conf
[...]
<VirtualHost *:80>
DocumentRoot /usr/share/squirrelmail
ServerName webmail.example.com
</VirtualHost>
Tentu saja, harus ada catatan DNS untuk webmail.example.com yang menunjuk ke alamat IP yang Anda gunakan dalam konfigurasi vhost. Juga pastikan bahwa vhost yang webmail.example.com tidak ada di ISPConfig (jika kedua vhosts akan mengganggu satu sama lain!).
Sekarang ulang Apache ...
# service apache2 reload
.. Dan Anda dapat mengakses SquirrelMail bawah http://webmail.example.com
16. Pasang ISPConfig 3
Untuk menginstal ISPConfig 3 dari versi terbaru dirilis, 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/install/
Langkah berikutnya adalah menjalankan
# php -q install.php
Ini akan memulai ISPConfig 3 install. Installer akan mengkonfigurasi semua layanan seperti Postfix, Dovecot, dll untuk Anda. Sebuah setup manual yang diperlukan untuk ISPConfig 2 (panduan pengaturan yang sempurna) tidak diperlukan.
root @ server1: / tmp / ispconfig3_install / install # php -q install.php
--------------------------------------------------------------------------------
_____ ___________ _____ __ _ ____
|_ _/ ___| ___ \ / __ \ / _(_) /__ \
| | \ `--.| |_/ / | / \/ ___ _ __ | |_ _ __ _ _/ /
| | `--. \ __/ | | / _ \| '_ \| _| |/ _` | |_ |
_| |_/\__/ / | | \__/\ (_) | | | | | | | (_| | ___\ \
\___/\____/\_| \____/\___/|_| |_|_| |_|\__, | \____/
__/ |
|___/
>> Konfigurasi awal
Sistem Operasi: 14.10 Mengikuti UNKNOWN akan ada beberapa pertanyaan untuk konfigurasi utama jadi hati-hati. Nilai default [kurung] dan dapat diterima dengan <CENTER>. Sentuh "berhenti" (tanpa tanda kutip) untuk menghentikan installer.
Select language (en,de) [en]: <-- ENTER
Installation mode (standard,expert) [standard]: <-- ENTER
Full qualified hostname (FQDN) of the server, eg server1.domain.tld [server1.example.com]: <-- ENTER
MySQL server hostname [localhost]: <-- ENTER
MySQL root username [root]: <-- ENTER
MySQL root password []: <-- yourrootsqlpassword
MySQL database to create [dbispconfig]: <-- ENTER
MySQL charset [utf8]: <-- ENTER
Generating a 4096 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 (e.g. server FQDN or YOUR name) []: <-- ENTER
Email Address []: <-- ENTER
Configuring Jailkit
Configuring Dovecot
Configuring Spamassassin
Configuring Amavisd
Configuring Getmail
Configuring Pureftpd
Configuring BIND
Configuring Apache
Configuring Vlogger
Configuring Apps vhost
Configuring Bastille Firewall
Configuring Fail2ban
Installing ISPConfig
ISPConfig Port [8080]: <-- ENTER
Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]: <-- ENTER
Generating RSA private key, 4096 bit long modulus
..........++
......++
e is 65537 (0x10001)
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 (e.g. server FQDN or YOUR name) []: <-- ENTER
Email Address []: <-- ENTER
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: <-- ENTER
An optional company name []: <-- ENTER
writing RSA key
Configuring DBServer
Installing ISPConfig 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 stop(8) and then start(8) utilities,
e.g. stop mysql ; start mysql. The restart(8) utility is also available.
mysql stop/waiting
mysql start/running, process 2817
* Stopping Postfix Mail Transport Agent postfix
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
...done.
* Starting Postfix Mail Transport Agent postfix
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
...done.
Stopping amavisd: amavisd-new.
Starting amavisd: amavisd-new.
* Stopping ClamAV daemon clamd
...done.
* Starting ClamAV daemon clamd
...done.
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service dovecot restart
Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the stop(8) and then start(8) utilities,
e.g. stop dovecot ; start dovecot. The restart(8) utility is also available.
dovecot stop/waiting
dovecot start/running, process 3962
* Restarting web server apache2
[Fri Apr 26 00:55:00 2013] [warn] NameVirtualHost *:443 has no VirtualHosts
[Fri Apr 26 00:55:00 2013] [warn] NameVirtualHost *:80 has no VirtualHosts
[Fri Apr 26 00:55:01 2013] [warn] NameVirtualHost *:443 has no VirtualHosts
[Fri Apr 26 00:55:01 2013] [warn] NameVirtualHost *:80 has no VirtualHosts
... waiting ...done.
Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -A -b -u 1000 -D -H -Y 1 -E -8 UTF-8 -O clf:/var/log/pure-ftpd/transfer.log -B
Installation completed.
root@server1:/tmp/ispconfig3_install/install#
Installer secara otomatis mengkonfigurasi semua layanan yang mendasari, sehingga tidak ada konfigurasi manual diperlukan.
Sekarang Anda juga memiliki kemungkinan untuk membiarkan installer membuat vhost SSL untuk panel kontrol ISPConfig, sehingga ISPConfig dapat diakses menggunakan https: // bukan http: //. Untuk mencapai hal ini, hanya tekan ENTER ketika Anda melihat pertanyaan ini: Apakah Anda ingin aman (SSL) koneksi ke web antarmuka ISPConfig (y, n) [y] :.
Setelah itu Anda dapat mengakses ISPConfig 3 di bawah http (s): //server1.example.com: 8080 / untuk https): //192.168.0.100: 8080 / (http atau https tergantung pada apa yang Anda pilih selama instalasi). Login dengan admin username dan password admin (Anda harus mengubah password default setelah login pertama Anda):
Sistem ini sekarang siap untuk digunakan.
16,1 ISPConfig 3 Pedoman
Dalam rangka untuk belajar bagaimana menggunakan ISPConfig 3, saya sangat menyarankan untuk men-download ISPConfig 3 Manual.
Pada lebih dari 300 halaman, mencakup konsep di balik ISPConfig (admin, reseller, klien), menjelaskan cara menginstal dan memperbarui ISPConfig 3, termasuk referensi untuk semua bentuk dan kolom formulir di ISPConfig bersama dengan contoh-contoh input yang valid, dan menyediakan tutorial untuk tugas yang paling umum di ISPConfig 3. Ini juga garis cara untuk membuat server Anda lebih aman dan dilengkapi dengan bagian troubleshooting di akhir.
17. Catatan Tambahan
17,1 OpenVZ
Jika server Ubuntu yang baru saja didirikan di tutorial ini adalah wadah OpenVZ (mesin virtual), Anda harus melakukan ini pada sistem host (aku mengasumsikan bahwa ID wadah OpenVZ adalah 101 - menggantinya dengan VPSID benar pada sistem anda):
VPSID=101
for CAP in CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE
do
vzctl set $VPSID --capability ${CAP}:on --save
done
1. Perhatikan Awal
Dalam tutorial ini saya menggunakan server1.example.com nama host dengan alamat IP 19.89.30.9 dan 19.89.30.5 gateway. Pengaturan ini mungkin berbeda untuk Anda, sehingga Anda harus mengganti mereka di mana perlu. Sebelum melangkah lebih jauh Anda harus memiliki instalasi minimal dasar Ubuntu 14.10 seperti yang dijelaskan dalam tutorial.
2. Ubah /etc/apt/sources.list Dan Perbarui Instalasi Linux Anda
Mengedit /etc/apt/sources.list. Komentar atau keluarkan CD instalasi dari file tersebut dan memastikan bahwa alam semesta dan repositori multiverse diaktifkan. Seharusnya terlihat seperti ini:
# nano /etc/apt/sources.list
#
# deb cdrom:[Ubuntu-Server 14.10 _Utopic Unicorn_ - Release amd64 (20141022.2)]/ utopic main restricted
#deb cdrom:[Ubuntu-Server 14.10 _Utopic Unicorn_ - Release amd64 (20141022.2)]/ utopic main restricted
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://de.archive.ubuntu.com/ubuntu/ utopic main restricted
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic main restricted
## Major bug fix updates produced after the final release of the
## distribution.
deb http://de.archive.ubuntu.com/ubuntu/ utopic-updates main restricted
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic-updates main restricted
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://de.archive.ubuntu.com/ubuntu/ utopic universe
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic universe
deb http://de.archive.ubuntu.com/ubuntu/ utopic-updates universe
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic-updates universe
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://de.archive.ubuntu.com/ubuntu/ utopic multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic multiverse
deb http://de.archive.ubuntu.com/ubuntu/ utopic-updates multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic-updates multiverse
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://de.archive.ubuntu.com/ubuntu/ utopic-backports main restricted universe multiverse
deb-src http://de.archive.ubuntu.com/ubuntu/ utopic-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu utopic-security main restricted
deb-src http://security.ubuntu.com/ubuntu utopic-security main restricted
deb http://security.ubuntu.com/ubuntu utopic-security universe
deb-src http://security.ubuntu.com/ubuntu utopic-security universe
deb http://security.ubuntu.com/ubuntu utopic-security multiverse
deb-src http://security.ubuntu.com/ubuntu utopic-security multiverse
## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
# deb http://archive.canonical.com/ubuntu utopic partner
# deb-src http://archive.canonical.com/ubuntu utopic partner
## Uncomment the following two lines to add software from Ubuntu's
## 'extras' repository.
## This software is not part of Ubuntu, but is offered by third-party
## developers who want to ship their latest software.
# deb http://extras.ubuntu.com/ubuntu utopic main
# deb-src http://extras.ubuntu.com/ubuntu utopic main
# apt-get update
# apt-get upgrade
# reboot
3. Ubah Default Shell
/ bin / sh adalah sebuah symlink ke / bin / dash, namun kami perlu / bin / bash, tidak / bin / dash. Oleh karena itu kami melakukan ini:
# dpkg-reconfigure dash
Gunakan dasbor sebagai default sistem shell (/ bin / sh)? <- No
Jika Anda tidak melakukan hal ini, instalasi ISPConfig akan gagal.
4. Nonaktifkan AppArmor
AppArmor adalah ekstensi keamanan (mirip dengan SELinux) yang harus memberikan keamanan diperpanjang. Menurut pendapat saya, Anda tidak perlu untuk mengkonfigurasi sistem yang aman, dan biasanya menyebabkan lebih banyak masalah daripada keuntungan (berpikir itu setelah Anda melakukan seminggu pemecahan masalah karena beberapa layanan tidak bekerja seperti yang diharapkan, dan kemudian Anda mengetahui bahwa semuanya ok, hanya AppArmor menyebabkan masalah). Oleh karena itu saya menonaktifkannya (ini adalah suatu keharusan jika Anda ingin menginstal ISPConfig di kemudian hari).
Kita bisa menonaktifkannya seperti ini:
# service apparmor stop
# update-rc.d -f apparmor remove
# apt-get remove apparmor apparmor-utils
5. Sinkronisasi Jam Sistem
Ini adalah ide yang baik untuk melakukan sinkronisasi jam sistem dengan server NTP (waktu protokol jaringan) melalui Internet. Jalankan
# apt-get install ntp ntpdate
dan waktu sistem anda akan selalu sinkron.
6. Pasang Postfix, Dovecot, MySQL, phpMyAdmin, rkhunter, binutils
Untuk menginstal postfix kita perlu berhenti dan menghapus sendmail
# service sendmail stop; update-rc.d -f sendmail remove
Sekarang kita dapat menginstal Postfix, Dovecot, MySQL, rkhunter, dan binutils dengan satu perintah:
# apt-get install postfix postfix-mysql postfix-doc mariadb-client mariadb-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d dovecot-mysql dovecot-sieve sudo
Anda akan diminta pertanyaan berikut:
Password baru untuk MySQL "root" user: <- yourrootsqlpassword
Ulangi password untuk MySQL "root" user: <- yourrootsqlpassword
Buat ditandatangani sendiri sertifikat SSL ?: <- Ya
Nama host: <- server1.example.com
Lokal saja: <- OK
Jenis umum konfigurasi mail: <- Situs Internet
Sistem Nama mail: <- server1.example.com
Selanjutnya buka TLS / SSL dan penyerahan pelabuhan di Postfix:
# nano /etc/postfix/master.cf
Tanda komentar pengajuan dan SMTPs bagian sebagai berikut - tambahkan baris o smtpd_client_restrictions = permit_sasl_authenticated, menolak untuk kedua bagian dan meninggalkan segala sesuatu sesudahnya berkomentar:
[...]
submission inet n - - - - smtpd
-o syslog_name=postfix/submission
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o smtpd_reject_unlisted_recipient=no
# -o smtpd_client_restrictions=$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
smtps inet n - - - - smtpd
-o syslog_name=postfix/smtps
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o smtpd_reject_unlisted_recipient=no
# -o smtpd_client_restrictions=$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
[...]
Restart Postfix setelah:
# service postfix restart
Kami ingin MySQL untuk mendengarkan pada semua antarmuka, bukan hanya localhost, oleh karena itu kita edit /etc/mysql/my.cnf dan komentar pada baris bind-address = 127.0.0.1:
# nano /etc/mysql/my.cnf
[...]
# 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
[...]
Kemudian kita restart MySQL:
# service mysql restart
Sekarang cek jaringan yang diaktifkan. Menjalankan
# netstat -tap | grep mysql
Output akan terlihat seperti ini:
root@server1:~# netstat -tap | grep mysql
tcp 0 0 *:mysql *:* LISTEN 24603/mysqld
root@server1:~#
7. Pasang Amavisd-baru, SpamAssassin, dan Clamav
Untuk menginstal amavisd-baru, SpamAssassin, dan ClamAV, kita jalankan
# apt-get 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
The ISPConfig 3 pengaturan menggunakan amavisd yang banyak maka perpustakaan SpamAssassin Filter internal, sehingga kita bisa menghentikan SpamAssassin untuk membebaskan beberapa RAM:
# service spamassassin stop
# update-rc.d -f spamassassin remove
Jalankan penggunaan clamav
# freshclam
# service clamav-daemon start
8. Pasang Apache2, PHP5, phpMyAdmin, FCGI, suexec, Pear, dan mcrypt
Apache2, PHP5, phpMyAdmin, FCGI, suexec, Pear, dan mcrypt dapat diinstal sebagai berikut:
# apt-get install apache2 apache2-doc apache2-utils 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 libruby libapache2-mod-python php5-curl php5-intl php5-memcache php5-memcached php5-ming php5-ps php5-pspell php5-recode php5-sqlite php5-tidy php5-xmlrpc php5-xsl memcached
Anda akan melihat pertanyaan berikut:
Web server untuk mengkonfigurasi ulang secara otomatis: <- apache2
Mengkonfigurasi database untuk phpmyadmin dengan dbconfig-umum? <- No
Kemudian jalankan perintah berikut untuk mengaktifkan Apache modul suexec, menulis ulang, ssl, tindakan, dan termasuk (ditambah dav, dav_fs, dan auth mencerna jika Anda ingin menggunakan WebDAV):
# a2enmod suexec rewrite ssl actions include cgi
# a2enmod dav_fs dav auth_digest
Berikutnya terbuka /etc/apache2/mods-available/suphp.conf ...
# nano /etc/apache2/mods-available/suphp.conf
... Dan komentar pada <FilesMatch "\ ph (p3 | TML?) $"> Bagian dan menambahkan aplikasi baris AddType / x-httpd-php suPHP .php3 .php4 .php5 phtml - jika tidak semua file PHP akan dijalankan oleh suPHP:
<IfModule mod_suphp.c>
#<FilesMatch "\.ph(p3?|tml)$">
# SetHandler application/x-httpd-suphp
#</FilesMatch>
AddType application/x-httpd-suphp .php .php3 .php4 .php5 .phtml
suPHP_AddHandler application/x-httpd-suphp
<Directory />
suPHP_Engine on
</Directory>
# By default, disable suPHP for debian packaged web applications as files
# are owned by root and cannot be executed by suPHP because of min_uid.
<Directory /usr/share>
suPHP_Engine off
</Directory>
# # Use a specific php config file (a dir which contains a php.ini file)
# suPHP_ConfigPath /etc/php5/cgi/suphp/
# # Tells mod_suphp NOT to handle requests with the type <mime-type>.
# suPHP_RemoveHandler <mime-type>
</IfModule>
Restart Apache setelah:
# service apache2 restart
Jika Anda ingin meng-host file Ruby dengan Rb ekstensi di situs web Anda diciptakan melalui ISPConfig, Anda harus komentar pada aplikasi baris / x-ruby rb di /etc/mime.types:
# nano /etc/mime.types
[...]
#application/x-ruby rb
[...]
(Hal ini diperlukan hanya untuk file Rb, file Ruby dengan ekstensi .rbx latihan kotak.)
Restart Apache setelah:
# service apache2 restart
8.1 xcache
Xcache adalah PHP opcode cacher gratis dan terbuka untuk caching dan mengoptimalkan kode menengah PHP. Hal ini mirip dengan tembolok PHP opcode lainnya, seperti eAccelerator dan APC. Hal ini sangat dianjurkan untuk memiliki salah satu dari ini dipasang untuk mempercepat halaman PHP Anda.
Xcache dapat diinstal sebagai berikut:
# apt-get install php5-xcache
Sekarang restart Apache:
# service apache2 restart
8.2 PHP-FPM
Dimulai dengan ISPConfig 3.0.5, ada modus PHP tambahan yang dapat Anda pilih untuk penggunaan dengan Apache: PHP-FPM.
Untuk menggunakan PHP-FPM dengan Apache, kita perlu mod_fastcgi Apache module (jangan mencampur ini dengan mod_fcgid - mereka sangat mirip, tetapi Anda tidak dapat menggunakan PHP-FPM dengan mod_fcgid). Kita dapat menginstal PHP-FPM dan mod_fastcgi sebagai berikut:
# apt-get install libapache2-mod-fastcgi php5-fpm
Pastikan Anda mengaktifkan modul dan restart Apache:
# a2enmod actions fastcgi alias
# service apache2 restart
8.3 Versi Tambahan PHP
Dimulai dengan ISPConfig 3.0.5, adalah mungkin untuk memiliki beberapa versi PHP pada satu server (dipilih melalui ISPConfig) yang dapat dijalankan melalui FastCGI dan PHP-FPM. Untuk mempelajari bagaimana membangun versi tambahan PHP (PHP-FPM dan FastCGI) dan bagaimana mengkonfigurasi ISPConfig, silakan cek tutorial ini: Cara Menggunakan Beberapa Versi PHP (PHP-FPM & FastCGI) Dengan ISPConfig 3 (Ubuntu 12.10) (bekerja untuk Ubuntu 14.10 juga).
9. Pasang Mailman
Sejak versi 3.0.4, ISPConfig juga memungkinkan Anda untuk mengelola (membuat / memodifikasi / menghapus) mailing list Mailman. Jika Anda ingin menggunakan fitur ini, instal Mailman sebagai berikut:
# apt-get install mailman
Pilih setidaknya satu bahasa, mis .:
Bahasa untuk mendukung: <- en (English)
Daftar situs <Hilang – Ok
Sebelum kita bisa mulai Mailman, mailing list pertama bernama mailman harus dibuat:
# newlist mailman
root @ server1: ~ # baru daftar mailman
Masukkan email dari orang yang menjalankan daftar: <- alamat email admin, misalnya listadmin@example.com
Awal mailman password: <- password admin untuk daftar mailman
Untuk menyelesaikan pembuatan milis Anda, Anda harus mengedit / etc / aliases (atau
setara) file dengan menambahkan baris berikut, dan mungkin menjalankan
`Program newaliases ':
## Mailman mailing list
mailman: "| / var / lib / mailman / mail / mailman pos mailman"
mailman-admin: "| / var / lib / mailman / mail / mailman admin mailman"
mailman-bounce: "| / var / lib / mailman / mail / mailman memantul mailman"
mailman-confirm: "| / var / lib / mailman / mail / mailman konfirmasi mailman"
mailman-join: "| / var / lib / mailman / mail / mailman bergabung mailman"
mailman-cuti: "| / var / lib / mailman / mail / mailman cuti mailman"
mailman-pemilik: "| / var / lib / mailman / mail / mailman pemilik mailman"
mailman-request: "| / var / lib / mailman / mail / mailman permintaan mailman"
mailman-berlangganan: "| / var / lib / mailman / mail / mailman berlangganan mailman"
mailman-unsubscribe: "| / var / lib / mailman / mail / mailman mailman unsubscribe"
Tekan enter untuk memberitahu pemilik mailman ... <- ENTER
root @ server1: ~ #
Buka / etc / aliases setelah ...
# nano /etc/aliases
. Dan tambahkan baris berikut:
[...]
## mailman mailing list
mailman: "|/var/lib/mailman/mail/mailman post mailman"
mailman-admin: "|/var/lib/mailman/mail/mailman admin mailman"
mailman-bounces: "|/var/lib/mailman/mail/mailman bounces mailman"
mailman-confirm: "|/var/lib/mailman/mail/mailman confirm mailman"
mailman-join: "|/var/lib/mailman/mail/mailman join mailman"
mailman-leave: "|/var/lib/mailman/mail/mailman leave mailman"
mailman-owner: "|/var/lib/mailman/mail/mailman owner mailman"
mailman-request: "|/var/lib/mailman/mail/mailman request mailman"
mailman-subscribe: "|/var/lib/mailman/mail/mailman subscribe mailman"
mailman-unsubscribe: "|/var/lib/mailman/mail/mailman unsubscribe mailman"
menjalankan
# newaliases
setelah itu dan me-restart Postfix:
# service postfix restart
Akhirnya kita harus mengaktifkan konfigurasi Mailman Apache:
# ln -s /etc/mailman/apache.conf /etc/apache2/conf-available/mailman.conf
Ini mendefinisikan alias / cgi-bin / mailman / untuk semua Apache vhosts, yang berarti Anda dapat mengakses antarmuka admin Mailman untuk daftar di http: // <vhost> / cgi-bin / mailman / admin / <nama daftar>, dan halaman web untuk pengguna mailing list dapat ditemukan di http: // <vhost> / cgi-bin / mailman / listinfo / <listname>.
Di bawah httpd: // <vhost> / pipermail Anda dapat menemukan arsip milis.
Restart Apache setelah:
# service apache2 restart
Kemudian mulai daemon Mailman:
# service mailman start
10. Pasang PureFTPd Dan Kuota
PureFTPd dan kuota dapat diinstal dengan perintah berikut:
# apt-get install pure-ftpd-common pure-ftpd-mysql quota quotatool
Edit file / etc / default / pure-ftpd-umum ...
# nano /etc/default/pure-ftpd-common
... Dan pastikan bahwa modus start diatur untuk mandiri dan mengatur VIRTUALCHROOT = true:
[...]
STANDALONE_OR_INETD=standalone
[...]
VIRTUALCHROOT=true
[...]
Sekarang kita mengkonfigurasi Murni ftpd untuk memungkinkan FTP dan TLS sesi. FTP adalah protokol yang sangat tidak aman karena semua password dan semua data ditransfer dalam bentuk teks. Dengan menggunakan TLS, seluruh komunikasi bisa dienkripsi, sehingga membuat FTP jauh lebih aman.
Jika Anda ingin mengizinkan FTP dan TLS sesi, jalankan
# echo 1 > /etc/pure-ftpd/conf/TLS
Untuk menggunakan TLS, kita harus membuat sertifikat SSL. Saya membuat di / etc / ssl / / swasta, karena itu saya membuat direktori pertama:
# mkdir -p /etc/ssl/private/
Setelah itu, kita dapat menghasilkan 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 (2 huruf kode) [AU]: <- Masukkan Anda Nama Negara (misalnya, "DE").
Negara atau Nama Propinsi (nama lengkap) [Beberapa Negara]: <- Masukkan Negara atau Provinsi Nama.
Lokalitas Nama (misalnya, kota) []: <- Masukkan Kota Anda.
Nama organisasi (misalnya, perusahaan) [Internet Widgits Pty Ltd]: <- Masukkan Nama Organisasi Anda (misalnya, nama perusahaan Anda).
Organisasi Nama Satuan (misalnya, bagian) []: <- Masukkan Nama Unit Organisasi (misalnya "Departemen IT").
Common Name (misalnya, nama ANDA) []: <- Masukkan Nama Fully Qualified Domain dari sistem (misalnya "server1.example.com").
Alamat Email []: <- Masukkan Alamat Email Anda.
Mengubah hak akses dari sertifikat SSL:
# chmod 600 /etc/ssl/private/pure-ftpd.pem
Kemudian restart proftpd:
# service pure-ftpd-mysql restart
root@server1:~# service pure-ftpd-mysql restart
Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -8 UTF-8 -u 1000 -E -O clf:/var/log/pure-ftpd/transfer.log -Y 1 -B
root@server1:~#
Mengedit / etc / fstab. Tambang terlihat seperti ini (saya menambahkan, usrjquota = aquota.user, kuota kelompok = quota.group, jqfmt = vfsv0 ke partisi dengan mount /):
# nano /etc/fstab
# /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>
/dev/mapper/server1--vg-root / ext4 errors=remount-ro,usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0 0 1
# /boot was on /dev/sda1 during installation
UUID=9b8299f1-b2a2-4231-9ba1-4540fad76b0f /boot ext2 defaults 0 2
/dev/mapper/server1--vg-swap_1 none swap sw 0 0
Untuk mengaktifkan kuota, jalankan perintah ini:
# mount -o remount /
# quotacheck -avugm
# quotaon -avug
11. Pasang BIND DNS Server
BIND dapat diinstal sebagai berikut:
# apt-get install bind9 dnsutils
12. Pasang vlogger, Webalizer, dan AWstats
Vlogger, Webalizer, dan AWstats dapat diinstal sebagai berikut:
# apt-get install vlogger webalizer awstats geoip-database libclass-dbi-mysql-perl
Terbuka /etc/cron.d/awstats setelah ...
# nano /etc/cron.d/awstats
.. Dan komentar segala sesuatu dalam file tersebut:
#MAILTO=root
#*/10 * * * * www-data [ -x /usr/share/awstats/tools/update.sh ] && /usr/share/awstats/tools/update.sh
# Generate static reports:
#10 03 * * * www-data [ -x /usr/share/awstats/tools/buildstatic.sh ] && /usr/share/awstats/tools/buildstatic.sh
13. Pasang Jailkit
Jailkit diperlukan hanya jika Anda ingin chroot pengguna SSH. Hal ini dapat diinstal sebagai berikut (penting: Jailkit harus diinstal sebelum ISPConfig - tidak dapat diinstal setelah itu!):
# apt-get install build-essential autoconf automake1.9 libtool flex bison debhelper binutils-gold
# cd /tmp
# wget http://olivier.sessink.nl/jailkit/jailkit-2.17.tar.gz
tar xvfz jailkit-2.17.tar.gz
# cd jailkit-2.17
# ./debian/rules binary
Anda sekarang dapat menginstal paket .deb Jailkit sebagai berikut:
# cd ..
# dpkg -i jailkit_2.17-1_*.deb
# rm -rf jailkit-2.17*
14. Pasang fail2ban
Ini adalah opsional tetapi dianjurkan, karena monitor ISPConfig mencoba untuk menunjukkan log:
# apt-get install fail2ban
Untuk membuat fail2ban memantau proftpd dan Dovecot, membuat file /etc/fail2ban/jail.local:
# nano /etc/fail2ban/jail.local
[pureftpd]
enabled = true
port = ftp
filter = pureftpd
logpath = /var/log/syslog
maxretry = 3
[dovecot-pop3imap]
enabled = true
filter = dovecot-pop3imap
action = iptables-multiport[name=dovecot-pop3imap, port="pop3,pop3s,imap,imaps", protocol=tcp]
logpath = /var/log/mail.log
maxretry = 5
[postfix-sasl]
enabled = true
port = smtp
filter = postfix-sasl
logpath = /var/log/mail.log
maxretry = 3
Kemudian membuat dua file filter berikut:
# nano /etc/fail2ban/filter.d/pureftpd.conf
[Definition]
failregex = .*pure-ftpd: \(.*@<HOST>\) \[WARNING\] Authentication failed for user.*
ignoreregex =
# nano /etc/fail2ban/filter.d/dovecot-pop3imap.conf
[Definition]
failregex = (?: pop3-login|imap-login): .*(?:Authentication failure|Aborted login \(auth failed|Aborted login \(tried to use disabled|Disconnected \(auth failed|Aborted login \(\d+ authentication attempts).*rip=(?P<host>\S*),.*
ignoreregex =
Tambahkan baris ignoreregex hilang dalam file postfix-sasl:
# echo "ignoreregex =" >> /etc/fail2ban/filter.d/postfix-sasl.conf
Restart fail2ban setelah:
# service fail2ban restart
15 Pasang SquirrelMail
Untuk menginstal webmail client SquirrelMail, jalankan
# apt-get install squirrelmail
Lalu konfigurasikan SquirrelMail:
# squirrelmail-configure
Kita harus memberitahu SquirrelMail yang kita gunakan users-IMAP / -POP3:
SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1. OrganizationPreferences
2. Server Settings
3. Folder Defaults
4. General Options
5. Themes
6. Address Books
7. Message of the Day (MOTD)
8. Plugins
9. Database
10. Languages
D. Set pre-defined settings for specific IMAP servers
C Turn color on
S Save data
Q Quit
Command >> <-- D
SquirrelMail Configuration : Read: config.php
---------------------------------------------------------
While we have been building SquirrelMail, we have discovered some
preferences that work better with some servers that don't work so
well with others. If you select your IMAP server, this option will
set some pre-defined settings for that server.
Please note that you will still need to go through and make sure
everything is correct. This does not change everything. There are
only a few settings that this will change.
Please select your IMAP server:
bincimap = Binc IMAP server
courier = Courier IMAP server
cyrus = Cyrus IMAP server
dovecot = Dovecot Secure IMAP server
exchange = Microsoft Exchange IMAP server
hmailserver = hMailServer
macosx = Mac OS X Mailserver
mercury32 = Mercury/32
uw = University of Washington's IMAP server
gmail = IMAP access to Google mail (Gmail) accounts
quit = Do not change anything
Command >> <-- dovecot
SquirrelMail Configuration : Read: config.php
---------------------------------------------------------
While we have been building SquirrelMail, we have discovered some
preferences that work better with some servers that don't work so
well with others. If you select your IMAP server, this option will
set some pre-defined settings for that server.
Please note that you will still need to go through and make sure
everything is correct. This does not change everything. There are
only a few settings that this will change.
Please select your IMAP server:
bincimap = Binc IMAP server
courier = Courier IMAP server
cyrus = Cyrus IMAP server
dovecot = Dovecot Secure IMAP server
exchange = Microsoft Exchange IMAP server
hmailserver = hMailServer
macosx = Mac OS X Mailserver
mercury32 = Mercury/32
uw = University of Washington's IMAP server
gmail = IMAP access to Google mail (Gmail) accounts
quit = Do not change anything
Command >> dovecot
imap_server_type = dovecot
default_folder_prefix = <none>
trash_folder = Trash
sent_folder = Sent
draft_folder = Drafts
show_prefix_option = false
default_sub_of_inbox = false
show_contain_subfolders_option = false
optional_delimiter = detect
delete_folder = false
Press any key to continue... <-- press a key
SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1. Organization Preferences
2. Server Settings
3. Folder Defaults
4. General Options
5. Themes
6. Address Books
7. Message of the Day (MOTD)
8. Plugins
9. Database
10. Languages
D. Set pre-defined settings for specific IMAP servers
C Turn color on
S Save data
Q Quit
Command >> <-- S
SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1. Organization Preferences
2. Server Settings
3. Folder Defaults
4. General Options
5. Themes
6. Address Books
7. Message of the Day (MOTD)
8. Plugins
9. Database
10. Languages
D. Set pre-defined settings for specific IMAP servers
C Turn color on
S Save data
Q Quit
Command >> <-- Q
Sekarang kita akan mengkonfigurasi SquirrelMail sehingga Anda dapat menggunakannya dari dalam situs web Anda (diciptakan melalui ISPConfig) dengan menggunakan / squirrelmail atau / webmail alias. Jadi jika website Anda adalah www.example.com, Anda akan dapat mengakses SquirrelMail menggunakan www.example.com/squirrelmail atau www.example.com/webmail.
Konfigurasi SquirrelMail Apache adalah dalam file /etc/squirrelmail/apache.conf, tetapi file ini tidak dimuat oleh Apache karena tidak di direktori /etc/apache2/conf.d/. Oleh karena itu kami membuat symlink disebut squirrelmail.conf di direktori /etc/apache2/conf.d/ yang menunjuk ke /etc/squirrelmail/apache.conf dan kembali Apache setelah:
# cd /etc/apache2/conf-available/
ln -s ../../squirrelmail/apache.conf squirrelmail.conf
service apache2 reload
Sekarang /etc/apache2/conf.d/squirrelmail.conf terbuka ...
# nano /etc/apache2/conf-available/squirrelmail.conf
... Dan tambahkan baris berikut ke <Directory / usr / share / squirrelmail> </ Directory> wadah yang memastikan bahwa mod_php digunakan untuk mengakses SquirrelMail, terlepas dari apa modus PHP yang Anda pilih untuk website Anda di ISPConfig:
[...]
<Directory /usr/share/squirrelmail>
Options FollowSymLinks
<IfModule mod_php5.c>
AddType application/x-httpd-php .php
php_flag magic_quotes_gpc Off
php_flag track_vars On
php_admin_flag allow_url_fopen Off
php_value include_path .
php_admin_value upload_tmp_dir /var/lib/squirrelmail/tmp
php_admin_value open_basedir /usr/share/squirrelmail:/etc/squirrelmail:/var/lib/squirrelmail:/etc/hostname:/etc/mailname
php_flag register_globals off
</IfModule>
<IfModule mod_dir.c>
DirectoryIndex index.php
</IfModule>
# access to configtest is limited by default to prevent information leak
<Files configtest.php>
order deny,allow
deny from all
allow from 127.0.0.1
</Files>
</Directory>
[...]
Membuat direktori / var / lib / squirrelmail / tmp ...
# mkdir /var/lib/squirrelmail/tmp
.. Dan membuatnya dimiliki oleh pengguna www-data:
# chown www-data /var/lib/squirrelmail/tmp
Selanjutnya kita perlu mengaktifkan squirrelmail dengan apache2.
# a2enconf squirrelmail
Reload Apache lagi:
# service apache2 reload
Itu sudah - /etc/apache2/conf.d/squirrelmail.conf mendefinisikan alias disebut / squirrelmail yang menunjuk ke SquirrelMail itu direktori instalasi / usr / share / squirrelmail.
Sekarang Anda dapat mengakses SquirrelMail dari situs web Anda sebagai berikut:
http://192.168.0.100/squirrelmail
http://www.example.com/squirrelmail
Anda juga dapat mengaksesnya dari vhost panel kontrol ISPConfig (setelah Anda menginstal ISPConfig, lihat bab berikutnya) sebagai berikut (ini tidak memerlukan konfigurasi di ISPConfig):
http://server1.example.com:8080/squirrelmail
Jika Anda ingin menggunakan alias / webmail bukan / squirrelmail, cukup terbuka /etc/apache2/conf.d/squirrelmail.conf ...
# nano /etc/apache2/conf-available/squirrelmail.conf
... Dan tambahkan baris Alias / webmail / usr / share / squirrelmail:
Alias /squirrelmail /usr/share/squirrelmail
Alias /webmail /usr/share/squirrelmail
[...]
Kemudian kembali Apache:
# service apache2 reload
Sekarang Anda dapat mengakses Squirrelmail sebagai berikut:
http: // 192.168.0.100/webmail
http://www.example.com/webmail
http://server1.example.com:8080/webmail (setelah Anda menginstal ISPConfig, lihat bab berikutnya)
Jika Anda ingin menentukan vhost seperti webmail.example.com mana pengguna dapat mengakses SquirrelMail, Anda harus menambahkan konfigurasi vhost berikut untuk /etc/apache2/conf.d/squirrelmail.conf:
# nano /etc/apache2/conf.d/squirrelmail.conf
[...]
<VirtualHost *:80>
DocumentRoot /usr/share/squirrelmail
ServerName webmail.example.com
</VirtualHost>
Tentu saja, harus ada catatan DNS untuk webmail.example.com yang menunjuk ke alamat IP yang Anda gunakan dalam konfigurasi vhost. Juga pastikan bahwa vhost yang webmail.example.com tidak ada di ISPConfig (jika kedua vhosts akan mengganggu satu sama lain!).
Sekarang ulang Apache ...
# service apache2 reload
.. Dan Anda dapat mengakses SquirrelMail bawah http://webmail.example.com
16. Pasang ISPConfig 3
Untuk menginstal ISPConfig 3 dari versi terbaru dirilis, 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/install/
Langkah berikutnya adalah menjalankan
# php -q install.php
Ini akan memulai ISPConfig 3 install. Installer akan mengkonfigurasi semua layanan seperti Postfix, Dovecot, dll untuk Anda. Sebuah setup manual yang diperlukan untuk ISPConfig 2 (panduan pengaturan yang sempurna) tidak diperlukan.
root @ server1: / tmp / ispconfig3_install / install # php -q install.php
--------------------------------------------------------------------------------
_____ ___________ _____ __ _ ____
|_ _/ ___| ___ \ / __ \ / _(_) /__ \
| | \ `--.| |_/ / | / \/ ___ _ __ | |_ _ __ _ _/ /
| | `--. \ __/ | | / _ \| '_ \| _| |/ _` | |_ |
_| |_/\__/ / | | \__/\ (_) | | | | | | | (_| | ___\ \
\___/\____/\_| \____/\___/|_| |_|_| |_|\__, | \____/
__/ |
|___/
>> Konfigurasi awal
Sistem Operasi: 14.10 Mengikuti UNKNOWN akan ada beberapa pertanyaan untuk konfigurasi utama jadi hati-hati. Nilai default [kurung] dan dapat diterima dengan <CENTER>. Sentuh "berhenti" (tanpa tanda kutip) untuk menghentikan installer.
Select language (en,de) [en]: <-- ENTER
Installation mode (standard,expert) [standard]: <-- ENTER
Full qualified hostname (FQDN) of the server, eg server1.domain.tld [server1.example.com]: <-- ENTER
MySQL server hostname [localhost]: <-- ENTER
MySQL root username [root]: <-- ENTER
MySQL root password []: <-- yourrootsqlpassword
MySQL database to create [dbispconfig]: <-- ENTER
MySQL charset [utf8]: <-- ENTER
Generating a 4096 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 (e.g. server FQDN or YOUR name) []: <-- ENTER
Email Address []: <-- ENTER
Configuring Jailkit
Configuring Dovecot
Configuring Spamassassin
Configuring Amavisd
Configuring Getmail
Configuring Pureftpd
Configuring BIND
Configuring Apache
Configuring Vlogger
Configuring Apps vhost
Configuring Bastille Firewall
Configuring Fail2ban
Installing ISPConfig
ISPConfig Port [8080]: <-- ENTER
Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]: <-- ENTER
Generating RSA private key, 4096 bit long modulus
..........++
......++
e is 65537 (0x10001)
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 (e.g. server FQDN or YOUR name) []: <-- ENTER
Email Address []: <-- ENTER
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: <-- ENTER
An optional company name []: <-- ENTER
writing RSA key
Configuring DBServer
Installing ISPConfig 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 stop(8) and then start(8) utilities,
e.g. stop mysql ; start mysql. The restart(8) utility is also available.
mysql stop/waiting
mysql start/running, process 2817
* Stopping Postfix Mail Transport Agent postfix
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
...done.
* Starting Postfix Mail Transport Agent postfix
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
/usr/sbin/postconf: warning: /etc/postfix/main.cf: undefined parameter: virtual_mailbox_limit_maps
...done.
Stopping amavisd: amavisd-new.
Starting amavisd: amavisd-new.
* Stopping ClamAV daemon clamd
...done.
* Starting ClamAV daemon clamd
...done.
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service dovecot restart
Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the stop(8) and then start(8) utilities,
e.g. stop dovecot ; start dovecot. The restart(8) utility is also available.
dovecot stop/waiting
dovecot start/running, process 3962
* Restarting web server apache2
[Fri Apr 26 00:55:00 2013] [warn] NameVirtualHost *:443 has no VirtualHosts
[Fri Apr 26 00:55:00 2013] [warn] NameVirtualHost *:80 has no VirtualHosts
[Fri Apr 26 00:55:01 2013] [warn] NameVirtualHost *:443 has no VirtualHosts
[Fri Apr 26 00:55:01 2013] [warn] NameVirtualHost *:80 has no VirtualHosts
... waiting ...done.
Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -A -b -u 1000 -D -H -Y 1 -E -8 UTF-8 -O clf:/var/log/pure-ftpd/transfer.log -B
Installation completed.
root@server1:/tmp/ispconfig3_install/install#
Installer secara otomatis mengkonfigurasi semua layanan yang mendasari, sehingga tidak ada konfigurasi manual diperlukan.
Sekarang Anda juga memiliki kemungkinan untuk membiarkan installer membuat vhost SSL untuk panel kontrol ISPConfig, sehingga ISPConfig dapat diakses menggunakan https: // bukan http: //. Untuk mencapai hal ini, hanya tekan ENTER ketika Anda melihat pertanyaan ini: Apakah Anda ingin aman (SSL) koneksi ke web antarmuka ISPConfig (y, n) [y] :.
Setelah itu Anda dapat mengakses ISPConfig 3 di bawah http (s): //server1.example.com: 8080 / untuk https): //192.168.0.100: 8080 / (http atau https tergantung pada apa yang Anda pilih selama instalasi). Login dengan admin username dan password admin (Anda harus mengubah password default setelah login pertama Anda):
Sistem ini sekarang siap untuk digunakan.
16,1 ISPConfig 3 Pedoman
Dalam rangka untuk belajar bagaimana menggunakan ISPConfig 3, saya sangat menyarankan untuk men-download ISPConfig 3 Manual.
Pada lebih dari 300 halaman, mencakup konsep di balik ISPConfig (admin, reseller, klien), menjelaskan cara menginstal dan memperbarui ISPConfig 3, termasuk referensi untuk semua bentuk dan kolom formulir di ISPConfig bersama dengan contoh-contoh input yang valid, dan menyediakan tutorial untuk tugas yang paling umum di ISPConfig 3. Ini juga garis cara untuk membuat server Anda lebih aman dan dilengkapi dengan bagian troubleshooting di akhir.
17. Catatan Tambahan
17,1 OpenVZ
Jika server Ubuntu yang baru saja didirikan di tutorial ini adalah wadah OpenVZ (mesin virtual), Anda harus melakukan ini pada sistem host (aku mengasumsikan bahwa ID wadah OpenVZ adalah 101 - menggantinya dengan VPSID benar pada sistem anda):
VPSID=101
for CAP in CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE
do
vzctl set $VPSID --capability ${CAP}:on --save
done
Pratinjau
Pratinjau
Tidak ada komentar:
Posting Komentar