GNU/Linux >> Znalost Linux >  >> Cent OS

Perfektní server – CentOS 7 (Apache2, Dovecot, ISPConfig 3)

Tento návod existuje pro tyto verze OS

  • CentOS 7.6
  • CentOS 7.4
  • CentOS 7.3
  • CentOS 7.2
  • CentOS 7.1
  • CentOS 7

Na této stránce

  1. Příručka ISPConfig 3
  • 1 Požadavky
  • 2 Předběžná poznámka
  • 3 Nastavte rozložení klávesnice
  • 4 Upravte /etc/hosts
  • 5 Konfigurace brány firewall
  • 6 Zakázat SELinux
  • 7 Povolit další úložiště a nainstalovat nějaký software
  • 8 kvót
  • Povolení kvóty na oddílu / (root)
  • Povolení kvóty na samostatném oddílu /var
  • 9 Nainstalujte Apache, MySQL, phpMyAdmin
  • Tento tutoriál ukazuje, jak připravit server CentOS 7 x86_64 pro instalaci ISPConfig 3 a jak nainstalovat ISPConfig 3. ISPConfig 3 je ovládací panel webhostingu, který umožňuje konfigurovat následující služby prostřednictvím webového prohlížeče:webový server Apache, pošta Postfix server, MySQL, jmenný server BIND, PureFTPd, SpamAssassin, ClamAV, Mailman a mnoho dalších. Od verze 3.0.4 přichází ISPConfig s plnou podporou pro webový server nginx kromě Apache; tento tutoriál popisuje nastavení serveru, který používá Apache, nikoli nginx.

    Příručka ISPConfig 3

    Abyste se naučili používat ISPConfig 3, důrazně doporučuji stáhnout si příručku ISPConfig 3.

    Na více než 300 stránkách pokrývá koncept ISPConfig (administrátoři, prodejci, klienti), vysvětluje, jak nainstalovat a aktualizovat ISPConfig 3, obsahuje odkaz na všechny formuláře a pole formulářů v ISPConfig spolu s příklady platných vstupů a poskytuje výukové programy. pro nejběžnější úkoly v ISPConfig 3. Také uvádí, jak zvýšit zabezpečení serveru, a na konci je dodávána část pro odstraňování problémů.

    1 požadavky

    K instalaci takového systému budete potřebovat následující:

    • Minimální serverový systém Centos 7. Může se jednat o server nainstalovaný od začátku, jak je popsáno v našem výukovém programu pro minimální server Centos 7, nebo o virtuální server nebo kořenový server od hostitelské společnosti, která má nainstalované minimální nastavení Centos 7.
    • Rychlé internetové připojení.

    2 Předběžná poznámka

    V tomto tutoriálu používám název hostitele server1.example.com s IP adresou 192.168.1.100 a bránou 192.168.1.254. Tato nastavení se pro vás mohou lišit, takže je v případě potřeby musíte nahradit.

    3 Nastavte rozložení klávesnice

    Aktuální instalační program CentOS 7 má chybu, takže můžete skončit s jiným rozložením klávesnice na shellu, než jaké jste vybrali při instalaci. Pokud narazíte na tuto chybu, můžete přepnout na pravou klávesnici (v mém případě „de“ pro německé rozložení klávesnice pomocí příkazu localectl:

    localectl set-keymap de

    Chcete-li získat seznam všech dostupných map kláves, spusťte:

    localectl list-keymaps

    Chci nainstalovat ISPConfig na konci tohoto tutoriálu, který je dodáván s vlastním firewallem. Proto nyní deaktivuji výchozí firewall CentOS. Samozřejmě ho můžete nechat zapnutý a nakonfigurovat podle svých potřeb (ale později byste neměli používat žádný jiný firewall, protože by s největší pravděpodobností narušoval firewall CentOS).

    Spustit...

    systemctl stop firewalld.service
    systemctl disable firewalld.service

    Nyní nainstaluji některé základní síťové nástroje a editor založený na shellu, které potřebujeme v dalších krocích:

    yum -y install nano wget net-tools NetworkManager-tui

    Pokud jste během instalace nenakonfigurovali síťovou kartu, můžete tak učinit nyní. Spustit...

    nmtui

    ... a přejděte na Upravit připojení:

    Vyberte síťové rozhraní:

    Poté vyplňte podrobnosti o vaší síti – deaktivujte DHCP a vyplňte statickou IP adresu, masku sítě, vaši bránu a jeden nebo dva jmenné servery, poté stiskněte Ok:

    Dále vyberte OK pro potvrzení změn, které jste provedli v nastavení sítě

    a Quit pro zavření nástroje pro konfiguraci sítě nmtui.

    Měli byste spustit

    ifconfig

    nyní zkontrolujte, zda instalační program správně získal vaši IP adresu:

    [[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 0x10
            loop  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

    Pokud se tam vaše síťová karta nezobrazuje, není při bootování povolena. V tomto případě otevřete soubor /etc/sysconfig/network-scripts/ifcfg-eth0

    nano /etc/sysconfig/network-scripts/ifcfg-ens33

    a nastavte ONBOOT na yes:

    [...]
    ONBOOT=yes
    [...]

    a restartujte server.

    Zkontrolujte svůj /etc/resolv.conf, zda obsahuje všechny jmenné servery, které jste dříve nakonfigurovali:

    cat /etc/resolv.conf

    Pokud jmenné servery chybí, spusťte

    nmtui

    a znovu přidejte chybějící jmenné servery.

    Nyní ke konfiguraci...

    4 Upravte /etc/hosts

    Dále upravíme /etc/hosts. Ať to vypadá takto:

    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 Konfigurace brány firewall

    (Pokud jste již na konci základní instalace systému firewall deaktivovali, můžete tuto kapitolu přeskočit.)

    Chci nainstalovat ISPConfig na konci tohoto tutoriálu, který je dodáván s vlastním firewallem. Proto nyní deaktivuji výchozí firewall CentOS. Samozřejmě ho můžete nechat zapnutý a nakonfigurovat podle svých potřeb (ale později byste neměli používat žádný jiný firewall, protože by s největší pravděpodobností narušoval firewall CentOS).

    Spustit

    systemctl stop firewalld.service
    systemctl disable firewalld.service

    a vypněte bránu firewall.

    Chcete-li zkontrolovat, zda byl firewall skutečně deaktivován, můžete spustit

    iptables -L

    později. Výstup by měl vypadat takto:

    [[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

    Nebo použijte příkaz firewall-cmd:

    firewall-cmd --state
    [[email protected] ~]# firewall-cmd --state
    not running
    [[email protected] ~]#

    6 Zakázat SELinux

    SELinux je bezpečnostní rozšíření CentOS, které by mělo poskytovat rozšířené zabezpečení. Podle mého názoru to ke konfiguraci zabezpečeného systému nepotřebujete a obvykle to způsobuje více problémů než výhod (přemýšlejte o tom, až týden řešíte problémy, protože některá služba nefungovala podle očekávání, a pak zjistěte, že vše bylo v pořádku, problém způsoboval pouze SELinux). Proto jsem to zakázal (to je nutnost, pokud chcete ISPConfig nainstalovat později).

    Upravte /etc/selinux/config a nastavte 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
    

    Poté musíme restartovat systém:

    reboot

    7 Povolení dalších úložišť a instalace softwaru

    Nejprve importujeme klíče GPG pro softwarové balíčky:

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

    Poté povolíme úložiště EPEL na našem systému CentOS, protože mnoho balíčků, které se chystáme instalovat v průběhu tohoto tutoriálu, není k dispozici v oficiálním úložišti 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

    Upravte /etc/yum.repos.d/epel.repo...

    nano /etc/yum.repos.d/epel.repo

    ... a přidejte řádek priority=10 do sekce [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
    [...]

    Poté aktualizujeme naše stávající balíčky v systému:

    yum update

    Nyní nainstalujeme některé softwarové balíčky, které budeme potřebovat později:

    yum -y groupinstall 'Development Tools'

    8 kvóta

    (Pokud jste zvolili jiné schéma rozdělení než já, musíte upravit tuto kapitolu tak, aby kvóta platila pro oblasti, kde ji potřebujete.)

    Pro instalaci kvóty spustíme tento příkaz:

    yum -y install quota

    Nyní zkontrolujeme, zda je již povolena kvóta pro souborový systém, kde jsou uloženy webové stránky (/var/www) a data maildir (var/vmail). V tomto příkladu nastavení mám jeden velký kořenový oddíl, takže hledám ' / ':

    mount | grep ' / '
    [[email protected] ~]# mount | grep ' / '
    /dev/mapper/centos-root on / type xfs (rw,relatime,attr2,inode64,noquota)
    [[email protected] ~]#

    Pokud máte samostatný oddíl /var, použijte:

    mount | grep ' /var '

    namísto. Pokud řádek obsahuje slovo „noquota “, poté pokračujte podle následujících kroků a povolte kvótu.

    Povolení kvóty na / (kořenovém) oddílu

    Normálně byste povolili kvótu v souboru /etc/fstab, ale pokud je souborovým systémem kořenový souborový systém "/", pak musí být kvóta povolena spouštěcím parametrem linuxového jádra.

    Upravte konfigurační soubor grub:

    nano /etc/default/grub

    prohledejte řádek, který začíná GRUB_CMDLINE_LINUX a přidejte rootflags=uquota,gquota do parametrů příkazového řádku tak, aby výsledný řádek vypadal takto:

    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"

    a aplikujte změny spuštěním následujícího příkazu.

    cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg_bak
    grub2-mkconfig -o /boot/grub2/grub.cfg

    a restartujte server.

    reboot

    Nyní zkontrolujte, zda je povolena kvóta:

    mount | grep ' / '
    [[email protected] ~]# mount | grep ' / '
    /dev/mapper/centos-root on / type xfs (rw,relatime,attr2,inode64,usrquota,grpquota)
    [[email protected] ~]#

    Když je kvóta aktivní, můžeme vidět „usrquota,grpquota " v seznamu možností připojení.

    Povolení kvóty na samostatném oddílu /var

    Pokud máte samostatný oddíl /var, upravte /etc/fstab a přidejte ,uquota,gquota do oddílu / (/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

    Potom spusťte

    mount -o remount /var
    quotacheck -avugm
    quotaon -avug

    pro povolení kvóty.

    9 Instalace Apache, MySQL, phpMyAdmin

    Potřebné balíčky můžeme nainstalovat jediným příkazem:

    yum -y install ntp httpd mod_ssl mariadb-server php php-mysql php-mbstring phpmyadmin


    Cent OS
    1. The Perfect Server – OpenSUSE 12.3 x86_64 (Apache2, Dovecot, ISPConfig 3)

    2. Perfektní server – CentOS 7.1 s Apache2, Postfix, Dovecot, Pure-FTPD, BIND a ISPConfig 3

    3. The Perfect Server – Debian 8 Jessie (Apache2, BIND, Dovecot, ISPConfig 3)

    1. The Perfect Server – Debian 8.4 Jessie (Apache2, BIND, Dovecot, ISPConfig 3.1)

    2. Perfektní server – CentOS 6.1 x86_64 s Apache2 [ISPConfig 3]

    3. The Perfect Server – CentOS 5.7 x86_64 [ISPConfig 3]

    1. The Perfect Server – CentOS 6.0 x86_64 [ISPConfig 3]

    2. The Perfect Server – CentOS 6.3 x86_64 (Apache2, Dovecot, ISPConfig 3)

    3. The Perfect Server – Ubuntu 12.04 LTS (Apache2, BIND, Dovecot, ISPConfig 3)