GNU/Linux >> Znalost Linux >  >> Panels >> Panels

The Perfect Server – Ubuntu 11.10 s Nginx [ISPConfig 3]

Dokonalý server – Ubuntu 11.10 s Nginx [ISPConfig 3]

Tento tutoriál ukazuje, jak připravit server Ubuntu 11.10 (Oneiric Ocelot) s nginx pro instalaci ISPConfig 3 a jak nainstalovat ISPConfig 3. Od verze 3.0.4 přichází ISPConfig s plnou podporou pro webový server nginx kromě Apache a tento tutoriál popisuje nastavení serveru, který používá nginx místo Apache. ISPConfig 3 je webhostingový ovládací panel, který vám umožňuje konfigurovat následující služby prostřednictvím webového prohlížeče:webový server nginx a Apache, poštovní server Postfix, jmenný server MySQL, BIND nebo MyDNS, PureFTPd, SpamAssassin, ClamAV a mnoho dalších.

Pokud chcete používat nginx místo Apache s ISPConfig, mějte na paměti, že vaše verze nginx musí být alespoň 0.8.21 a musíte nainstalovat také PHP-FPM. Pro podporu CGI/Perl musíte použít fcgiwrap. To vše pokrývá tento tutoriál.

Vezměte prosím na vědomí, že tento tutoriál nemůžete použít pro Debian Squeeze, protože Squeeze je dodáván se starší verzí nginx (0.7.67.) a nemá balíček PHP-FPM!

Upozorňujeme, že toto nastavení nefunguje pro ISPConfig 2 ! Platí pouze pro ISPConfig 3!

Neposkytuji žádnou záruku, že to pro vás bude fungovat!

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 zhruba 300 straná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ů.

Aplikace ISPConfig Monitor pro Android

Pomocí aplikace ISPConfig Monitor App můžete zkontrolovat stav svého serveru a zjistit, zda všechny služby běží podle očekávání. Můžete zkontrolovat TCP a UDP porty a pingnout vaše servery. Kromě toho můžete tuto aplikaci použít k vyžádání podrobností od serverů, které mají nainstalovaný ISPConfig (Upozorňujeme, že minimální nainstalovaná verze ISPConfig 3 s podporou aplikace ISPConfig Monitor je 3.0.3.3! ); tyto podrobnosti zahrnují vše, co znáte z modulu Monitor v ovládacím panelu ISPConfig (např. služby, protokoly pošty a systému, fronta pošty, informace o CPU a paměti, využití disku, kvóty, podrobnosti o operačním systému, protokol RKHunter atd.) a samozřejmě , protože ISPConfig podporuje více serverů, můžete zkontrolovat všechny servery, které jsou řízeny z vašeho hlavního serveru ISPConfig.

Pokyny ke stažení a použití naleznete na adrese http://www.ispconfig.org/ispconfig-3/ispconfig-monitor-app-for-android/.

1 požadavky

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

  • server CD Ubuntu 11.10, dostupný zde:http://releases.ubuntu.com/releases/11.10/ubuntu-11.10-server-i386.iso (i386) nebo http://releases.ubuntu.com/releases /11.10/ubuntu-11.10-server-amd64.iso (x86_64)
  • rychlé připojení k internetu.

2 Předběžná poznámka

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

3 Základní systém

Vložte instalační CD Ubuntu do systému a spusťte z něj. Vyberte svůj jazyk:

Poté vyberte Install Ubuntu Server:

Znovu vyberte svůj jazyk (?):

Poté vyberte své umístění:

Pokud jste vybrali neobvyklou kombinaci jazyka a umístění (např. angličtina jako jazyk a Německo jako umístění, jako v mém případě), může vám instalační program sdělit, že pro tuto kombinaci není definováno žádné národní prostředí; v tomto případě musíte národní prostředí vybrat ručně. Zde vybírám en_US.UTF-8:

Vyberte rozložení klávesnice (budete požádáni, abyste stiskli několik kláves a instalační program se pokusí zjistit rozložení klávesnice na základě kláves, které jste stiskli):

Instalační program zkontroluje instalační CD, váš hardware a nakonfiguruje síť pomocí DHCP, pokud je v síti DHCP server:

Dokonalý server – Ubuntu 11.10 s Nginx [ISPConfig 3] – Strana 2

4 Získat oprávnění uživatele root

Po restartu se můžete přihlásit pomocí dříve vytvořeného uživatelského jména (např. Protože musíme všechny kroky z tohoto tutoriálu spustit s právy root, můžeme buď před všechny příkazy v tomto tutoriálu přidat řetězec sudo, nebo se staneme rootem hned teď zadáním

sudo su 

(Přihlášení uživatele root můžete také povolit spuštěním

sudo passwd root

a dát rootovi heslo. Poté se můžete přímo přihlásit jako root, ale vývojáři a komunita Ubuntu to z různých důvodů odsuzují. Viz http://ubuntuforums.org/showthread.php?t=765414.)

5 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 Ubuntu 11.10 a postupujte podle zbývajících kroků z tohoto návodu.

6 Instalace vim-nox (volitelné)

V tomto tutoriálu použiji vi jako svůj textový editor. Výchozí program vi má na Ubuntu a Debianu nějaké podivné chování; abychom to napravili, nainstalujeme vim-nox:

apt-get install vim-nox

(Nemusíte to dělat, pokud používáte jiný textový editor, jako je joe nebo nano.)

7 Konfigurace sítě

Protože instalační program Ubuntu nakonfiguroval náš systém tak, aby získal nastavení sítě přes DHCP, musíme to nyní změnit, protože server by měl mít statickou IP adresu. Upravte /etc/network/interfaces a upravte jej podle svých potřeb (v tomto příkladu nastavení použiji IP adresu 192.168.0.100 ):

vi /etc/network/interfaces
# Tento soubor popisuje síťová rozhraní dostupná ve vašem systému# a jak je aktivovat. Další informace viz interfaces(5).# Síťové rozhraní zpětné smyčkyauto loiface lo inet loopback# Primární síťové rozhraníauto eth0iface eth0 inet statická adresa 192.168.0.100 maska ​​sítě 255.255.255.0 síť 192.168.0.0 620815 brána.80815.2. před> 

Poté restartujte síť:

/etc/init.d/networking restart

Poté upravte /etc/hosts. Ať to vypadá takto:

vi /etc/hosts
127.0.0.1 localhost.localdomain localhost192.168.0.100 server1.example.com server1# Následující řádky jsou vhodné pro hostitele s podporou IPv6::1 ip6 -localhost ip6-loopbackfe00::0 ip6-localnetff00::0 ip6-mcastprefixff02::1 ip6-allnodesff02::2 ip6-allrouters

Nyní spusťte

echo server1.example.com> /etc/hostname
/etc/init.d/hostname restart

Poté spusťte

hostname
hostname -f

Oba by nyní měly zobrazovat server1.example.com.

8 Upravte /etc/apt/sources.list a aktualizujte svou instalaci Linuxu

Upravte /etc/apt/sources.list. Zakomentujte nebo odeberte instalační CD ze souboru a ujistěte se, že jsou povolena úložiště vesmíru a multiverse. Mělo by to vypadat takto:

vi /etc/apt/sources.list
## deb cdrom:[Ubuntu-Server 11.10 _Oneiric Ocelot_ – vydání amd64 (20111011)]/ dists/oneiric/main/binary-i386/# deb cdrom:[Ubuntu-Server 11.10 _Oneiric Ocelot_ - Release amd64 (20111011)]/ dists/oneiric/restricted/binary-i386/# deb cdrom:[Ubuntu-Server 11.10 _Oneiric Release one-14 Ocelot_1211016] #deb cdrom:[Ubuntu-Server 11.10 _Oneiric Ocelot_ - vydání amd64 (20111011)]/ dists/oneiric/main/binary-i386/#deb cdrom:[Ubuntu-Server 11.10 _Oneiric a12016] dists/oneiric amdot11_dists/oneiric/main/binary-i386/#deb cdrom:[Ubuntu-Server 11.10 _Oneiric a12016] oneiric/restricted/binary-i386/#deb cdrom:[Ubuntu-Server 11.10 _Oneiric Ocelot_ - Release amd64 (20111011)]/ oneiric main limited# Jak upgradovat na http://help.ubuntu.com/community/UpgradeNotes # novější verze distribuce.deb http://de.archive.ubuntu.com/ubuntu/ oneiric main limiteddeb-src http://de.archive.ubuntu.com/ubuntu/ oneiric main limited## Aktualizace hlavních oprav chyb vyrobené po konečném vydání ## d istribution.deb http://de.archive.ubuntu.com/ubuntu/ oneiric-updates hlavní omezenédeb-src http://de.archive.ubuntu.com/ubuntu/ oneiric-updates hlavní omezené## N.B. software z tohoto úložiště je ZCELA NEPODPOROVÁN týmem Ubuntu##. Vezměte prosím na vědomí, že software ve vesmíru NEOBDRŽÍ žádnou## recenzi ani aktualizace od bezpečnostního týmu Ubuntu.deb http://de.archive.ubuntu.com/ubuntu/ oneiric universedeb-src http://de.archive. ubuntu.com/ubuntu/ oneiric universedeb http://de.archive.ubuntu.com/ubuntu/ oneiric-updates universedeb-src http://de.archive.ubuntu.com/ubuntu/ oneiric-updates universe## N.B. software z tohoto úložiště je ZCELA NEPODPOROVÁN týmem Ubuntu## a nemusí být pod bezplatnou licencí. Ujistěte se prosím, že ## svá práva k používání softwaru. Vezměte prosím na vědomí, že software v## multiverse NEBUDE dostávat žádnou recenzi ani aktualizace od týmu zabezpečení Ubuntu##.deb http://de.archive.ubuntu.com/ubuntu/ oneiric multiversedeb-src http://de. archive.ubuntu.com/ubuntu/ oneiric multiversedeb http://de.archive.ubuntu.com/ubuntu/ oneiric-updates multiversedeb-src http://de.archive.ubuntu.com/ubuntu/ oneiric-updates multiverse## N.B. software z tohoto úložiště nemusel být důkladně testován## jako software obsažený v hlavním vydání, ačkoli obsahuje## novější verze některých aplikací, které mohou poskytovat užitečné funkce.## Také si prosím uvědomte, že software v backportech NEBUDE jakákoli recenze## nebo aktualizace od týmu zabezpečení Ubuntu.deb http://de.archive.ubuntu.com/ubuntu/ oneiric-backports hlavní omezený vesmír multiversedeb-src http://de.archive.ubuntu.com/ubuntu/ oneiric-backports hlavní omezený vesmír multiversedeb http://security.ubuntu.com/ubuntu oneiric-security hlavní omezenýdeb-src http://security.ubuntu.com/ubuntu oneiric-security hlavní omezenýdeb http://security.ubuntu.com /ubuntu oneiric-security universedeb-src http://security.ubuntu.com/ubuntu oneiric-security universedeb http://security.ubuntu.com/ubuntu oneiric-security multiversedeb-src http://security.ubuntu.com/ ubuntu oneiric-security multiverse## Odkomentujte následující dva řádky a přidejte software z ## 'části Canonical ner' repository.## Tento software není součástí Ubuntu, ale je nabízen společností Canonical a## příslušnými prodejci jako službu uživatelům Ubuntu.# deb http://archive.canonical.com/ubuntu oneiric partner# deb- src http://archive.canonical.com/ubuntu oneiric partner## Odkomentujte následující dva řádky a přidejte software z úložiště## 'extras' Ubuntu.## Tento software není součástí Ubuntu, ale je nabízen třetí stranou ## vývojáři, kteří chtějí dodávat svůj nejnovější software.# deb http://extras.ubuntu.com/ubuntu oneiric main# deb-src http://extras.ubuntu.com/ubuntu oneiric main

Potom spusťte

aktualizace apt-get

pro aktualizaci databáze balíčků apt a

upgrade apt-get

k instalaci nejnovějších aktualizací (pokud nějaké existují). Pokud uvidíte, že se v rámci aktualizací nainstaluje nové jádro, měli byste poté restartovat systém:

restartovat 

9 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ří.

10 Deaktivace AppArmor

AppArmor je bezpečnostní rozšíření (podobně jako SELinux), 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ůsobí 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 AppArmor). Proto jsem to zakázal (to je nutnost, pokud chcete ISPConfig nainstalovat později).

Můžeme to zakázat takto:

/etc/init.d/apparmor stop
update-rc.d -f apparmor remove
apt-get remove apparmor apparmor-utils

11 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 ntpdate

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

Dokonalý server – Ubuntu 11.10 s Nginx [ISPConfig 3] – Strana 4

12 Instalace Postfix, Courier, Saslauthd, MySQL, rkhunter, binutils

Můžeme nainstalovat Postfix, Courier, Saslauthd, MySQL, rkhunter a binutils jediným příkazem:

apt-get install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-authlib-mysql courier-pop courier-pop-ssl courier-imap courier-imap-modulssl2 libsasl2- libsasl2-modules-sql sasl2-bin libpam-mysql openssl getmail4 rkhunter binutils maildrop

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

Nové heslo pro uživatele "root" MySQL:<-- yourrootsqlpassword
Opakujte heslo pro uživatele "root" MySQL:<-- yourrootsqlpassword
Vytvořit adresáře pro webovou administraci? <-- Ne
Obecný typ konfigurace pošty:<-- Internetová stránka
Název systémové pošty:<-- server1.example.com
Vyžadován certifikát SSL <-- OK

Pokud zjistíte (později poté, co jste nakonfigurovali svůj první e-mailový účet v ISPConfig), že nemůžete odesílat e-maily a zobrazí se následující chyba v /var/log/mail.log...

 Ověření SASL LOGIN selhalo:není dostupný žádný mechanismus 

... přejděte na Ubuntu 11.10 + saslauthd:Ověření SASL PLAIN selhalo:není k dispozici žádný mechanismus, jak problém vyřešit.

Chceme, aby MySQL naslouchalo na všech rozhraních, nejen na localhost, proto upravíme /etc/mysql/my.cnf a zakomentujeme řádek bind-address =127.0.0.1:

vi /etc/mysql/my.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[...]

Poté restartujeme MySQL:

/etc/init.d/mysql restart

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

netstat -tap | grep mysql

Výstup by měl vypadat takto:

[email protected]:~# netstat -tap | grep mysql
tcp         0       0 *:mysql                  *:*                       PŘEHLÉDNUTÍ           PŘEHLÉDNUTÍ           PLECH.         22355 / můj sql

Během instalace se vytvoří certifikáty SSL pro IMAP-SSL a POP3-SSL s názvem hostitele localhost. Chcete-li toto změnit na správný název hostitele (server1.example.com v tomto návodu), odstraňte certifikáty...

cd /etc/courier
rm -f /etc/courier/imapd.pem
rm -f /etc/courier/pop3d.pem

... a upravit následující dva soubory; nahraďte CN=localhost za CN=server1.example.com (v případě potřeby můžete upravit i ostatní hodnoty):

vi /etc/courier/imapd.cnf
[...]CN=server1.example.com[...]
vi /etc/courier/pop3d.cnf
[...]CN=server1.example.com[...]

Poté znovu vytvořte certifikáty...

mkimapdcert
mkpop3dcert

... a restartujte Courier-IMAP-SSL a Courier-POP3-SSL:

/etc/init.d/courier-imap-ssl restart
/etc/init.d/courier-pop-ssl restart

13 Instalace 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

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

/etc/init.d/spamassassin stop
update-rc.d -f spamassassin odstranit

14 Instalace Nginx, PHP5 (PHP-FPM) a Fcgiwrap

Nginx je k dispozici jako balíček pro Ubuntu, který můžeme nainstalovat následovně:

apt-get install nginx

Pokud je již Apache2 v systému nainstalován, zastavte jej nyní...

/etc/init.d/apache2 stop

... a odstraňte odkazy pro spuštění systému Apache:

insserv -r apache2

Poté spusťte nginx:

/etc/init.d/nginx start

(Pokud jsou nainstalovány Apache2 i nginx, instalační program ISPConfig 3 se vás zeptá, který z nich chcete použít - v tomto případě odpovězte nginx. Pokud je nainstalována pouze jedna z nich, ISPConfig provede potřebnou konfiguraci automaticky.)

Můžeme zajistit fungování PHP5 v nginx pomocí PHP-FPM (PHP-FPM (FastCGI Process Manager) je alternativní implementace PHP FastCGI s některými dalšími funkcemi užitečnými pro weby jakékoli velikosti, zejména rušnější weby), které nainstalujeme následovně:

apt-get install php5-fpm 

PHP-FPM je proces démona (se skriptem init /etc/init.d/php5-fpm), který spouští server FastCGI na portu 9000.

Abychom získali podporu MySQL v PHP, můžeme nainstalovat balíček php5-mysql. Je dobré nainstalovat některé další moduly PHP5, stejně jako je můžete potřebovat pro své aplikace. Dostupné moduly PHP5 můžete vyhledat takto:

apt-cache search php5

Vyberte ty, které potřebujete, a nainstalujte je takto:

apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-snmp -sqlite php5-tidy php5-xmlrpc php5-xsl

APC je bezplatný a otevřený PHP opcode cacher pro ukládání do mezipaměti a optimalizaci PHP přechodného kódu. Je to podobné jako u jiných cacherů PHP operačních kódů, jako jsou eAccelerator a XCache. Důrazně se doporučuje mít jeden z nich nainstalovaný, aby se urychlila vaše stránka PHP.

APC lze nainstalovat následovně:

apt-get install php-apc

Nyní restartujte PHP-FPM:

/etc/init.d/php5-fpm restart

Chcete-li získat podporu CGI v nginx, nainstalujeme Fcgiwrap.

Fcgiwrap je CGI wrapper, který by měl fungovat i pro složité CGI skripty a lze jej použít pro sdílená hostitelská prostředí, protože umožňuje každému vhostu používat svůj vlastní adresář cgi-bin.

Nainstalujte balíček fcgiwrap:

apt-get install fcgiwrap 

Po instalaci by již měl být spuštěn démon fcgiwrap; jeho socket je /var/run/fcgiwrap.socket. Pokud neběží, můžete jej spustit pomocí skriptu /etc/init.d/fcgiwrap.

A je to! Když nyní vytvoříte nginx vhost, ISPConfig se postará o správnou konfiguraci vhost.

14.1 Instalace phpMyAdmin

Nainstalujte phpMyAdmin následovně:

apt-get install phpmyadmin

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

Webový server se překonfiguruje automaticky:<-- vyberte žádné (protože jako možnosti jsou dostupné pouze apache2 a lighttpd)
Nakonfigurovat databázi pro phpmyadmin pomocí dbconfig-common? <-- Ne

Nyní můžete najít phpMyAdmin v adresáři /usr/share/phpmyadmin/.

Po instalaci ISPConfig 3 můžete přistupovat k phpMyAdmin následovně:

Aplikace ISPConfig vhost na portu 8081 pro nginx jsou dodávány s konfigurací phpMyAdmin, takže pro přístup k phpMyAdmin můžete použít http://server1.example.com:8081/phpmyadmin nebo http://server1.example.com:8081/phpMyAdmin.

Pokud chcete použít alias /phpmyadmin nebo /phpMyAdmin, který můžete použít ze svých webových stránek, je to o něco složitější než pro Apache, protože nginx nemá globální aliasy (tj. aliasy, které lze definovat pro všechny vhosty). Proto musíte definovat tyto aliasy pro každý vhost, ze kterého chcete přistupovat k phpMyAdmin.

Chcete-li to provést, vložte následující do pole Direktivy nginx na kartě Možnosti na webu v ISPConfig:

 umístění /phpmyadmin { root /usr/share/; index index.php index.html index.htm; umístění ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; zahrnout /etc/nginx/fastcgi_params; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } umístění ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } umístění /phpMyAdmin { přepsat ^/* /phpmyadmin poslední; }

Pokud používáte https místo http pro váš vhost byste měli přidat řádek fastcgi_param HTTPS on; do vaší konfigurace phpMyAdmin takto:

 umístění /phpmyadmin { root /usr/share/; index index.php index.html index.htm; umístění ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS zapnuto; # <-- přidejte tento řádek fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; zahrnout /etc/nginx/fastcgi_params; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } umístění ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } umístění /phpMyAdmin { přepsat ^/* /phpmyadmin poslední; }

Pokud pro svůj vhost používáte http i https, musíte do sekce http {} v /etc/nginx/nginx.conf přidat následující sekci (před začleněním řádků), která určuje, zda návštěvník používá http nebo https a nastavuje proměnná $fastcgi_https (kterou použijeme v naší konfiguraci phpMyAdmin):

vi /etc/nginx/nginx.conf
[...]http {[...] ## Detekce použití HTTPS map $scheme $fastcgi_https { default off; https na; [...]}[...]

Poté nezapomeňte znovu načíst nginx:

/etc/init.d/nginx znovu načíst 

Poté znovu přejděte do pole Direktivy nginx a místo fastcgi_param HTTPS zapněte; přidáte řádek fastcgi_param HTTPS $fastcgi_https; abyste mohli používat phpMyAdmin pro požadavky http i https:

 umístění /phpmyadmin { root /usr/share/; index index.php index.html index.htm; umístění ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS $fastcgi_https; # <-- přidejte tento řádek fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; zahrnout /etc/nginx/fastcgi_params; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } umístění ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } umístění /phpMyAdmin { přepsat ^/* /phpmyadmin poslední; }

15 Nainstalujte Mailman

Od verze 3.0.4 vám ISPConfig také umožňuje spravovat (vytvářet/upravovat/mazat) Mailman mailing listy. Pokud chcete tuto funkci využívat, nainstalujte Mailman následovně:

apt-get install mailman

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ř. [email protected]
Počáteční heslo poštovního doručovatele: <-- heslo správce pro seznam poštovních doručovatelů
Chcete-li dokončit vytváření seznamu adresátů, musíte upravit svůj /etc/aliases (nebo
ekvivalentní) soubor přidáním následujících řádků a případně spuštěním programu
`newaliases':

## mailman mailing list
mailman:              "|/var/lib/mailman/mail/mailman post mailman"
mailman-admin:        "|/var/lib/mailman/mail/mailman admin mailman"
mailman-bounces:      "|/var/lib/mailman/mail/mailman odskočí poštář"
mailman-confirm:      "|/var/lib/mailman/mail/mailman potvrdit mailmana"
mailman-join:          "|/var/lib/mailman/mail/mailman připojit se k mailmanovi"
mailman -leave:         "|/var/lib/mailman/mail/mailman opustit pošťáka"
majitel poštovního doručovatele:        "|/var/lib/mailman/mail/majitel poštovního doručovatele 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ášení k odběru mailman"
mailma n-unsubscribe:  "|/var/lib/mailman/mail/mailman unsubscribe mailman"

Stisknutím tlačítka Enter oznámíte vlastníkovi mailmana ... <-- ENTER

example@ unixlinux.online:~#

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

vi /etc/aliases

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

[...]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 mailman"mailman- připojit se:"|/var/lib/mailman/mail/mailman připojit se k mailmanovi"mailman-leave:"|/var/lib/mailman/mail/mailman odejít mailman"mailman-owner:"|/var/lib/mailman/mail /vlastník mailman mailman"mailman-request:"|/var/lib/mailman/mail/mailman request mailman"mailman-subscribe:"|/var/lib/mailman/mail/mailman přihlásit mailman"mailman-unsubscribe:"|/ var/lib/mailman/mail/mailman odhlásit mailman"

Spustit

newaliases

poté a restartujte Postfix:

/etc/init.d/postfix restart

Poté spusťte démona Mailman:

/etc/init.d/mailman start

Po instalaci ISPConfig 3 můžete přistupovat k Mailman následovně:

Aplikace ISPConfig vhost na portu 8081 pro nginx jsou dodávány s konfigurací Mailman, takže můžete použít http://server1.example.com:8081/cgi-bin/mailman/admin/ nebo http://server1.example .com:8081/cgi-bin/mailman/listinfo/ pro přístup k Mailman.

Pokud chcete používat Mailman ze svých webových stránek, je to o něco složitější než pro Apache, protože nginx nemá globální aliasy (tj. aliasy, které lze definovat pro všechny vhosty). Proto musíte definovat tyto aliasy pro každý vhost, ze kterého chcete přistupovat k Mailman.

Chcete-li to provést, vložte následující do pole Direktivy nginx na kartě Možnosti na webu v ISPConfig:

 umístění /cgi-bin/mailman { root /usr/lib/; fastcgi_split_path_info (^/cgi-bin/mailman/[^/]*)(.*)$; zahrnout /etc/nginx/fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; fastcgi_intercept_errors on; fastcgi_pass unix:/var/run/fcgiwrap.socket; } umístění /images/mailman { alias /usr/share/images/mailman; } umístění /pipermail { alias /var/lib/mailman/archives/public; autoindex zapnutý; }

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

Pod http:///pipermail najdete archivy konference.

Dokonalý server – Ubuntu 11.10 s Nginx [ISPConfig 3] – Strana 5

16 Instalace PureFTPd And Quota

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

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

vi /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=true[...]

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 země (např. „DE“).
Název státu nebo provincie (celý název) [Některý stát]:<-- Zadejte svůj stát nebo název provincie.
Název lokality (např. město) []:<-- Zadejte své město.
Název organizace (např. společnost) [Internet Widgits Pty Ltd]:<-- Zadejte název 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ř. YOUR name) []:<-- Enter the Fully Qualified Domain Name of the system (e.g. "server1.example.com").
Email Address []:<-- Enter your Email Address.

Change the permissions of the SSL certificate:

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

Then restart PureFTPd:

/etc/init.d/pure-ftpd-mysql restart

Edit /etc/fstab. Mine looks like this (I added ,usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0 to the partition with the mount point /):

vi /etc/fstab
# /etc/fstab:static file system information.## Use 'blkid' to print the universally unique identifier for a# device; this may be used with UUID=as a more robust way to name devices# that works even if disks are added and removed. See fstab(5).##     
 proc /proc proc nodev,noexec,nosuid 0 0/dev/mapper/server1-root / ext4 errors=remount-ro,usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0 0 1# /boot was on /dev/sda1 during installationUUID=6fbce377-c3d6-4eb3-8299-88797d4ad18d /boot ext2 defaults 0 2/dev/mapper/server1-swap_1 none swap sw 0 0/dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0 0

To enable quota, run these commands:

mount -o remount /

quotacheck -avugm
quotaon -avug

17 Install BIND DNS Server

BIND can be installed as follows:

apt-get install bind9 dnsutils

18 Install Vlogger, Webalizer, And AWstats

Vlogger, webalizer, and AWstats can be installed as follows:

apt-get install vlogger webalizer awstats geoip-database

Open /etc/cron.d/awstats afterwards...

vi /etc/cron.d/awstats

... and comment out both cron jobs in that file:

#*/10 * * * * www-data [ -x /usr/share/awstats/tools/update.sh ] &&/usr/share/awstats/tools/update.sh# Generate static reports:#10 03 * * * www-data [ -x /usr/share/awstats/tools/buildstatic.sh ] &&/usr/share/awstats/tools/buildstatic.sh

19 Install Jailkit

Jailkit is needed only if you want to chroot SSH users. It can be installed as follows (important:Jailkit must be installed before ISPConfig - it cannot be installed afterwards!):

apt-get install build-essential autoconf automake1.9 libtool flex bison debhelper binutils-gold

cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.14.tar.gz
tar xvfz jailkit-2.14.tar.gz
cd jailkit-2.14
./debian/rules binary

You can now install the Jailkit .deb package as follows:

cd ..
dpkg -i jailkit_2.14-1_*.deb
rm -rf jailkit-2.14*

20 Install fail2ban

This is optional but recommended, because the ISPConfig monitor tries to show the fail2ban log:

apt-get install fail2ban

To make fail2ban monitor PureFTPd, SASL, and Courier, create the file /etc/fail2ban/jail.local:

vi /etc/fail2ban/jail.local
[pureftpd]enabled =trueport =ftpfilter =pureftpdlogpath =/var/log/syslogmaxretry =3[sasl]enabled =trueport =smtpfilter =sasllogpath =/var/log/mail.logmaxretry =5[courierpop3]enabled =trueport =pop3filter =courierpop3logpath =/var/log/mail.logmaxretry =5[courierpop3s]enabled =trueport =pop3sfilter =courierpop3slogpath =/var/log/mail.logmaxretry =5[courierimap]enabled =trueport =imap2filter =courierimaplogpath =/var/log/mail.logmaxretry =5[courierimaps]enabled =trueport =imapsfilter =courierimapslogpath =/var/log/mail.logmaxretry =5

Then create the following five filter files:

vi /etc/fail2ban/filter.d/pureftpd.conf
[Definition]failregex =.*pure-ftpd:\(.*@\) \[WARNING\] Authentication failed for user.*ignoreregex =
vi /etc/fail2ban/filter.d/courierpop3.conf
# Fail2Ban configuration file## $Revision:100 $#[Definition]# Option:failregex# Notes.:regex to match the password failures messages in the logfile. The# host must be matched by a group named "host". The tag "" can# be used for standard IP/hostname matching and is only an alias for# (?:::f{4,6}:)?(?P\S+)# Values:TEXT#failregex =pop3d:LOGIN FAILED.*ip=\[.*:\]# Option:ignoreregex# Notes.:regex to ignore. If this regex matches, the line is ignored.# Values:TEXT#ignoreregex =
vi /etc/fail2ban/filter.d/courierpop3s.conf
# Fail2Ban configuration file## $Revision:100 $#[Definition]# Option:failregex# Notes.:regex to match the password failures messages in the logfile. The# host must be matched by a group named "host". The tag "" can# be used for standard IP/hostname matching and is only an alias for# (?:::f{4,6}:)?(?P\S+)# Values:TEXT#failregex =pop3d-ssl:LOGIN FAILED.*ip=\[.*:\]# Option:ignoreregex# Notes.:regex to ignore. If this regex matches, the line is ignored.# Values:TEXT#ignoreregex =
vi /etc/fail2ban/filter.d/courierimap.conf
# Fail2Ban configuration file## $Revision:100 $#[Definition]# Option:failregex# Notes.:regex to match the password failures messages in the logfile. The# host must be matched by a group named "host". The tag "" can# be used for standard IP/hostname matching and is only an alias for# (?:::f{4,6}:)?(?P\S+)# Values:TEXT#failregex =imapd:LOGIN FAILED.*ip=\[.*:\]# Option:ignoreregex# Notes.:regex to ignore. If this regex matches, the line is ignored.# Values:TEXT#ignoreregex =
vi /etc/fail2ban/filter.d/courierimaps.conf
# Fail2Ban configuration file## $Revision:100 $#[Definition]# Option:failregex# Notes.:regex to match the password failures messages in the logfile. The# host must be matched by a group named "host". The tag "" can# be used for standard IP/hostname matching and is only an alias for# (?:::f{4,6}:)?(?P\S+)# Values:TEXT#failregex =imapd-ssl:LOGIN FAILED.*ip=\[.*:\]# Option:ignoreregex# Notes.:regex to ignore. If this regex matches, the line is ignored.# Values:TEXT#ignoreregex =

Restart fail2ban afterwards:

/etc/init.d/fail2ban restart 

The Perfect Server - Ubuntu 11.10 With Nginx [ISPConfig 3] - Page 6

21 Install SquirrelMail

To install the SquirrelMail webmail client, run

apt-get install squirrelmail

Then configure SquirrelMail:

squirrelmail-configure

We must tell SquirrelMail that we are using Courier-IMAP/-POP3:

SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1.  Organization Preferences
2.  Server Settings
3.  Folder Defaults
4.  General Options
5.  Themes
6.  Address Books
7.  Message of the Day (MOTD)
8.  Plugins
9.  Database
10. Languages

D.  Set pre-defined settings for specific IMAP servers

C   Turn color on
S   Save data
Q   Quit

Command >> <-- D


SquirrelMail Configuration : Read: config.php
---------------------------------------------------------
While we have been building SquirrelMail, we have discovered some
preferences that work better with some servers that don't work so
well with others.  If you select your IMAP server, this option will
set some pre-defined settings for that server.

Please note that you will still need to go through and make sure
everything is correct.  This does not change everything.  There are
only a few settings that this will change.

Please select your IMAP server:
    bincimap    = Binc IMAP server
    courier     = Courier IMAP server
    cyrus       = Cyrus IMAP server
    dovecot     = Dovecot Secure IMAP server
    exchange    = Microsoft Exchange IMAP server
    hmailserver = hMailServer
    macosx      = Mac OS X Mailserver
    mercury32   = Mercury/32
    uw          = University of Washington's IMAP server
    gmail       = IMAP access to Google mail (Gmail) accounts

    quit        = Do not change anything
Command >> <-- courier


SquirrelMail Configuration : Read: config.php
---------------------------------------------------------
While we have been building SquirrelMail, we have discovered some
preferences that work better with some servers that don't work so
well with others.  If you select your IMAP server, this option will
set some pre-defined settings for that server.

Please note that you will still need to go through and make sure
everything is correct.  This does not change everything.  There are
only a few settings that this will change.

Please select your IMAP server:
    bincimap    = Binc IMAP server
    courier     = Courier IMAP server
    cyrus       = Cyrus IMAP server
    dovecot     = Dovecot Secure IMAP server
    exchange    = Microsoft Exchange IMAP server
    hmailserver = hMailServer
    macosx      = Mac OS X Mailserver
    mercury32   = Mercury/32
    uw          = University of Washington's IMAP server

    quit        = Do not change anything
Command >> courier

              imap_server_type = courier
         default_folder_prefix = INBOX.
                  trash_folder = Trash
                   sent_folder = Sent
                  draft_folder = Drafts
            show_prefix_option = false
          default_sub_of_inbox = false
show_contain_subfolders_option = false
            optional_delimiter = .
                 delete_folder = true

Press enter to continue... <-- ENTER


SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1.  Organization Preferences
2.  Server Settings
3.  Folder Defaults
4.  General Options
5.  Themes
6.  Address Books
7.  Message of the Day (MOTD)
8.  Plugins
9.  Database
10. Languages

D.  Set pre-defined settings for specific IMAP servers

C   Turn color on
S   Save data
Q   Quit

Command >> <-- S


SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1.  Organization Preferences
2.  Server Settings
3.  Folder Defaults
4.  General Options
5.  Themes
6.  Address Books
7.  Message of the Day (MOTD)
8.  Plugins
9.  Database
10. Languages

D.  Set pre-defined settings for specific IMAP servers

C   Turn color on
S   Save data
Q   Quit

Command >> S

Data saved in config.php
Press enter to continue... <-- ENTER


SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1.  Organization Preferences
2.  Server Settings
3.  Folder Defaults
4.  General Options
5.  Themes
6.  Address Books
7.  Message of the Day (MOTD)
8.  Plugins
9.  Database
10. Languages

D.  Set pre-defined settings for specific IMAP servers

C   Turn color on
S   Save data
Q   Quit

Command >> <-- Q

You can now find SquirrelMail in the /usr/share/squirrelmail/ directory.

After you have installed ISPConfig 3, you can access SquirrelMail as follows:

The ISPConfig apps vhost on port 8081 for nginx comes with a SquirrelMail configuration, so you can use http://server1.example.com:8081/squirrelmail or http://server1.example.com:8081/webmail to access SquirrelMail.

If you want to use a /webmail or /squirrelmail alias that you can use from your web sites, this is a bit more complicated than for Apache because nginx does not have global aliases (i.e., aliases that can be defined for all vhosts). Therefore you have to define these aliases for each vhost from which you want to access SquirrelMail.

To do this, paste the following into the nginx Directives field on the Options tab of the web site in ISPConfig:

 location /squirrelmail { root /usr/share/; index index.php index.html index.htm; location ~ ^/squirrelmail/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include /etc/nginx/fastcgi_params; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } location ~* ^/squirrelmail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /webmail { rewrite ^/* /squirrelmail last; }

If you use https instead of http for your vhost, you should add the line fastcgi_param HTTPS on; to your SquirrelMail configuration like this:

 location /squirrelmail { root /usr/share/; index index.php index.html index.htm; location ~ ^/squirrelmail/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS on; # <-- add this line fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include /etc/nginx/fastcgi_params; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } location ~* ^/squirrelmail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /webmail { rewrite ^/* /squirrelmail last; }

If you use both http and https for your vhost, you need to add the following section to the http {} section in /etc/nginx/nginx.conf (before any include lines) which determines if the visitor uses http or https and sets the $fastcgi_https variable (which we will use in our SquirrelMail configuration) accordingly:

vi /etc/nginx/nginx.conf
[...]http {[...] ## Detect when HTTPS is used map $scheme $fastcgi_https { default off; https on; }[...]}[...]

Don't forget to reload nginx afterwards:

/etc/init.d/nginx reload 

Then go to the nginx Directives field again, and instead of fastcgi_param HTTPS on; you add the line fastcgi_param HTTPS $fastcgi_https; so that you can use SquirrelMail for both http and https requests:

 location /squirrelmail { root /usr/share/; index index.php index.html index.htm; location ~ ^/squirrelmail/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS $fastcgi_https; # <-- add this line fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include /etc/nginx/fastcgi_params; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } location ~* ^/squirrelmail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /webmail { rewrite ^/* /squirrelmail last; }

The Perfect Server - Ubuntu 11.10 With Nginx [ISPConfig 3] - Page 7

22 Install ISPConfig 3

Before you start the ISPConfig installation, make sure that Apache is stopped (if it is installed - it is possible that some of your installed packages have installed Apache as a dependency without you knowing). If Apache2 is already installed on the system, stop it now...

/etc/init.d/apache2 stop

... and remove Apache's system startup links:

insserv -r apache2

Make sure that nginx is running:

/etc/init.d/nginx restart

(If you have both Apache and nginx installed, the installer asks you which one you want to use:Apache and nginx detected. Select server to use for ISPConfig:(apache,nginx) [apache]:

Type nginx. If only Apache or nginx are installed, this is automatically detected by the installer, and no question is asked.)

To install ISPConfig 3 from the latest released version, do this:

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

The next step is to run

php -q install.php

This will start the ISPConfig 3 installer. The installer will configure all services like Postfix, SASL, Courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary.

[email protected]:/tmp/ispconfig3_install/install# php -q install.php


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


>> Initial configuration

Operating System: Debian or compatible, unknown version.

    Following will be a few questions for primary configuration so be careful.
    Default values are in [brackets] and can be accepted with .
    Tap in "quit" (without the quotes) to stop the installer.


Select language (en,de) [en]: <-- ENTER

Installation mode (standard,expert) [standard]: <-- ENTER

Full qualified hostname (FQDN) of the server, eg server1.domain.tld  [server1.example.com]: <-- ENTER

MySQL server hostname [localhost]: <-- ENTER

MySQL root username [root]: <-- ENTER

MySQL root password []: <- - yourrootsqlpassword

MySQL database to create [dbispconfig]: <-- ENTER

MySQL charset [utf8]: <-- ENTER

Apache and nginx detected. Select server to use for ISPConfig: (apache,nginx) [apache]: <-- nginx

Generating a 2048 bit RSA private key
........+++
.......+++
writing new private key to 'smtpd.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]: <-- ENTER
State or Province Name (full name) [Some-State]: <-- ENTER
Locality Name (eg, city) []: <-- ENTER
Organization Name (eg, company) [Internet Widgits Pty Ltd]: <-- ENTER
Organizational Unit Name (eg, section) []: <-- ENTER
Common Name (eg, YOUR name) []: <-- ENTER
Email Address []: <-- ENTER
Configuring Jailkit
Configuring SASL
Configuring PAM
Configuring Courier
Configuring Spamassassin
Configuring Amavisd
Configuring Getmail
Configuring Pureftpd
Configuring BIND
Configuring nginx
Configuring Vlogger
Configuring Apps vhost
Configuring Bastille Firewall
Configuring Fail2ban
Installing ISPConfig
ISPConfig Port [8080]: <-- ENTER

Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]: <-- ENTER

Generating RSA private key, 4096 bit long modulus
.............................................................................++
........................................................................................................................++
e is 65537 (0x10001)
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fi elds but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]: <-- ENTER
State or Province Name (full name) [Some-State]: <-- ENTER
Locality Name (eg, city) []: <-- ENTER
Organization Name (eg, company) [Internet Widgits Pty Ltd]: <-- ENTER
Organizational Unit Name (eg, section) []: <-- ENTER
Common Name (eg, YOUR name) []: <-- ENTER
Email Address []: <-- ENTER

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: <-- ENTER
An optional company name []: <-- ENTER
writing RSA key
Configuring DBServer
Installing ISPConfig crontab
no crontab for root
no crontab for getmail
Restarting services ...
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mysql restart

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the stop(8) and then start(8) utilities,
e.g. stop mysql ; start mysql. The restart(8) utility is also available.
mysql stop/waiting
mysql start/running, process 2463
 * Stopping Postfix Mail Transport Agent postfix
   ...done.
 * Starting Postfix Mail Transport Agent postfix
   ...done.
 * Stopping SASL Authentication Daemon saslauthd
   ...done.
 * Starting SASL Authentication Daemon saslauthd
   ...done.
Stopping amavisd: amavisd-new.
Starting amavisd: amavisd-new.
 * Stopping ClamAV daemon clamd
   ...done.
 * Starting ClamAV daemon clamd
Bytecode: Security mode set to "TrustSigned".
   ...done.
 * Stopping Courier authentication services authdaemond
   ...done.
 * Starting Courier authentication services authdaemond
   ...done.
 * Stopping Courier IMAP server imapd
   ...done.
 * Starting Courier IMAP server imapd
   ...done.
 * Stopping Courier IMAP-SSL server imapd-ssl
   ...done.
 * Starting Courier IMAP-SSL se rver imapd-ssl
   ...done.
 * Stopping Courier POP3 server...
   ...done.
 * Starting Courier POP3 server...
   ...done.
 * Stopping Courier POP3-SSL server...
   ...done.
 * Starting Courier POP3-SSL server...
   ...done.
 * Restarting Mailman master qrunner mailmanctl
 * Waiting...
   ...fail!
The master qrunner lock could not be acquired because it appears as if another
master qrunner is already running.

   ...done.
 * Reloading PHP5 FastCGI Process Manager php5-fpm
   ...done.
Reloading nginx configuration: nginx.
Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -8 UTF-8 -O clf:/var/log/pure-ftpd/transfer.log -D -H -b -A -E -u 1000 -Y 1 -B
Installation completed.
You have mail in /var/mail/root
[email protected]:/tmp/ispconfig3_install/install#

The installer automatically configures all underlying services, so no manual configuration is needed.

You now also have the possibility to let the installer create an SSL vhost for the ISPConfig control panel, so that ISPConfig can be accessed using https:// instead of http://. To achieve this, just press ENTER when you see this question:Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]:.

Afterwards you can access ISPConfig 3 under http(s)://server1.example.com:8080/ or http(s)://192.168.0.100:8080/ ( http or https depends on what you chose during installation). Log in with the username admin and the password admin (you should change the default password after your first login):

(If you get a 502 Bad Gateway error, just restart PHP-FPM and try again:

/etc/init.d/php5-fpm restart

)

The system is now ready to be used.

22.1 ISPConfig 3 Manual

In order to learn how to use ISPConfig 3, I strongly recommend to download the ISPConfig 3 Manual.

On about 300 pages, it covers the concept behind ISPConfig (admin, resellers, clients), explains how to install and update ISPConfig 3, includes a reference for all forms and form fields in ISPConfig together with examples of valid inputs, and provides tutorials for the most common tasks in ISPConfig 3. It also lines out how to make your server more secure and comes with a troubleshooting section at the end.

22.2 ISPConfig Monitor App For Android

With the ISPConfig Monitor App, you can check your server status and find out if all services are running as expected. You can check TCP and UDP ports and ping your servers. In addition to that you can use this app to request details from servers that have ISPConfig installed (please note that the minimum installed ISPConfig 3 version with support for the ISPConfig Monitor App is 3.0.3.3! ); these details include everything you know from the Monitor module in the ISPConfig Control Panel (e.g. services, mail and system logs, mail queue, CPU and memory info, disk usage, quota, OS details, RKHunter log, etc.), and of course, as ISPConfig is multiserver-capable, you can check all servers that are controlled from your ISPConfig master server.

For download and usage instructions, please visit http://www.ispconfig.org/ispconfig-3/ispconfig-monitor-app-for-android/.

23 Additional Notes

23.1 OpenVZ

If the Ubuntu server that you've just set up in this tutorial is an OpenVZ container (virtual machine), you should do this on the host system (I'm assuming that the ID of the OpenVZ container is 101 - replace it with the correct VPSID on your system):

VPSID=101
for CAP in CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE
do
  vzctl set $VPSID --capability ${CAP}:on --save
done

  • Ubuntu:http://www.ubuntu.com/
  • ISPConfig:http://www.ispconfig.org/

About The Author

Falko Timme is the owner of Timme Hosting (ultra-fast nginx web hosting). He is the lead maintainer of HowtoForge (since 2005) and one of the core developers of ISPConfig (since 2000). He has also contributed to the O'Reilly book "Linux System Administration".


Panels
  1. The Perfect Server – Ubuntu 14.10 (nginx, BIND, Dovecot, ISPConfig 3)

  2. The Perfect Server – Fedora 15 x86_64 [ISPConfig 3]

  3. The Perfect Server – Ubuntu Natty Narwhal (Ubuntu 11.04) [ISPConfig 2]

  1. The Perfect Server – Ubuntu 11.04 [ISPConfig 3]

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

  3. Perfektní server – OpenSUSE 12.1 x86_64 s Nginx [ISPConfig 3]

  1. The Perfect Server – OpenSUSE 12.1 x86_64 s Apache2 [ISPConfig 3]

  2. The Perfect Server – Ubuntu 11.10 [ISPConfig 3]

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