GNU/Linux >> Znalost Linux >  >> Debian

The Perfect Server – Debian 9 (Stretch) s Apache, BIND, Dovecot, PureFTPD a ISPConfig 3.1

Tento tutoriál ukazuje, jak připravit server Debian 9 (s Apache2, BIND, Dovecot) pro instalaci ISPConfig 3.1 a jak nainstalovat ISPConfig. Ovládací panel webhostingu ISPConfig 3 umožňuje konfigurovat následující služby prostřednictvím webového prohlížeče:webový server Apache nebo nginx, poštovní server Postfix, server IMAP/POP3 Courier nebo Dovecot, jmenný server MySQL, BIND nebo MyDNS, PureFTPd, SpamAssassin, ClamAV, a mnoho dalších. Toto nastavení pokrývá Apache (místo nginx), BIND a Dovecot.

1 předběžná poznámka

V tomto tutoriálu použiji název hostitele server1.example.com s IP adresou 192.168.1.100 a bránou 192.168.1.1. Tato nastavení se pro vás mohou lišit, takže je musíte v případě potřeby nahradit. Než budete pokračovat dále, musíte mít minimální instalaci Debianu 9. Může to být minimální bitová kopie Debianu od vašeho poskytovatele hostingu nebo k nastavení základního systému použijte tutoriál Minimal Debian Server.

2 Instalace serveru SSH (volitelné)

Pokud jste během instalace systému nenainstalovali server OpenSSH, můžete tak učinit nyní:

apt-get install ssh openssh-server

Od této chvíle můžete používat klienta SSH, jako je PuTTY a připojit se ze své pracovní stanice k serveru Debian 9 a postupujte podle zbývajících kroků z tohoto návodu.

3 Instalace textového editoru prostředí (volitelné)

Použijeme nano textový editor v tomto tutoriálu. Někteří uživatelé preferují klasický editor vi, proto zde nainstalujeme oba editory. Výchozí program vi se na Debianu a Ubuntu chová podivně; abychom to napravili, nainstalujeme vim-nox:

apt-get install nano vim-nox

Pokud je vi váš oblíbený editor, nahraďte nano vi v následujících příkazech pro úpravu souborů.

4 Konfigurace názvu hostitele

Název hostitele vašeho serveru by měla být subdoména jako „server1.example.com“. Nepoužívejte název domény bez části subdomény, jako je „example.com“, jako název hostitele, protože by to později způsobilo problémy s nastavením pošty. Nejprve byste měli zkontrolovat název hostitele v /etc/hosts a v případě potřeby jej změnit. Řádek by měl být:"IP adresa - mezera - celé jméno hostitele včetně domény - mezera - část subdomény". Pro náš název hostitele server1.example.com bude soubor vypadat takto:

nano /etc/hosts
127.0.0.1 localhost.localdomain localhost192.168.1.100 server1.example.com server1# Následující řádky jsou vhodné pro hostitele s podporou IPv6::1 localhost ip6-localhost ip6-loopbackff02::1 ip6-allnodesff02::2 -allrouters

Poté upravte soubor /etc/hostname:

nano /etc/hostname

Bude obsahovat pouze část subdomény, v našem případě:

server1

Nakonec restartujte server, aby se změna uplatnila:

restartovat

Znovu se přihlaste a pomocí těchto příkazů zkontrolujte, zda je název hostitele správný:

název hostitele
název hostitele -f

Výstup by měl být takto:

[e-mail chráněný]:/tmp# název hostitele
server1
[chráněný e-mailem]:/tmp# název hostitele -f
server1.example.com

5 Aktualizujte svou instalaci Debianu

Nejprve se ujistěte, že váš /etc/apt/sources.list obsahuje repozitář stretch/updates (to zajistí, že vždy dostanete nejnovější aktualizace zabezpečení), a že jsou povolena úložiště contrib a non-free, protože některé požadované balíčky nejsou v hlavním úložišti.

nano /etc/apt/sources.list
deb http://ftp.us.debian.org/debian/ roztáhnout hlavní příspěvek nesvobodný
deb-src http://ftp.us.debian.org/debian/ roztáhnout hlavní příspěvek nesvobodný zdarma

deb http://security.debian.org/debian-security stretch/updates hlavní příspěvek nesvobodný
deb-src http://security.debian.org/debian- zabezpečení roztáhnout/aktualizovat hlavní příspěvek non-free

Spustit:

aktualizace apt-get

Aktualizace databáze balíčků apt

upgrade apt-get

a nainstalovat nejnovější aktualizace (pokud nějaké existují).

6 Změna výchozího prostředí

/bin/sh je symbolický odkaz na /bin/dash, ale potřebujeme /bin/bash, ne /bin/dash. Proto děláme toto:

dpkg-reconfigure dash

Použít pomlčku jako výchozí systémové prostředí (/bin/sh)? <- ne

Pokud to neuděláte, instalace ISPConfig se nezdaří.

7 Synchronizace systémových hodin

Je vhodné synchronizovat systémové hodiny s NTP (n síť t ime p rotocol) server přes internet. Jednoduše spusťte

apt-get install ntp

a váš systémový čas bude vždy synchronizován.

8 Instalace Postfix, Dovecot, MySQL, rkhunter a Binutils

Můžeme nainstalovat Postfix, Dovecot, MySQL, rkhunter a Binutils jediným příkazem:

apt-get install postfix postfix-mysql postfix-doc mariadb-client mariadb-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d dovecot-mysql dovecot-sieve dovecot-lmtpd sudo

Pokud dáváte přednost MySQL před MariaDB, nahraďte balíčky "mariadb-client mariadb-server" ve výše uvedeném příkazu za "mysql-client mysql-server".

Budou vám položeny následující otázky:

Obecný typ konfigurace pošty:<-- Internet Site
Název systémové pošty:<-- server1.example.com

Chcete-li zabezpečit instalaci MariaDB / MySQL a deaktivovat testovací databázi, spusťte tento příkaz:

mysql_secure_installation

Odpovězte na otázky následovně:

Změnit heslo uživatele root? [A/n] <-- y
Nové heslo:<-- Zadejte nové kořenové heslo MySQL
Znovu zadejte nové heslo:<-- Opakujte kořenové heslo MySQL
Odstraňte anonymní uživatele ? [A/n] <-- y
Zakázat vzdálené přihlášení root? [A/N] <-- y
Odebrat testovací databázi a získat k ní přístup? [A/n] <-- y
Načíst nyní tabulky oprávnění? [A/n] <-- y

Dále otevřete TLS/SSL a porty pro odesílání v Postfixu:

nano /etc/postfix/master.cf

Odkomentujte sekce pro odeslání a smtps následujícím způsobem a v případě potřeby přidejte řádky, aby tato sekce souboru master.cf vypadala přesně jako ta níže.

[...]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,odmítnout
# -o smtpd_reject_unlisted_recipient=no
# -o smtpd_client_restrictions=$restrictions=$mrestrictions
# -o smtpdions=a$sre=ender=ender## -o smtpdions=a$re_s br /># -o smtpd_recipient_restrictions=
# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=PŮVODNÍ
smtps inet n - - - - sys -log - smt_p postfix/smtps
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=o smtpd_client_restrictions=tremit_sasl_authenticated,reject
#no_rebr_d =$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_r estrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=
# -o smtpd_relay_restrictions=permit_sasl_authenticated, odmítnout
# -o milter_macro_daemon_name=ORIGINAČNÍ[...]

Poté restartujte Postfix:

restart služby postfix

Chceme, aby MySQL naslouchalo na všech rozhraních, nejen na localhost. Proto upravujeme /etc/mysql/mariadb.conf.d/50-server.cnf a zakomentujeme řádek bind-address =127.0.0.1 a přidáme řádek sql-mode="NO_ENGINE_SUBSTITUTION" :

nano /etc/mysql/mariadb.conf.d/50-server.cnf
[...]# Místo přeskočení sítě je nyní výchozím nastavením poslouchat pouze na # localhost, který je více kompatibilní a není méně bezpečný.# bind-address =127.0.0.1

sql-mode="NO_ENGINE_SUBSTITUTION"

[...]

Nastavte metodu ověřování hesla v MariaDB na nativní, abychom mohli později použít PHPMyAdmin k připojení jako uživatel root:

echo "update mysql.user set plugin ='mysql_native_password' where user='root';" | mysql -u root

Upravte soubor /etc/mysql/debian.cnf a dvakrát v něm v řádcích začínajících heslem nastavte heslo uživatele MYSQL / MariaDB.

nano /etc/mysql/debian.cnf

Kořenové heslo MySQL, které je třeba přidat, je zobrazeno v read, v tomto příkladu je heslo "howtoforge".

# Automaticky generováno pro skripty Debianu. NEDOTÝKEJTE SE!
[klient]
hostitel =localhost
uživatel =root
heslo = howtoforge
socket =/var/run/mysqld/mysqld.sock
[mysql_upgrade]
hostitel =localhost
user =root
heslo = howtoforge
socket =/var/run/mysqld/mysqld.sock
basedir =/usr

Chcete-li předejít chybě „Chyba při přijímání:Příliš mnoho otevřených souborů ' nyní nastavíme vyšší limity otevřených souborů pro MariaDB.

Otevřete soubor /etc/security/limits.conf pomocí editoru:

nano /etc/security/limits.conf

a přidejte tyto řádky na konec souboru.

mysql soft nofile 65535
mysql hard nofile 65535

Dále vytvořte nový adresář /etc/systemd/system/mysql.service.d/ pomocí příkazu mkdir.

mkdir -p /etc/systemd/system/mysql.service.d/

a přidejte nový soubor dovnitř:

nano /etc/systemd/system/mysql.service.d/limits.conf

vložte do tohoto souboru následující řádky:

[Služba]
LimitNOFILE=nekonečno

Uložte soubor a zavřete nano editor.

Poté znovu načteme systemd a restartujeme MariaDB:

systemctl daemon-reload
restart služby mysql

Nyní zkontrolujte, zda je síť povolena. Spustit

netstat -tap | grep mysql

Výstup by měl vypadat takto:

[e-mail chráněný]:/home/administrator# netstat -tap | grep mysql
tcp6 0 0 [::]:mysql [::]:* POSLECHNOUT 17776/mysqld
[e-mail chráněn]:/home/administrator#

9 Nainstalovat Amavisd-new, SpamAssassin a ClamAV

Chcete-li nainstalovat amavisd-new, SpamAssassin a ClamAV, spustíme

apt-get install amavisd-new spamassassin clamav clamav-daemon zoo rozbalte bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs démon libio-biosocket-sperl perl libnet-ident-perl zip libnet-dns-perl libdbd-mysql-perl postgrey

Nastavení ISPConfig 3 používá amavisd, který interně načítá knihovnu filtrů SpamAssassin, takže můžeme zastavit SpamAssassin, abychom uvolnili RAM:

service spamassassin stop
systemctl deaktivovat spamassassin

9.1 Instalace Metronome XMPP Server (volitelné)

Tento krok nainstaluje Metronome XMPP Server, který poskytuje chatovací server, který je kompatibilní s protokolem XMPP. Tento krok je volitelný, pokud nepotřebujete chatovací server, můžete tento krok přeskočit. Na tomto softwaru nezávisí žádné další funkce ISPConfig.

Přidejte do Debianu úložiště balíčků Prosody.

echo "deb http://packages.prosody.im/debian stretch main"> /etc/apt/sources.list.d/metronome.list
wget http://prosody.im/files/ prosody-debian-packages.key -O - | sudo apt-key add -

Aktualizujte seznam balíčků:

aktualizace apt-get

a nainstalujte balíčky pomocí apt.

apt-get install git lua5.1 liblua5.1-0-dev lua-filesystem libidn11-dev libssl-dev lua-zlib lua-expat lua-event lua-bitop lua-socket lua-sec luarocks luarocks
luarocks instaluje lpc

Přidejte uživatele prostředí pro Metronome.

adduser --no-create-home --disabled-login --gecos metronom 'Metronome'

Stáhněte si Metronome do adresáře /opt a zkompilujte jej.

cd /opt; git klon https://github.com/maranda/metronome.git metronom
cd ./metronome; ./configure --ostype=debian --prefix=/usr
provést
provést instalaci

Metronome je nyní nainstalován do /opt/metronome.

10 Instalace Apache2, PHP, FCGI, suExec, Pear, phpMyAdmin a mcrypt

Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear a mcrypt lze nainstalovat následovně:

apt-get -y install apache2 apache2-doc apache2-utils libapache2-mod-php php7.0 php7.0-common php7.0-gd php7.0-mysql php7.0-imap phpmyadmin php7.0-cli php7.0-cgi libapache2-mod-fcgid apache2-suexec-pristine php-pear php7.0-mcrypt mcrypt  imagemagick libruby libapache2-mod-python php7.0-curl php7.0-intl php7.0-pspell php7.0-pspell překódovat php7.0-sqlite3 php7.0-tidy php7.0-xmlrpc php7.0-xsl memcached php-memcache php-imagick php-gettext php7.0-zip php7.0-mbstring memcached libapache php7.0passenger -mýdlo

Uvidíte následující otázky:

Automaticky překonfigurovat webový server: <- apache2
Nakonfigurovat databázi pro phpmyadmin pomocí dbconfig-common? <- yes
Zadejte heslo aplikace phpmyadmin? <-  Stačí stisknout enter

Poté spusťte následující příkaz pro povolení modulů Apache suexec, rewrite, ssl, actions a include (plus dav, dav_fs a auth_digest, pokud chcete používat WebDAV):

Akce a2enmod suexec přepis SSL zahrnují hlavičky cgi dav_fs dav auth_digest

Abychom zajistili, že server nemůže být napaden prostřednictvím zranitelnosti HTTPOXY, deaktivujeme hlavičku HTTP_PROXY v Apache globálně přidáním konfiguračního souboru /etc/apache2/conf-available/httpoxy.conf.

nano /etc/apache2/conf-available/httpoxy.conf

Do souboru vložte následující obsah:

 RequestHeader předčasně zrušil nastavení proxy

A aktivujte modul spuštěním:

a2enconf httpoxy
restart služby apache2

10.1 Instalace HHVM (HipHop Virtual Machine)

Zatím nejsou k dispozici žádné balíčky HHVM pro Debian 9. HHVM je volitelný režim PHP, takže váš server bude fungovat i bez něj, jen nemůžete použít režim PHP HHVM pro webové stránky.

10.2 SuPHP

SuPHP již není pro Debian 9 k dispozici, funkce SuPHP jsou zastaralé a budou také odstraněny z ISPConfig. Místo SuPHP použijte dostupné režimy PHP PHP-FPM nebo PHP-FCGI společně se suexec.

11 Nainstalujte Let's Encrypt

ISPConfig 3.1 má podporu pro bezplatnou certifikační autoritu SSL Let's encrypt. Funkce Let's Encrypt vám umožňuje vytvářet bezplatné certifikáty SSL pro váš web v rámci ISPConfig.

Nyní přidáme podporu pro Let's encrypt.

cd /usr/local/bin
wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto
./certbot-auto -- pouze instalace

Nejsou vyžadovány žádné další kroky než instalace LE. SSL certifikáty webových stránek vytváří ISPConfig, když přidáváte webové stránky.

12 Instalace PHP-FPM

Abychom mohli používat PHP-FPM s Apache, potřebujeme modul mod_proxy_fcgi Apache, který je standardně nainstalován a stačí jej povolit. Můžeme nainstalovat PHP-FPM a to následovně:

apt-get -y install php7.0-fpm

Ujistěte se, že jste povolili moduly a restartujte Apache:

akce a2enmod proxy_fcgi alias 
restart služby apache2

12.2 Instalace PHP Opcode Cache (volitelné)

Opcache je bezplatný PHP opcode cacher pro ukládání do mezipaměti a optimalizaci PHP přechodného kódu. APCu je modul kompatibility, který poskytuje funkce kompatibilní s APC pro Opcache, který je používán mnoha CMS cachovacími systémy. Pro urychlení vaší stránky PHP se doporučuje mít tato rozšíření PHP nainstalovaná.

APCu lze nainstalovat následovně:

apt-get -y install php7.0-opcache php-apcu

Nyní restartujte Apache:

restart služby apache2

13 Nainstalujte Mailman

ISPConfig vám umožňuje spravovat (vytvářet/upravovat/mazat) poštovní seznamy Mailman. Pokud chcete tuto funkci využívat, nainstalujte Mailman následovně:

apt-get install mailman

Vyberte alespoň jeden jazyk, např.:

Podporované jazyky: <-- en (angličtina)
Seznam chybějících webů <-- OK

Než budeme moci spustit Mailman, musí být vytvořen první mailing list s názvem mailman:

newlist mailman
[email protected]:~# newlist mailman
Zadejte e-mail osoby vedoucí seznam: <-- e-mailová adresa administrátora, např. [chráněno e-mailem]
Počáteční heslo poštovního doručovatele: <-- heslo správce pro seznam poštovních doručovatelů
Abyste dokončili vytváření seznamu adresátů, musíte upravit svůj /etc/aliasy (nebo
ekvivalentní) soubor přidání následujících řádků a případně spuštění programu 
`newaliases':

## poštovní seznam adresátů
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 potvrdit poštáře"
mailman-join:         "|/var/lib/mailman/mail/mailman připojit se k mailmanovi"
mailman- opustit:        "|/var/lib/mailman/mail/mailman opustit doručovatele"
majitel pošty:         "|/var/lib/mailman/mail/majitel pošty poštář"
požadavek poštovního doručovatele:      "| /var/lib/mailman/mail/mailman požadavek mailman"
mailman-subscribe:    "|/var/lib/mailman/mail/mailman přihlásit se k odběru mailman"
mailman-unsu bscribe:  "|/var/lib/mailman/mail/mailman odhlásit poštář"

Stisknutím tlačítka Enter upozorněte vlastníka pošty... <-- ENTER

[e-mail chráněn] :~#

Poté otevřete /etc/aliases...

nano /etc/aliases

... a přidejte následující řádky:

[...]## mailman mailing listmailman:"|/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 potvrdit mailman"mailman-join:"|/var/lib/mailman/mail /mailman join mailman"mailman-leave:"|/var/lib/mailman/mail/mailman opustit mailman"mailman-owner:"|/var/lib/mailman/mail/mailman vlastník mailman"mailman-request:"|/ var/lib/mailman/mail/mailman požadavek mailman"mailman-subscribe:"|/var/lib/mailman/mail/mailman přihlásit mailman"mailman-unsubscribe:"|/var/lib/mailman/mail/mailman unsubscribe mailman" 

Spustit:

newaliases

a restartujte Postfix:

restart služby postfix

Nakonec musíme povolit konfiguraci Mailman Apache:

ln -s /etc/mailman/apache.conf /etc/apache2/conf-enabled/mailman.conf

Toto definuje alias /cgi-bin/mailman/ pro všechny hostitele Apache, což znamená, že máte přístup k administrátorskému rozhraní Mailman pro seznam na http://server1.example.com/cgi-bin/mailman/admin/ a webovou stránku pro uživatele konference lze nalézt na adrese http://server1.example.com/cgi-bin/mailman/listinfo/.

Pod http://server1.example.com/pipermail najdete archivy konference.

Poté restartujte Apache:

restart služby apache2

Poté spusťte démona Mailman:

spuštění služby mailman

14 Instalace PureFTPd a kvóty

PureFTPd a kvótu lze nainstalovat pomocí následujícího příkazu:

apt-get install pure-ftpd-common pure-ftpd-mysql kvóta kvóty

Vytvořte soubor dhparam pro pure-ftpd:

openssl dhparam -out /etc/ssl/private/pure-ftpd-dhparams.pem 2048

Upravte soubor /etc/default/pure-ftpd-common...

nano /etc/default/pure-ftpd-common

... a ujistěte se, že je režim spuštění nastaven na samostatný a nastavte VIRTUALCHROOT=true:

[...]STANDALONE_OR_INETD=samostatný[...]VIRTUALCHROOT=pravda[...]

Nyní nakonfigurujeme PureFTPd tak, aby umožňoval FTP a TLS relace. FTP je velmi nezabezpečený protokol, protože všechna hesla a všechna data jsou přenášena jako prostý text. Pomocí TLS lze celou komunikaci šifrovat, čímž je FTP mnohem bezpečnější.

Pokud chcete povolit relace FTP a TLS, spusťte

echo 1> /etc/pure-ftpd/conf/TLS

Abychom mohli používat TLS, musíme vytvořit SSL certifikát. Vytvořím jej v /etc/ssl/private/, proto nejprve vytvořím tento adresář:

mkdir -p /etc/ssl/private/

Poté můžeme vygenerovat certifikát SSL následovně:

openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
Název země (2 písmenný kód) [AU]:<-- Zadejte název své země (např. „DE“).
Název státu nebo provincie (celý název) [Some-State]:<-- Zadejte název svého státu nebo provincie.
Název lokality (např. město) []:<-- Zadejte své město.
Název organizace (např. společnost) [Internet Widgits Pty Ltd]:<-- Zadejte název vaší organizace (např. název vaší společnosti).
Název organizační jednotky (např. sekce) []:<-- Zadejte název organizační jednotky (např. „IT oddělení“).
Běžný název (např. VAŠE jméno) []:<-- Zadejte plně kvalifikovaný název domény systému (např. „server1.example.com“).
E-mailová adresa []: <-- Zadejte svou e-mailovou adresu.

Změňte oprávnění certifikátu SSL:

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

Poté restartujte PureFTPd:

restart služby pure-ftpd-mysql

Upravit /etc/fstab. Můj vypadá takto (do oddílu s bodem připojení / jsem přidal ,usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0):

nano /etc/fstab
# /etc/fstab:informace o statickém systému souborů.
#
# Použijte 'blkid' k vytištění univerzálně jedinečného identifikátoru zařízení
#; toto lze použít s UUID=jako robustnější způsob pojmenování zařízení
#, který funguje i po přidání a odebrání disků. Viz fstab(5).
#
#
# / bylo během instalace na /dev/sda1
UUID=f539c5cb-624f-4c27-a149-1446a251a453 / ext4 errors=remount-ro,usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0 0 1 swap was on># /vde / /sda5 během instalace
UUID=8d3194e7-edb5-4492-937d-d066b4994baf žádný swap sw 0 0
/dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0

Chcete-li kvótu povolit, spusťte tyto příkazy:

mount -o remount /
quotacheck -avugm
quotaon -avug

15 Instalace serveru DNS BIND

BIND lze nainstalovat následovně:

apt-get install bind9 dnsutils

Pokud je váš server virtuální počítač, pak se důrazně doporučuje nainstalovat démona ohrady, abyste získali vyšší entropii pro podepisování DNSSEC. Můžete nainstalovat hasged i na nevirtuální servery, nemělo by to bolet.

apt-get install byla provedena

Vysvětlení k tomuto tématu naleznete zde.

16 Instalace Webalizer a AWStats

Webalizer a AWStats lze nainstalovat následovně:

apt-get install webalizer awstats geoip-database libclass-dbi-mysql-perl libtimedate-perl

Poté otevřete /etc/cron.d/awstats...

nano /etc/cron.d/awstats

... a okomentujte vše v tomto souboru:

#MAILTO=root#*/10 * * * * www-data [ -x /usr/share/awstats/tools/update.sh ] &&/usr/share/awstats/tools/update.sh# Generovat statické reporty:#10 03 * * * www-data [ -x /usr/share/awstats/tools/buildstatic.sh ] &&/usr/share/awstats/tools/buildstatic.sh

17 Instalace Jailkit

Jailkit je potřeba pouze v případě, že chcete chrootovat uživatele SSH. Lze jej nainstalovat následovně:

apt-get install build-essential autoconf automake libtool flex bison debhelper binutils
cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.20.tar.gz
tar xvfz jailkit-2.20.tar.gz
cd jailkit- 2.20
echo 5> debian/compat
./debian/rules binární

Nyní můžete nainstalovat balíček Jailkit .deb následovně:

cd ..
dpkg -i jailkit_2.20-1_*.deb
rm -rf jailkit-2.20*

18 Instalace fail2ban a UFW Firewall

Toto je volitelné, ale doporučené, protože monitor ISPConfig se snaží zobrazit protokol:

apt-get install fail2ban

Chcete-li, aby fail2ban monitoroval PureFTPd a Dovecot, vytvořte soubor /etc/fail2ban/jail.local:

nano /etc/fail2ban/jail.local

A přidejte k němu následující konfiguraci.

[pure-ftpd]
povoleno =true
port =ftp
filtr =pure-ftpd
logpath =/var/log/syslog
maxretry =3

[holubník]
povoleno =true
filtr =holubník
cesta protokolu =/var/log/mail.log
maxretry =5

[postfix-sasl]
povoleno =true
port =smtp
filtr =postfix-sasl
cesta protokolu =/var/log/mail.log
maxretry =3

Poté restartujte fail2ban:

restart služby fail2ban

Chcete-li nainstalovat bránu firewall UFW, spusťte tento příkaz apt:

apt-get install ufw

19 Instalace RoundCube

Nainstalujte RoundCube pomocí tohoto příkazu:

apt-get install roundcube roundcube-core roundcube-mysql roundcube-plugins

Instalační program se zeptá na následující otázky:

Konfigurovat databázi pro roundcube pomocí dbconfig.common? <-- yes
Heslo aplikace MySQL pro roundcube:<-- stiskněte enter
Heslo administrátora databází:<-- zde zadejte heslo root MySQL.

Poté upravte soubor RoundCube /etc/roundcube/config.inc.php a upravte několik nastavení:

nano /etc/roundcube/config.inc.php

Nastavte default_host a smtp_server na localhost.

$config['default_host'] ='localhost';
$config['smtp_server'] ='localhost';

Poté upravte konfigurační soubor Apache roundcube /etc/apache2/conf-enabled/roundcube.conf:

nano /etc/apache2/conf-enabled/roundcube.conf

A přidejte řádek aliasu pro alias apache /webmail, řádek můžete přidat hned na začátek souboru. POZNÁMKA:Nepoužívejte /mail jako alias, jinak e-mailový modul ispconfig přestane fungovat!

Alias ​​/webmail /var/lib/roundcube

Poté znovu načtěte Apache:

obnovení služby apache2

Nyní máte k RoundCube přístup následovně:

http://192.168.1.100/webmail
http://www.example.com/webmail
http://server1.example.com:8080/webmail (po instalaci ISPConfig se podívejte na další kapitola)

 

20 Stáhnout ISPConfig 3

Chcete-li nainstalovat ISPConfig 3 z nejnovější vydané verze, postupujte takto:

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

Pokud si chcete vyzkoušet předběžnou verzi nadcházející verze 3.1, stáhněte si ji pomocí tohoto příkazu:

cd /tmp
wget -O ISPConfig-3.1-dev.tar.gz  https://git.ispconfig.org/ispconfig/ispconfig3/repository/archive.tar.gz?ref=stable-3.1
tar xfz ISPConfig-3.1-dev.tar.gz
cd ispconfig3-stable-3.1*
cd install

21 Nainstalujte ISPConfig

Dalším krokem je spuštění instalačního programu ISPConfig.

php -q install.php

Tím se spustí instalační program ISPConfig 3. Instalační program nakonfiguruje všechny služby jako Postfix, Dovecot atd. za vás. Ruční nastavení požadované pro ISPConfig 2 (dokonalé průvodce nastavením) není nutné.

# php -q install.php

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

>> Počáteční konfigurace
Operační systém:Debian 9.0 (Stretch) nebo kompatibilní
Následovat bude několik otázek pro primární konfiguraci, takže buďte opatrní.
Výchozí hodnoty jsou v [závorkách] a lze je přijmout pomocí .
Klepněte na "quit" (bez uvozovek) k zastavení instalačního programu.

Vyberte jazyk (en,de) [en]:<-- Stiskněte Enter
Režim instalace (standardní, expertní) [standardní]: <-- Stiskněte Enter
Úplný název hostitele (FQDN) serveru, např. server1.domain.tld [server1.canomi.com]: <-- Stiskněte Enter
Název hostitele serveru MySQL [localhost]: <-- Stiskněte Enter
Port serveru MySQL [3306]: <-- Stiskněte Enter
Uživatelské jméno MySQL root [root]: <-- Stiskněte Enter
Heslo kořenového adresáře MySQL []: <-- Zadejte své kořenové heslo MySQL
Vytvoření databáze MySQL [dbispconfig]: <-- Stiskněte Enter
Znaková sada MySQL [utf8]: <-- Stiskněte Enter
Konfigurace Postgrey
Konfigurace Postfixu
Generování 4096bitového soukromého klíče RSA
........................ ...................................................++
................................................ ................................................................... .......................................++
zápis nového soukromého klíče do 'smtpd.key'
-----
Budete požádáni o zadání informací, které budou začleněny
do vaší žádosti o certifikát.
Co se chystáte zadat je to, co se nazývá rozlišovací jméno nebo DN.
Je zde poměrně dost polí, ale některá můžete nechat prázdná
Některá pole budou mít výchozí hodnotu,
Pokud zadáte '. ', pole zůstane prázdné.
-----
Název země (dvoumístný kód) [AU]:<-- Zadejte dvoumístný kód země
Název státu nebo provincie ( celé jméno) [Některý stát]:<-- Zadejte název  státu
Název lokality (např. město) []:<-- Zadejte své město
Název organizace (např. společnost) [ Int ernet Widgits Pty Ltd]:<-- Zadejte název společnosti nebo stiskněte enter
Název organizační jednotky (např. sekce) []: <-- Stiskněte Enter
Běžný název (např. FQDN serveru nebo VAŠE jméno) []:<-- Zadejte název hostitele serveru, v mém případě:server1.example.com
E-mailová adresa []: <-- Stiskněte Enter
Konfigurace Mailmana
Konfigurace Dovecot
Konfigurace Spamassassin
Konfigurace Amavisd
Konfigurace Getmail
Konfigurace BIND
Konfigurace Jailkit
Konfigurace Pureftpd
Konfigurace Apache
Konfigurace vloggeru
Konfigurace Metronome XMPP Server
zápis nového soukromého klíče do 'localhost.key'
-----
Název země (2 písmenný kód) [AU]: <-- Enter 2písmenný kód země
Název lokality (např. město) []: <-- Zadejte své město
Název organizace (např. společnost) [Internet Widgits Pty Ltd]: <-- Zadejte název společnosti nebo stiskněte zadejte
Název organizační jednotky (např. sekce) []: <-- Stiskněte Enter
Běžný název (např. FQDN serveru nebo VAŠE jméno) [server1.canomi.com]: <-- Zadejte název hostitele serveru , v mém případě:server1.example.com
E-mailová adresa []: <-- Stiskněte Enter
Konfigurace brány Ubuntu Firewall
Konfigurace Fail2ban
Služba [INFO] OpenVZ nebyla zjištěna
Konfigurace aplikací vhost
Instalace ISPConfig
Port ISPConfig [8080]:
Heslo správce [admin]:
Chcete zabezpečené (SSL) připojení k webovému rozhraní ISPConfig (y,n) [y]: <-- Stiskněte Enter
Generování soukromého klíče RSA, modul dlouhý 4096 bit
.......................++
..... ................................................................... ................................................................... .......................++
e je 65537 (0x10001)
Budete požádáni o zadání informací, které budou být začleněno
do vaší žádosti o certifikát.
To, co se chystáte zadat, se nazývá rozlišovací jméno nebo DN.
Je zde poměrně dost polí, ale některá můžete nechat prázdná
U některých polí bude výchozí hodnota,
Pokud zadáte '.', pole zůstane prázdné.
-----
Název země (2 písmenný kód) [AU]: <-- Zadejte dvoupísmenný kód země
Název státu nebo provincie (celý název) [Některý stát]: <-- Zadejte název státu
Název lokality (např. město) []: <-- Zadejte své město
Název organizace (např. společnost) [Internet Widgits Pty Ltd]: <-- Zadejte název společnosti nebo stiskněte enter
Název organizační jednotky (např. sekce) [] : <-- Stiskněte Enter
Obvyklý název (např. server FQDN nebo VAŠE jméno) []: <-- Zadejte název hostitele serveru, v mém případě:server1.example.com
E-mailová adresa []: <-- Stiskněte Enter
Zadejte prosím následující 'extra' atributy
které mají být zaslány s vaší žádostí o certifikát
Heslo výzvy []: <-- Stiskněte Enter
Volitelný název společnosti []: <- - Stiskněte Enter
zapisování klíče RSA

Konfigurace DBServer
Instalace ISPConfig crontab
žádný crontab pro root
žádný crontab pro getmail
Zjištění IP adres
Restartování služeb ...
Instalace dokončena.

Instalační program automaticky nakonfiguruje všechny základní služby, takže není potřeba žádná ruční konfigurace.

Poté můžete přistupovat k ISPConfig 3 pod http(s)://server1.example.com:8080/ nebo http(s)://192.168.1.100:8080/ (http nebo https závisí na tom, co jste zvolili během instalace). Přihlaste se pomocí uživatelského jména admin a hesla admin (po prvním přihlášení byste měli změnit výchozí heslo):

Systém je nyní připraven k použití.

21.1 ISPConfig 3 příručka

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ů.

22 dalších poznámek

22.1 OpenVZ

Pokud je server Debian, který jste právě nastavili v tomto tutoriálu, kontejner OpenVZ (virtuální stroj), měli byste to udělat na hostitelském systému (předpokládám, že ID kontejneru OpenVZ je 101 – nahraďte jej správné VPSID ve vašem systému):

VPSID=101
pro CAP v CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE CHOWN DAC_READ_SEARCH SETGID SETGID SETGID ID NET_BIND_SERVICE NET_ADMIN_SYS IDCAP ${ /schopnost /V SYS>} na --save
hotovo

22.2 Stažení bitové kopie virtuálního počítače tohoto tutoriálu

Tento tutoriál je k dispozici jako obraz virtuálního stroje připravený k použití ve formátu ovf/ova, který je kompatibilní s VMWare a Virtualbox. Obraz virtuálního počítače používá následující přihlašovací údaje:

Přihlášení SSH / Shell

Uživatelské jméno:správce
Heslo:howtoforge

Uživatelské jméno: root
Heslo:howtoforge

Přihlášení ISPConfig

Uživatelské jméno:admin
Heslo: admin

Přihlášení k MySQL

Uživatelské jméno:root
Heslo:howtoforge

IP VM je 192.168.1.100, lze ji změnit v souboru /etc/network/interfaces. Pro zabezpečení virtuálního počítače změňte všechna výše uvedená hesla.

  • Debian:http://www.debian.org/
  • ISPConfig:http://www.ispconfig.org/

Debian
  1. The Perfect Server – Ubuntu 15.04 (Vivid Vervet) s Apache, PHP, MySQL, PureFTPD, BIND, Postfix, Dovecot a ISPConfig 3

  2. The Perfect Server - Ubuntu 15.10 (Wily Werewolf) s Apache, PHP, MySQL, PureFTPD, BIND, Postfix, Dovecot a ISPConfig 3

  3. The Perfect Server - Ubuntu 16.10 (Yakkety Yak) s Apache, PHP, MySQL, PureFTPD, BIND, Postfix, Dovecot a ISPConfig 3.1

  1. The Perfect Server CentOS 7.2 s Apache, Postfix, Dovecot, Pure-FTPD, BIND a ISPConfig 3.1

  2. The Perfect Server - Ubuntu 17.04 (Zesty Zapus) s Apache, PHP, MySQL, PureFTPD, BIND, Postfix, Dovecot a ISPConfig 3.1

  3. The Perfect Server - Ubuntu 17.10 (Artful Aardvark) s Apache, PHP, MySQL, PureFTPD, BIND, Postfix, Dovecot a ISPConfig 3.1

  1. The Perfect Server CentOS 7.3 s Apache, Postfix, Dovecot, Pure-FTPD, BIND a ISPConfig 3.1

  2. The Perfect Server CentOS 7.4 s Apache, Postfix, Dovecot, Pure-FTPD, BIND a ISPConfig 3.1

  3. The Perfect Server CentOS 7.6 s Apache, PHP 7.2, Postfix, Dovecot, Pure-FTPD, BIND a ISPConfig 3.1