Server Sempurna - OpenSUSE 12.2 x86_64 (Apache2, Dovecot, ISPConfig 3)
Ini adalah deskripsi rinci tentang cara mengatur OpenSUSE 12.2 64bit (x86_64) server yang menawarkan semua layanan yang dibutuhkan oleh ISP dan hoster:Apache web server (SSL-capable) dengan dukungan PHP, CGI dan SSI, server surat Postfix dengan SMTP-AUTH, TLS dan pengguna surat virtual, server BIND DNS, server FTP Pureftpd, MySQL server, Dovecot POP3/IMAP, Quota, Firewall, Mailman, dll. Sejak versi 3.0.4, ISPConfig hadir dengan dukungan penuh untuk server web nginx selain Apache; tutorial ini mencakup penyiapan server yang menggunakan Apache, bukan nginx.
Saya akan menggunakan perangkat lunak berikut:
- Server Web:Apache 2.2 dengan PHP 5
- Server Basis Data:MySQL
- Server Email:Postfix dengan pengguna virtual
- Server DNS:BIND
- Server FTP:pureftpd
- POP3/IMAP:Dovecot
- Webalizer dan AWStats untuk statistik situs web
Pada akhirnya Anda harus memiliki sistem yang bekerja dengan andal dan mudah dikelola dengan panel kontrol ISPConfig 3. Panduan berikut adalah untuk OpenSUSE versi 64bit.
Saya ingin mengatakan terlebih dahulu bahwa ini bukan satu-satunya cara untuk mengatur sistem seperti itu. Ada banyak cara untuk mencapai tujuan ini tetapi ini adalah cara yang saya ambil. Saya tidak memberikan jaminan apa pun bahwa ini akan berhasil untuk Anda!
Pemberitahuan:Panduan ini untuk ISPConfig 3.0.1 atau yang lebih baru. Ini tidak cocok untuk ISPConfig 2.x!
Panduan ISPConfig 3
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.
Aplikasi Monitor ISPConfig Untuk Android
Dengan Aplikasi Monitor ISPConfig, Anda dapat memeriksa status server Anda dan mengetahui apakah semua layanan berjalan seperti yang diharapkan. Anda dapat memeriksa port TCP dan UDP dan melakukan ping ke server Anda. Selain itu, Anda dapat menggunakan aplikasi ini untuk meminta detail dari server yang telah menginstal ISPConfig (harap dicatat bahwa versi ISPConfig 3 yang diinstal minimum dengan dukungan untuk Aplikasi ISPConfig Monitor adalah 3.0.3.3! ); detail ini mencakup semua yang Anda ketahui dari modul Monitor di ISPConfig Control Panel (misalnya layanan, log email dan sistem, antrian email, info CPU dan memori, penggunaan disk, kuota, detail OS, log RKHunter, dll.), dan tentu saja , karena ISPConfig berkemampuan multiserver, Anda dapat memeriksa semua server yang dikendalikan dari server master ISPConfig Anda.
Untuk mengunduh dan petunjuk penggunaan, silakan kunjungi http://www.ispconfig.org/ispconfig-3/ispconfig-monitor-app-for-android/.
1 Persyaratan
Untuk menginstal sistem seperti itu, Anda memerlukan yang berikut:
- DVD OpenSUSE 12.2 . Anda dapat mengunduhnya di sini:http://download.opensuse.org/distribution/12.2/iso/openSUSE-12.2-DVD-x86_64.iso
- 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 Sistem Dasar
Boot dari DVD OpenSUSE 12.2 Anda dan pilih Instalasi:
Pilih bahasa Anda, tata letak keyboard, dan terima persyaratan lisensi:
Penginstal menganalisis perangkat keras Anda dan membuat cache repositori perangkat lunak:
Pilih Instalasi Baru:
Pilih wilayah dan zona waktu:
Kami memilih Lainnya> Pilihan Server Minimal (Mode Teks) di sini karena kami ingin menginstal server tanpa desktop X-Window. Sistem X-Window tidak diperlukan untuk menjalankan server dan akan memperlambat sistem. Kami akan melakukan semua tugas administrasi di shell atau melalui koneksi SSH, mis. melalui Putty dari desktop jarak jauh.
Klik Edit Partition Setup... untuk mengubah partisi yang diusulkan. Karena ini adalah pengaturan server, kita memerlukan partisi /srv yang besar daripada partisi /home:
Server Sempurna - OpenSUSE 12.2 x86_64 (Apache2, Dovecot, ISPConfig 3) - Halaman 2
4 Konfigurasi Pengaturan Jaringan
Kami menggunakan Yast, alat manajemen sistem OpenSuSE untuk mengkonfigurasi ulang pengaturan kartu jaringan. Setelah boot pertama, sistem dikonfigurasi untuk mendapatkan alamat IP dengan DHCP. Untuk server kami akan mengalihkannya ke alamat IP statis.
Jalankan
yast2
Pilih Perangkat Jaringan> Pengaturan Jaringan:
Pilih kartu jaringan Anda lalu Edit:
Pilih Alamat IP yang ditetapkan secara statis dan masukkan alamat IP, subnet mask dan nama host dan simpan perubahan dengan memilih Berikutnya:
Sekarang pilih Hostname/DNS dan masukkan nama host (mis. server1.example.com) dan server nama (mis. 8.8.8.8 dan 8.8.4.4):
Sekarang pilih Perutean dan masukkan gateway default dan tekan OK:
Untuk mengkonfigurasi firewall (jika Anda tidak mengonfigurasinya selama instalasi dasar), pilih Keamanan dan Pengguna> Firewall di Yast:
Saya ingin menginstal ISPConfig di akhir tutorial ini yang dilengkapi dengan firewallnya sendiri. Itu sebabnya saya menonaktifkan firewall OpenSUSE default sekarang. Tentu saja, Anda bebas untuk membiarkannya dan mengkonfigurasinya sesuai kebutuhan Anda (tetapi kemudian Anda tidak boleh menggunakan firewall lain di kemudian hari karena kemungkinan besar akan mengganggu firewall OpenSUSE).
Pilih Disable Firewall Automatic Starting and Stop Firewall Now, lalu tekan Next:
Tekan Selesai dan tinggalkan Yast:
Setelah itu, Anda harus memeriksa dengan
ifconfig
jika konfigurasi jaringan Anda benar. Jika tidak (misalnya, jika eth0 tidak ada), reboot sistem...
reboot
... dan periksa konfigurasi jaringan Anda lagi setelahnya - sekarang seharusnya sudah benar.
5 Instal Pembaruan
Sekarang kami menginstal pembaruan terbaru dari repositori openSUSE. Jalankan
zypper update
Dan kemudian reboot server karena kemungkinan besar Anda juga menginstal beberapa pembaruan kernel:
reboot
6 Instal Beberapa Paket Dasar
Jalankan
zypper install findutils readline glibc-devel findutils-locate gcc flex lynx compat-readline4 db-devel wget gcc-c++ subversion make vim telnet cron iptables iputils man man-pages nano pico sudo perl-TimeDate
7 Kuota Terjurnal
Untuk memasang kuota, jalankan
zypper install quota
Edit /etc/fstab agar terlihat seperti ini (saya menambahkan ,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 ke mountpoints / dan /srv):
vi /etc/fstab
/dev/disk/by-id/ata-VBOX_HARDDISK_VB1d06c935-e9b5de19-part1 swap swap defaults 0 0 /dev/disk/by-id/ata-VBOX_HARDDISK_VB1d06c935-e9b5de19-part2 / ext4 acl,user_xattr,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 1 1 /dev/disk/by-id/ata-VBOX_HARDDISK_VB1d06c935-e9b5de19-part3 /srv ext4 acl,user_xattr,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 1 2 proc /proc proc defaults 0 0 sysfs /sys sysfs noauto 0 0 debugfs /sys/kernel/debug debugfs noauto 0 0 usbfs /proc/bus/usb usbfs noauto 0 0 devpts /dev/pts devpts mode=0620,gid=5 0 0 |
Kemudian jalankan:
mount -o remount /
mount -o remount /srv
quotacheck -avugm
quotaon -avug
Jangan khawatir jika Anda melihat pesan kesalahan ini - ini normal saat Anda menjalankan quotacheck untuk pertama kalinya:
server1:~ # quotacheck -avugm
quotacheck:Pemindaian /dev/sda2 [/] selesai
quotacheck:Tidak dapat stat file kuota pengguna lama:Tidak ada file atau direktori seperti itu
quotacheck:Tidak dapat stat grup lama file kuota:Tidak ada file atau direktori seperti itu
pemeriksaan kuota:Tidak dapat stat file kuota pengguna lama:Tidak ada file atau direktori tersebut
cek kuota:Tidak dapat stat file kuota grup lama:Tidak ada file atau direktori tersebut
pemeriksaan kuota:Memeriksa 3872 direktori dan 32991 file
cek kuota:File lama tidak ditemukan.
cek kuota:File lama tidak ditemukan.
pemeriksaan kuota:Memindai /dev/sda3 [/srv] selesai
pemeriksaan kuota:Tidak dapat stat file kuota pengguna lama:Tidak ada file atau direktori tersebut
cek kuota:Tidak dapat stat file kuota grup lama:Tidak ada file atau direktori tersebut
pemeriksaan kuota:Tidak dapat stat file kuota pengguna lama:Tidak ada file atau direktori tersebut
quotacheck:Tidak dapat stat file kuota grup lama:Tidak ada file atau direktori tersebut
quotacheck:Memeriksa 6 direktori dan 0 file
quotacheck:File lama tidak ditemukan.
quotacheck:File lama tidak ditemukan.
ser ver1:~ #
Server Sempurna - OpenSUSE 12.2 x86_64 (Apache2, Dovecot, ISPConfig 3) - Halaman 4
8 Instal Postfix, Dovecot, MySQL
Jalankan
zypper install postfix postfix-mysql mysql-community-server libmysqlclient-devel dovecot21 dovecot21-backend-mysql pwgen cron python
Jika Anda mendapatkan pesan berikut, silakan pilih untuk menghapus exim:
Masalah: postfix-2.8.11-2.6.1.x86_64 konflik dengan exim disediakan oleh exim-4.77-2.1.3.x86_64
Solusi 1: Tindakan berikut akan dilakukan:
jangan instal postfix-2.8 .11-2.6.1.x86_64
jangan instal postfix-mysql-2.8.11-2.6.1.x86_64
Solusi 2: deinstalasi exim-4.77-2.1.3.x86_64
Pilih dari solusi di atas dengan angka atau lewati, coba lagi atau batalkan [1/2/s/r/c] (c): <-- 2
Anda mungkin juga harus menghapus instalan pattern-openSUSE-minimal_base-conflicts-12.2-5.5.1.x86_64:
Masalah: patterns-openSUSE-minimal_base-conflicts-12.2-5.5.1.x86_64 konflik dengan python disediakan oleh python-2.7.3-3.6.1.x86_64
Solusi 1: penghapusan patterns-openSUSE-minimal_base-conflicts- 12.2-5.5.1.x86_64
Solusi 2: jangan instal python-2.7.3-3.6.1.x86_64
Pilih dari solusi di atas berdasarkan angka atau lewati, coba lagi atau batalkan [1 /2/s/r/c] (c): <-- 1
Buat symlink berikut:
ln -s /usr/lib64/dovecot/modules /usr/lib/dovecot
Pada titik ini saya harus mem-boot ulang karena jika tidak, MySQL menolak untuk memulai dengan kesalahan:
Failed to issue method call: Unit mysql.service failed to load: No such file or directory. See system logs and 'systemctl status mysql.service' for details.
reboot
Mulai MySQL, Postfix, dan Dovecot dan aktifkan layanan untuk dimulai saat boot.
systemctl aktifkan mysql.service
systemctl start mysql.service
systemctl aktifkan postfix.service
systemctl start postfix.service
systemctl aktifkan dovecot.service
systemctl start dovecot.service
Sekarang saya menginstal paket getmail:
zypper install getmail
Untuk mengamankan instalasi MySQL, jalankan:
mysql_secure_installation
Sekarang Anda akan ditanya beberapa pertanyaan:
server1:~ # mysql_secure_installation
CATATAN:MENJALANKAN SEMUA BAGIAN DARI SCRIPT INI DIREKOMENDASIKAN UNTUK SEMUA MySQL
SERVER DI PENGGUNAAN PRODUKSI! 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 tidak ada):<-- ENTER
Oke, sandi berhasil digunakan, pindah...
Menyetel sandi root memastikan bahwa tidak ada yang dapat masuk ke MySQL
root pengguna tanpa otorisasi yang benar.
Tetapkan sandi root? [Y/n] <-- Y
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] <-- Y
... 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] <-- Y
... 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] <-- Y
- 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] <-- Y
... Berhasil!
Membersihkan...
Selesai! Jika Anda telah menyelesaikan semua langkah di atas, penginstalan MySQL
Anda seharusnya kini aman.
Terima kasih telah menggunakan MySQL!
server1:~ #
Sekarang pengaturan MySQL Anda harus diamankan.
9 Amavisd-new, Spamassassin Dan Clamav
Instal antivirus Amavisd-new, Spamassassin dan Clamav. Jalankan
zypper install amavisd-new clamav clamav-db zoo unzip unrar bzip2 unarj perl-DBD-mysql
Buka /etc/amavisd.conf...
vi /etc/amavisd.conf
... dan tambahkan baris $myhostname dengan nama host Anda yang benar di bawah baris $mydomain:
[...] $mydomain = 'example.com'; # a convenient default for other settings $myhostname = "server1.$mydomain"; [...] |
Kemudian buat symlink dari /var/run/clamav/clamd ke /var/lib/clamav/clamd-socket:
mkdir -p /var/run/clamav
ln -s /var/lib/clamav/clamd-socket /var/run/clamav/clamd
OpenSUSE 12.2 memiliki direktori /run untuk menyimpan data runtime. /run sekarang menjadi tmpfs, dan /var/run sekarang diikat ke /run dari tmpfs, dan karenanya dikosongkan saat reboot.
Artinya setelah reboot, direktori /var/run/clamav yang baru saja kita buat tidak akan ada lagi, dan oleh karena itu clamd akan gagal untuk memulai. Oleh karena itu kami membuat file /etc/tmpfiles.d/clamav.conf sekarang yang akan membuat direktori ini pada startup sistem (lihat http://0pointer.de/public/systemd-man/tmpfiles.d.html untuk lebih jelasnya):
vi /etc/tmpfiles.d/clamav.conf
D /var/run/clamav 0755 root root - |
Sebelum memulai amavisd dan clamd, kita harus mengedit skrip init /etc/init.d/amavis - Saya tidak dapat memulai, menghentikan, dan memulai ulang amavisd dengan skrip init default:
vi /etc/init.d/amavis
Komentari baris berikut di bagian awal dan akhir:
[...] start) # ZMI 20100428 check for stale pid file #if test -f $AMAVIS_PID ; then # checkproc -p $AMAVIS_PID amavisd # if test $? -ge 1 ; then # # pid file is stale, remove it # echo -n "(stale amavisd pid file $AMAVIS_PID found, removing. Did amavisd crash?)" # rm -f $AMAVIS_PID # fi #fi echo -n "Starting virus-scanner (amavisd-new): " $AMAVISD_BIN start #if ! checkproc amavisd; then # rc_failed 7 #fi rc_status -v #if [ "$AMAVIS_SENDMAIL_MILTER" == "yes" ]; then # rc_reset # echo -n "Starting amavis-milter:" # startproc -u vscan $AMAVIS_MILTER_BIN -p $AMAVIS_MILTER_SOCK > /dev/null 2>&1 # rc_status -v #fi ;; stop) echo -n "Shutting down virus-scanner (amavisd-new): " #if checkproc amavisd; then # rc_reset $AMAVISD_BIN stop #else # rc_reset #fi rc_status -v #if [ "$AMAVIS_SENDMAIL_MILTER" == "yes" ]; then # rc_reset # echo -n "Shutting down amavis-milter: " # killproc -TERM $AMAVIS_MILTER_BIN # rc_status -v #fi ;; [...] |
Karena kita telah mengubah skrip init, kita harus menjalankan
systemctl --system daemon-reload
sekarang.
Untuk mengaktifkan layanan, jalankan:
systemctl aktifkan amavis.service
systemctl aktifkan clamd.service
systemctl start amavis.service
systemctl start clamd.service
10 Instal Server Web Apache 2 Dengan PHP5, Python, WebDAV
Instal Apache2 dan suphp. Jalankan:
zypper install apache2 apache2-mod_fcgid
Instal PHP5:
zypper install php5-bcmath php5-bz2 php5-calendar php5-ctype php5-curl php5-dom php5-ftp php5-gd php5-gettext php5-gmp php5-iconv php5-imap php5-ldap php5-mbstring php5-mcrypt php5-mysql php5-odbc php5-openssl php5-pcntl php5-pgsql php5-posix php5-shmop php5-snmp php5-soap php5-sockets php5-sqlite php5-sysvsem php5-tokenizer php5-wddx php5-xmlrpc php5-xsl php5-zlib php5-exif php5-fastcgi php5-pear php5-sysvmsg php5-sysvshm ImageMagick curl apache2-mod_php5
zypper install http://download.opensuse.org/repositories/server:/php/openSUSE_12.2/x86_64/suphp-0.7.1-5.1.x86_64.rpm
Kemudian jalankan perintah ini untuk mengaktifkan modul Apache (termasuk WebDAV):
a2enmod suexec
a2enmod menulis ulang
a2enmod ssl
tindakan a2enmod
a2enmod suphp
a2enmod fcgid
a2enmod dav
a2enmod dav_fs
a2enmod dav_lock
chown root:www /usr/sbin/suexec2
chmod 4755 /usr/sbin/suexec2
a2enflag SSL
Untuk menambahkan dukungan Python, jalankan:
zypper install apache2-mod_python
a2enmod python
Selanjutnya kita install phpMyAdmin:
zypper install phpMyAdmin
Untuk memastikan bahwa kita dapat mengakses phpMyAdmin dari semua website yang dibuat melalui ISPConfig nanti dengan menggunakan /phpmyadmin (misalnya http://www.example.com/phpmyadmin) dan /phpMyAdmin (misalnya http://www.example.com/phpMyAdmin ), buka /etc/Apache2/conf.d/phpMyAdmin.conf...
vi /etc/apache2/conf.d/phpMyAdmin.conf
... dan tambahkan dua alias berikut tepat di awal:
Alias /phpMyAdmin /srv/www/htdocs/phpMyAdmin Alias /phpmyadmin /srv/www/htdocs/phpMyAdmin [...] |
Mulai Apache:
systemctl aktifkan apache2.service
systemctl start apache2.service
10.1 PHP-FPM
Dimulai dengan ISPConfig 3.0.5 yang akan datang, akan ada mode PHP tambahan yang dapat Anda pilih untuk digunakan dengan Apache:PHP-FPM. Jika Anda berencana untuk menggunakan mode PHP ini, masuk akal untuk mengkonfigurasi sistem Anda sekarang sehingga nanti ketika Anda meng-upgrade ke ISPConfig 3.0.5, sistem Anda sudah siap (versi ISPConfig terbaru pada saat penulisan ini adalah ISPConfig 3.0 .4.6).
Untuk menggunakan PHP-FPM dengan Apache, kita memerlukan modul mod_fastcgi Apache (jangan mencampuradukkannya dengan mod_fcgid - keduanya sangat mirip, tetapi Anda tidak dapat menggunakan PHP-FPM dengan mod_fcgid). Kita dapat menginstal PHP-FPM dan mod_fastcgi sebagai berikut:
mod_fastcgi tersedia dari repositori pihak ketiga yang dapat kita aktifkan sebagai berikut:
zypper --gpg-auto-import-keys addrepo --name "Third-party modules for the Apache HTTP server. (Apache_openSUSE_12.2)" http://download.opensuse.org/repositories/Apache:/Modules/Apache_openSUSE_12.2/ apache-third-party-12.2
Selanjutnya kita install mod_fastcgi dan PHP-FPM:
zypper install apache2-mod_fastcgi php5-fpm
Sayangnya ada bug dalam paket apache2-mod_fastcgi yang tidak mengizinkan penggunaan direktif FastCgiExternalServer di dalam bagian
zypper install apache2-devel
wget http://www.fastcgi.com/dist/mod_fastcgi-2.4.6.tar.gz
tar xvfz mod_fastcgi-2.4.6.tar.gz
cd mod_fastcgi-2.4.6/
cp Makefile.AP2 Makefile
ln -s /usr/include/Apache2-worker/mpm.h /usr/include/Apache2/
make top_dir=/usr/share/Apache2
make top_dir=/usr/share/Apache2 install
Sebelum kita memulai PHP-FPM, rename /etc/php5/fpm/php-fpm.conf.default menjadi /etc/php5/fpm/php-fpm.conf:
mv /etc/php5/fpm/php-fpm.conf.default /etc/php5/fpm/php-fpm.conf
Ubah izin direktori sesi PHP:
chmod 1733 /var/lib/php5
Kemudian buka /etc/php5/fpm/php-fpm.conf...
vi /etc/php5/fpm/php-fpm.conf
... dan ubah error_log menjadi /var/log/php-fpm.log:
[...] error_log = /var/log/php-fpm.log [...] |
Tidak ada file php.ini untuk PHP-FPM pada OpenSUSE 12.2, oleh karena itu kita salin CLI php.ini:
cp /etc/php5/cli/php.ini /etc/php5/fpm/
Selanjutnya buka /etc/php5/fpm/php.ini...
vi /etc/php5/fpm/php.ini
... dan atur cgi.fix_pathinfo ke 0:
[...] ; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP's ; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok ; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting ; this to 1 will cause PHP CGI to fix its paths to conform to the spec. A setting ; of zero causes PHP to behave as before. Default is 1. You should fix your scripts ; to use SCRIPT_FILENAME rather than PATH_TRANSLATED. ; http://php.net/cgi.fix-pathinfo cgi.fix_pathinfo=0 [...] |
Selanjutnya buat tautan startup sistem untuk php-fpm dan mulai:
systemctl aktifkan php-fpm.service
systemctl start php-fpm.service
PHP-FPM adalah proses daemon yang menjalankan server FastCGI pada port 9000, seperti yang Anda lihat pada output
netstat -tapn
server1:~ # netstat -tapn
Koneksi Internet aktif (server dan terbentuk)
Proto Recv-Q Send-Q Local Address Alamat Asing Negara 0/>t 0 0 0/> 80 0.0.0.0:* Dengarkan 2329 /nginx
TCP 0 0 0.0.0.0:22 0.0.0.0:* Dengarkan 1204 /SSHD
TCP 0 0 127.0.0.1:9000 0.0.0.0:* Dengarkan 2511 /php-fpm.conf)
TCP 0 0 0.0.0.0:3306 0.0.0.0:* Dengarkan 2059 /Mysqld
TCP 0 0 192.168.0.100:22 192.168.0.199:1632 Didirikan 1284/0
tcp 0 0 :::22 :::* DENGARKAN 1204/sshd
server1:~ #
Selanjutnya aktifkan modul Apache berikut...
tindakan a2enmod
a2enmod fastcgi
alias a2enmod
... dan restart Apache:
systemctl restart apache2.service
Server Sempurna - OpenSUSE 12.2 x86_64 (Apache2, Dovecot, ISPConfig 3) - Halaman 5
11 Instal PureFTPd
Instal daemon FTP pure-ftpd. Jalankan:
zypper install pure-ftpd
systemctl aktifkan pure-ftpd.service
systemctl start pure-ftpd.service
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:
zypper install openssl
Buka /etc/pure-ftpd/pure-ftpd.conf...
vi /etc/pure-ftpd/pure-ftpd.conf
Jika Anda ingin mengizinkan FTP dan Sesi 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 [...] |
Jika Anda ingin menerima sesi TLS saja (tanpa FTP), setel TLS ke 2:
[...] # 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 2 [...] |
Untuk tidak mengizinkan TLS sama sekali (hanya FTP), setel TLS ke 0:
[...] # 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 0 [...] |
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) [AU]:<-- Masukkan Nama Negara Anda (mis., "DE").
Nama Negara Bagian atau Provinsi (nama lengkap) [Some-State]:<-- Masukkan Negara Bagian Anda atau Nama Provinsi.
Nama Lokalitas (mis., kota) []:<-- Masukkan Kota Anda.
Nama Organisasi (mis., perusahaan) [Internet Widgits Pty Ltd]:<-- Masukkan Nama Organisasi Anda (mis., nama perusahaan Anda).
Nama Unit Organisasi (mis., seksi) []:<-- Masukkan Nama Unit Organisasi Anda (mis. "Departemen TI").
Nama Umum (mis. nama 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:
systemctl restart pure-ftpd.service
Itu dia. Anda sekarang dapat mencoba terhubung menggunakan klien FTP Anda; namun, Anda harus mengonfigurasi klien FTP Anda untuk menggunakan TLS - lihat bab berikutnya tentang cara melakukannya dengan FileZilla.
12 Instal BIND
Server nama BIND dapat diinstal sebagai berikut:
zypper install bind
Buat tautan startup sistem BIND dan mulai:
systemctl aktifkan bernama.layanan
systemctl mulai bernama.layanan
13 Instal Webalizer Dan AWStats
Karena ISPConfig 3 memungkinkan Anda memilih apakah Anda ingin menggunakan Webalizer atau AWStats untuk membuat statistik situs web Anda, kami memasang keduanya:
zypper install webalizer perl-DateManip
zypper install http://download.opensuse.org/repositories/network:/utilities/openSUSE_12.2/noarch/awstats-7.0-14.1.noarch.rpm
14 Instal fail2ban
fail2ban dapat diinstal sebagai berikut:
zypper install fail2ban
15 Instal Jailkit
Jailkit dapat diinstal seperti ini:
zypper install http://download.opensuse.org/repositories/security/openSUSE_12.2/x86_64/jailkit-2.13-1.3.x86_64.rpm
16 Menyinkronkan Jam Sistem
Jika Anda ingin agar jam sistem disinkronkan dengan server NTP, lakukan hal berikut:
zypper install xntp
Kemudian tambahkan tautan startup sistem untuk ntp dan mulai ntp:
systemctl aktifkan ntp.service
systemctl start ntp.service
17 Instal rkhunter
rkhunter dapat diinstal sebagai berikut:
zypper install rkhunter
18 Instal SquirrelMail
Untuk menginstal klien webmail SquirrelMail, jalankan:
zypper install squirrelmail-beta
Selanjutnya kita buat alias /webmail dan /squirrelmail tepat di awal /etc/apache2/conf.d/squirrelmail.conf sehingga SquirrelMail dapat diakses dari vhost manapun (misalnya http://www.example.com/webmail atau http://www.example.com/squirrelmail):
vi /etc/apache2/conf.d/squirrelmail.conf
Alias /squirrelmail /srv/www/htdocs/squirrelmail Alias /webmail /srv/www/htdocs/squirrelmail [...] |
Selanjutnya kita buat direktori /srv/www/htdocs/squirrelmail/data dan berikan izin yang cukup sehingga grup www dapat menulis ke dalamnya:
mkdir /srv/www/htdocs/squirrelmail/data
chown root:www /srv/www/htdocs/squirrelmail/data
chmod 770 /srv/www/htdocs/squirrelmail/data
Kemudian restart Apache:
systemctl restart apache2.service
Kemudian konfigurasikan SquirrelMail:
/srv/www/htdocs/squirrelmail/config/conf.pl
Kita harus memberitahu SquirrelMail bahwa kita menggunakan Dovecot:
PERINGATAN:
File "config/config.php" ditemukan, tetapi itu untuk
versi SquirrelMail yang lebih lama. Masih mungkin untuk
membaca default dari file ini tetapi diperingatkan bahwa banyak
preferensi berubah antar versi. Disarankan agar
Anda memulai dengan config.php bersih untuk setiap peningkatan yang Anda
lakukan. Untuk melakukan ini, cukup pindahkan config/config.php keluar dari jalur.
Lanjutkan memuat dengan config.php lama [y/T]? <-- y
Apakah Anda ingin saya menghentikan peringatan Anda [y/T]? <-- y
Konfigurasi SquirrelMail : Baca: config.php (1.5.0)
--------------------- ------------------------------------
Menu Utama --
1. Preferensi Organisasi
2. Setelan Server
3. Folder Default
4. Opsi Umum
5. Antarmuka Pengguna
6. Buku Alamat
7. Pesan Hari ini (MOTD)
8. Plugin
9. Basis data
10. Setelan bahasa
11. Penyesuaian
D. Setel setelan yang telah ditentukan sebelumnya untuk server IMAP tertentu
C Aktifkan 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
gmail = Akses IMAP ke akun Google mail (Gmail)
berhenti = > Perintah >> <-- dovecot
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 yang 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
gmail = Akses IMAP ke akun Google mail (Gmail)
berhenti = > Perintah>> dovecot
imap_server_type =dovecot
default_folder_prefix =
trash_folder =trash
send_polder =terkirim
draft_folder =drafts
show_prefix_opte = salah
default_sub_of_inbox = salah
show_contain_subfolders_op tion = false
optional_delimiter = detect
delete_folder = false
force_username_lowercase = true
Press>
Konfigurasi SquirrelMail : Baca: config.php (1.5.0)
---------------------------- -----------------------------
Menu Utama --
1. Preferensi Organisasi
2. Setelan Server
3. Folder Default
4. Opsi Umum
5. Antarmuka Pengguna
6. Buku Alamat
7. Pesan Hari ini (MOTD)
8. Plugin
9. Basis data
10. Setelan bahasa
11. Penyesuaian
D. Setel setelan yang telah ditentukan sebelumnya untuk server IMAP tertentu
C Aktifkan warna
S Simpan data
Q Keluar
Perintah >> <-- S
Konfigurasi SquirrelMail : Baca: config.php (1.5.0)
---------------------- -----------------------------------
Menu Utama --
1. Preferensi Organisasi
2. Setelan Server
3. Folder Default
4. Opsi Umum
5. Antarmuka Pengguna
6. Buku Alamat
7. Pesan Hari ini (MOTD)
8. Plugin
9. Basis data
10. Setelan bahasa
11. Penyesuaian
D. Setel setelan yang telah ditentukan sebelumnya untuk server IMAP tertentu
C Aktifkan warna
S Simpan data
Q Keluar
Command >> S
Data disimpan di config.php
Selesai mengaktifkan plugin; pendaftaran data disimpan di plugin_hooks.php
Tekan enter untuk melanjutkan... <-- ENTER
Konfigurasi SquirrelMail : Baca: config.php (1.5.0 )
-------------------------------------------------------- ------------
Menu Utama --
1. Preferensi Organisasi
2. Setelan Server
3. Folder Default
4. Opsi Umum
5. Antarmuka Pengguna
6. Buku Alamat
7. Pesan Hari ini (MOTD)
8. Plugin
9. Basis data
10. Setelan bahasa
11. Penyesuaian
D. Setel setelan yang telah ditentukan sebelumnya untuk server IMAP tertentu
C Aktifkan warna
S Simpan data
Q Keluar
Perintah >> <-- Q
Setelah Anda membuat situs web di ISPConfig, Anda dapat mengakses SquirrelMail menggunakan alias /webmail atau /squirrelmail:
Server Sempurna - OpenSUSE 12.2 x86_64 (Apache2, Dovecot, ISPConfig 3) - Halaman 6
19 ISPConfig 3
Sebelum kita menginstal ISPConfig 3, pastikan direktori /var/vmail/ ada:
mkdir /var/vmail/
Unduh versi ISPConfig 3 saat ini dan instal. Penginstal ISPConfig akan mengonfigurasi semua layanan seperti Postfix, Dovecot, dll. untuk Anda. Pengaturan manual seperti yang diperlukan untuk ISPConfig 2 tidak diperlukan lagi.
Anda sekarang juga memiliki kemungkinan untuk membiarkan penginstal membuat vhost SSL untuk panel kontrol ISPConfig, sehingga ISPConfig dapat diakses menggunakan https:// alih-alih http://. Untuk mencapai ini, cukup tekan ENTER ketika Anda melihat pertanyaan ini:Apakah Anda menginginkan koneksi yang aman (SSL) ke antarmuka web ISPConfig (y,n) [y]:.
cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install /instal/
Sekarang mulai proses instalasi dengan menjalankan:
php -q install.php
server1:/tmp/ispconfig3_install/install # php -q install.php
----------------------- -------------------------------------------------- -------
_____ _________ _____ __ _ ____
|_ _/ ___| _ \ / __ \ / _(_) /__ \
| | \ `--.| |_/ / | / \/ ___ _ __ | |_ _ __ _ _/ /
| | `--. \ __/ | | / _ \| '_ \| _| |/ _` | |_ |
_| |_/\__/ / | | \__/\ (_) | | | | | | | (_| | ___\ \
\___/\____/\_| \____/\___/|_| |_|_| |_|\__, | \____/
|
|___/
-------------------------------------- --------------------------------------------------
>> Konfigurasi awal
Sistem Operasi: openSUSE atau versi yang kompatibel, tidak diketahui.
Berikut ini akan ada beberapa pertanyaan untuk konfigurasi primer jadi berhati-hatilah.
Nilai default di [kurung] dan dapat diterima dengan
Ketuk dalam "keluar" (tanpa tanda kutip) untuk menghentikan pemasang.
Pilih bahasa (en,de) [en]: <-- 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 sandi []: <-- yourrootsqlpassword
MySQL database untuk membuat [dbispconfig]: <-- ENTER
MySQL charset [utf8]: <-- ENTER
Membuat kunci pribadi RSA 2048 bit RSA
....................................... ................++++
........................... ......................+++
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 Terhormat atau DN.
Di sana ada beberapa bidang tetapi Anda dapat mengosongkan beberapa
Untuk beberapa bidang akan ada nilai default,
Jika Anda masuk '.', bidang akan dikosongkan.
---- --
Nama Negara (2 kode huruf) [AU]: <-- ENTER
Nama Negara atau Provinsi (nama lengkap) [Some-State]: <-- ENTER
Locality Name ( mis., kota) []: <-- ENTER
Organization Name (mis., perusahaan) [Internet Widgits Pty Ltd]: <-- ENTER
Nama Unit Organisasi (mis., sekte ion) []: <-- ENTER
Nama Umum (misalnya, nama ANDA) []: <-- ENTER
Alamat Email []: <-- ENTER
Mengonfigurasi Jailkit
Mengonfigurasi Dovecot
Mengonfigurasi Spamassassin
Mengonfigurasi Amavisd
Mengonfigurasi Getmail
Mengonfigurasi Pureftpd
Mengonfigurasi BIND
Mengonfigurasi Apache
Mengonfigurasi Vlogger
Mengonfigurasi Aplikasi vhost
Mengonfigurasi Bastille Firewall
Mengonfigurasi Fail2ban
Memasang ISPConfig
ISPConfig Port [8080]: <-- ENTER
Apakah Anda ingin aman (SSL ) koneksi ke antarmuka web ISPConfig (y,n) [y]: <-- ENTER
Membuat kunci pribadi RSA, modulus panjang 4096 bit
........+ +
.....................................++
e adalah 65537 (0x10001)
Anda akan diminta untuk memasukkan informasi yang akan dimasukkan ke dalam permintaan sertifikat Anda.
Apa yang akan Anda masukkan adalah apa yang disebut Nama DN atau Nama DN .
Ada cukup beberapa kolom tetapi Anda dapat mengosongkan beberapa
Untuk beberapa kolom akan ada nilai default,
Jika Anda masuk '.', kolom akan dikosongkan.
-----
Nama Negara (2 kode huruf) [AU]:<-- MASUKKAN
Nama Negara atau Provinsi (nama lengkap) [Beberapa Negara Bagian]: <-- ENTER
Nama Lokal (misalnya, kota) []: <-- ENTER
Nama Organisasi (mis., perusahaan) [Internet Widgits Pty Ltd]: <-- ENTER
Nama Unit Organisasi (mis., bagian) []: <-- ENTER
Nama Umum (misalnya, nama ANDA) []:<-- ENTER
Email Address []: <-- ENTER
Silakan masukkan atribut 'ekstra' berikut
yang akan dikirim dengan permintaan sertifikat Anda
Tantangan sandi []: <-- ENTER
Nama perusahaan opsional []: <-- ENTER
menulis kunci RSA
Mengonfigurasi DBServer
Menginstal ISPConfig crontab
tanpa crontab untuk root
tidak ada crontab untuk getmail
Memulai ulang layanan...
mengalihkan ke systemctl
mengalihkan ke systemctl
mengalihkan ke systemctl
mengalihkan ke systemctl
mengalihkan ke systemctl
mengalihkan ke systemc tl
mengalihkan ke systemctl
mengalihkan ke systemctl
Instalasi selesai.
server1:/tmp/ispconfig3_install/install #
Bersihkan direktori /tmp:
cd /tmp
rm -rf /tmp/ispconfig3_install
rm -f /tmp/ISPConfig-3-stable.tar.gz
Buka /etc/suphp.conf...
vi /etc/suphp.conf
dan pastikan itu berisi x-httpd-suphp="php:/srv/www/cgi-bin/php" bukan x-httpd-suphp="php:/srv/www/cgi-bin/php5 " di akhir file:
[...] [handlers] ;Handler for php-scripts x-httpd-suphp="php:/srv/www/cgi-bin/php" [...] |
Setelah itu Anda dapat mengakses ISPConfig 3 di bawah http(s)://server1.example.com:8080/ atau http(s)://192.168.0.100:8080/ (http atau https tergantung pada apa yang Anda pilih saat instalasi). Masuk dengan nama pengguna admin dan kata sandi admin (Anda harus mengubah kata sandi default setelah login pertama Anda):
19.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.
19.2 Aplikasi Monitor ISPConfig Untuk Android
Dengan Aplikasi Monitor ISPConfig, Anda dapat memeriksa status server Anda dan mengetahui apakah semua layanan berjalan seperti yang diharapkan. Anda dapat memeriksa port TCP dan UDP dan melakukan ping ke server Anda. Selain itu, Anda dapat menggunakan aplikasi ini untuk meminta detail dari server yang telah menginstal ISPConfig (harap diperhatikan bahwa versi ISPConfig 3 yang diinstal minimum dengan dukungan untuk Aplikasi Monitor ISPConfig adalah 3.0.3.3! ); detail ini mencakup semua yang Anda ketahui dari modul Monitor di ISPConfig Control Panel (misalnya layanan, log email dan sistem, antrian email, info CPU dan memori, penggunaan disk, kuota, detail OS, log RKHunter, dll.), dan tentu saja , karena ISPConfig berkemampuan multiserver, Anda dapat memeriksa semua server yang dikendalikan dari server master ISPConfig Anda.
Untuk mengunduh dan petunjuk penggunaan, silakan kunjungi http://www.ispconfig.org/ispconfig-3/ispconfig-monitor-app-for-android/.
20 Tautan
- OpenSUSE:http://www.opensuse.org/
- ISPConfig:http://www.ispconfig.org/