Tutorial ini ada untuk versi OS ini
- CentOS 7.6
- CentOS 7.4
- CentOS 7.3
- CentOS 7.2
- CentOS 7.1
- CentOS 7
Di halaman ini
- Manual ISPConfig 3
Tutorial ini menunjukkan cara menyiapkan server CentOS 7 x86_64 untuk instalasi ISPConfig 3 dan cara menginstal ISPConfig 3. ISPConfig 3 adalah panel kontrol webhosting yang memungkinkan Anda untuk mengonfigurasi layanan berikut melalui browser web:Server web Apache, email Postfix server, MySQL, server nama BIND, PureFTPd, SpamAssassin, ClamAV, Mailman, dan banyak lagi. 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.
Panduan ISPConfig 3
Untuk mempelajari cara menggunakan ISPConfig 3, saya sangat menyarankan untuk mengunduh Manual ISPConfig 3.
Pada lebih dari 300 halaman, ini mencakup konsep di balik ISPConfig (admin, reseller, klien), menjelaskan cara menginstal dan memperbarui ISPConfig 3, menyertakan referensi untuk semua formulir dan bidang formulir di ISPConfig bersama dengan contoh input yang valid, dan memberikan tutorial untuk tugas paling umum di ISPConfig 3. Ini juga menjelaskan cara membuat server Anda lebih aman dan dilengkapi dengan bagian pemecahan masalah di bagian akhir.
1 Persyaratan
Untuk menginstal sistem seperti itu, Anda memerlukan yang berikut:
- Sistem server minimal Centos 7. Ini bisa berupa server yang diinstal dari awal seperti yang dijelaskan dalam tutorial server minimal Centos 7 kami atau server virtual atau root-server dari perusahaan hosting yang memiliki setup minimal Centos 7 yang diinstal.
- Koneksi internet yang cepat.
2 Catatan Awal
Dalam tutorial ini saya menggunakan hostname server1.example.com dengan alamat IP 192.168.1.100 dan gateway 192.168.1.254. Setelan ini mungkin berbeda untuk Anda, jadi Anda harus menggantinya jika perlu.
3 Mengatur tata letak keyboard
Pemasang CentOS 7 saat ini memiliki bug, jadi Anda mungkin berakhir dengan tata letak keyboard yang berbeda pada shell daripada yang dipilih saat pemasangan. Jika Anda menemukan bug itu, maka Anda dapat beralih ke keyboard yang tepat (dalam kasus saya "de" untuk tata letak keyboard Jerman, dengan perintah localectl:
localectl set-keymap de
Untuk mendapatkan daftar semua peta kunci yang tersedia, jalankan:
localectl list-keymaps
Saya ingin menginstal ISPConfig di akhir tutorial ini yang dilengkapi dengan firewallnya sendiri. Itu sebabnya saya menonaktifkan firewall CentOS default sekarang. Tentu saja, Anda bebas untuk membiarkannya dan mengonfigurasinya sesuai kebutuhan Anda (tetapi Anda tidak boleh menggunakan firewall lain di kemudian hari karena kemungkinan besar akan mengganggu firewall CentOS).
Jalankan...
systemctl stop firewalld.service
systemctl disable firewalld.service
Sekarang saya akan menginstal beberapa alat jaringan dasar dan editor berbasis shell yang kita butuhkan pada langkah selanjutnya:
yum -y install nano wget net-tools NetworkManager-tui
Jika Anda tidak mengonfigurasi kartu jaringan Anda selama penginstalan, Anda dapat melakukannya sekarang. Jalankan...
nmtui
... dan pergi ke Edit koneksi:
Pilih antarmuka jaringan Anda:
Kemudian isi detail jaringan Anda - nonaktifkan DHCP dan isi alamat IP statis, netmask, gateway Anda, dan satu atau dua server nama, lalu tekan Ok:
Selanjutnya pilih OK untuk mengonfirmasi perubahan yang Anda buat di pengaturan jaringan
dan Keluar untuk menutup alat konfigurasi jaringan nmtui.
Anda harus menjalankan
ifconfig
sekarang untuk memeriksa apakah penginstal mendapatkan alamat IP Anda dengan benar:
[[email protected] ~]# ifconfig ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::20c:29ff:fecd:cc52 prefixlen 64 scopeid 0x20 ether 00:0c:29:cd:cc:52 txqueuelen 1000 (Ethernet) RX packets 55621 bytes 79601094 (75.9 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 28115 bytes 2608239 (2.4 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10loop txqueuelen 0 (Local Loopback) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Jika kartu jaringan Anda tidak muncul di sana, maka itu tidak diaktifkan saat boot. Dalam hal ini, buka file /etc/sysconfig/network-scripts/ifcfg-eth0
nano /etc/sysconfig/network-scripts/ifcfg-ens33
dan atur ONBOOT ke ya:
[...]
ONBOOT=yes
[...]
dan reboot server.
Periksa /etc/resolv.conf Anda jika daftar semua server nama yang telah Anda konfigurasikan sebelumnya:
cat /etc/resolv.conf
Jika server nama tidak ada, jalankan
nmtui
dan tambahkan lagi server nama yang hilang.
Sekarang, ke konfigurasi...
4 Sesuaikan /etc/hosts
Selanjutnya kita edit /etc/hosts. Jadikan seperti ini:
nano /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
192.168.1.100 server1.example.com server1
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
5 Konfigurasi Firewall
(Anda dapat melewati bab ini jika Anda telah menonaktifkan firewall di akhir penginstalan sistem dasar.)
Saya ingin menginstal ISPConfig di akhir tutorial ini yang dilengkapi dengan firewallnya sendiri. Itu sebabnya saya menonaktifkan firewall CentOS default sekarang. Tentu saja, Anda bebas untuk membiarkannya dan mengonfigurasinya sesuai kebutuhan Anda (tetapi Anda tidak boleh menggunakan firewall lain di kemudian hari karena kemungkinan besar akan mengganggu firewall CentOS).
Jalankan
systemctl stop firewalld.service
systemctl disable firewalld.service
dan nonaktifkan firewall.
Untuk memeriksa apakah firewall benar-benar telah dinonaktifkan, Anda dapat menjalankan
iptables -L
setelah itu. Outputnya akan terlihat seperti ini:
[[email protected] ~]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Atau gunakan perintah firewall-cmd:
firewall-cmd --state
[[email protected] ~]# firewall-cmd --state
not running
[[email protected] ~]#
6 Nonaktifkan SELinux
SELinux adalah ekstensi keamanan CentOS yang seharusnya memberikan keamanan yang diperluas. Menurut pendapat saya, Anda tidak memerlukannya untuk mengkonfigurasi sistem yang aman, dan biasanya menyebabkan lebih banyak masalah daripada keuntungan (pikirkan setelah Anda melakukan pemecahan masalah selama seminggu karena beberapa layanan tidak berfungsi seperti yang diharapkan, dan kemudian Anda mengetahui bahwa semuanya baik-baik saja, hanya SELinux yang menyebabkan masalah). Oleh karena itu saya menonaktifkannya (ini adalah suatu keharusan jika Anda ingin menginstal ISPConfig nanti).
Edit /etc/selinux/config dan atur SELINUX=disabled:
nano /etc/selinux/config
# This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of these two values: # targeted - Targeted processes are protected, # mls - Multi Level Security protection. SELINUXTYPE=targeted
Setelah itu kita harus me-reboot sistem:
reboot
7 Aktifkan Repositori Tambahan Dan Instal Beberapa Perangkat Lunak
Pertama kita mengimpor kunci GPG untuk paket perangkat lunak:
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*
Kemudian kami mengaktifkan repositori EPEL pada sistem CentOS kami karena banyak paket yang akan kami instal selama tutorial ini tidak tersedia di repositori resmi CentOS 7:
rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpm
yum -y install yum-priorities
Edit /etc/yum.repos.d/epel.repo...
nano /etc/yum.repos.d/epel.repo
... dan tambahkan baris priority=10 ke bagian [epel]:
[epel] name=Extra Packages for Enterprise Linux 7 - $basearch #baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch failovermethod=priority enabled=1 priority=10 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 [...]
Kemudian kami memperbarui paket kami yang ada di sistem:
yum update
Sekarang kita install beberapa paket software yang dibutuhkan nantinya:
yum -y groupinstall 'Development Tools'
8 Kuota
(Jika Anda telah memilih skema partisi yang berbeda dari saya, Anda harus menyesuaikan bab ini sehingga kuota berlaku untuk partisi yang Anda butuhkan.)
Untuk memasang kuota, kita jalankan perintah ini:
yum -y install quota
Sekarang kita periksa apakah kuota sudah diaktifkan untuk sistem file tempat situs web (/var/www) dan data maildir (var/vmail) disimpan. Dalam contoh pengaturan ini, saya memiliki satu partisi root besar, jadi saya mencari ' / ':
mount | grep ' / '
[[email protected] ~]# mount | grep ' / '
/dev/mapper/centos-root on / type xfs (rw,relatime,attr2,inode64,noquota)
[[email protected] ~]#
Jika Anda memiliki partisi /var terpisah, gunakan:
mount | grep ' /var '
sebagai gantinya. Jika baris berisi kata "tidak ada kuota ", lalu lanjutkan dengan langkah-langkah berikut untuk mengaktifkan kuota.
Mengaktifkan kuota pada partisi / (root)
Biasanya Anda akan mengaktifkan kuota di file /etc/fstab, tetapi jika sistem file adalah sistem file root "/", maka kuota harus diaktifkan oleh parameter boot Kernel Linux.
Edit file konfigurasi grub:
nano /etc/default/grub
cari fole baris yang dimulai dengan GRUB_CMDLINE_LINUX dan tambahkan rootflags=uquota,gquota ke parameter commandline sehingga baris yang dihasilkan terlihat seperti ini:
GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/swap vconsole.font=latarcyrheb-sun16 rd.lvm.lv=centos/root crashkernel=auto vconsole.keymap=us rhgb quiet rootflags=uquota,gquota"
dan terapkan perubahan dengan menjalankan perintah berikut.
cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg_bak
grub2-mkconfig -o /boot/grub2/grub.cfg
dan reboot server.
reboot
Sekarang periksa apakah kuota diaktifkan:
mount | grep ' / '
[[email protected] ~]# mount | grep ' / '
/dev/mapper/centos-root on / type xfs (rw,relatime,attr2,inode64,usrquota,grpquota)
[[email protected] ~]#
Saat kuota aktif, kita bisa melihat "usrquota,grpquota " dalam daftar opsi pemasangan.
Mengaktifkan kuota pada partisi /var terpisah
Jika Anda memiliki partisi /var terpisah, edit /etc/fstab dan tambahkan ,uquota,gquota ke partisi / (/dev/mapper/centos-var):
nano /etc/fstab
#
# /etc/fstab
# Created by anaconda on Sun Sep 21 16:33:45 2014
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 1 1
/dev/mapper/centos-var /var xfs defaults,uquota,gquota 1 2
UUID=9ac06939-7e43-4efd-957a-486775edd7b4 /boot xfs defaults 1 3
/dev/mapper/centos-swap swap swap defaults 0 0
Kemudian jalankan
mount -o remount /var
quotacheck -avugm
quotaon -avug
untuk mengaktifkan kuota.
9 Instal Apache, MySQL, phpMyAdmin
Kita dapat menginstal paket yang dibutuhkan dengan satu perintah:
yum -y install ntp httpd mod_ssl mariadb-server php php-mysql php-mbstring phpmyadmin