Dokonalý server – Ubuntu 11.04 [ISPConfig 3]
Tento tutoriál ukazuje, jak připravit server Ubuntu 11.04 (Natty Narwhal) pro instalaci ISPConfig 3 a jak nainstalovat ISPConfig 3. ISPConfig 3 je ovládací panel webhostingu, který vám umožňuje konfigurovat následující služby prostřednictvím webového prohlížeče:Web Apache server, poštovní server Postfix, jmenný server MySQL, BIND nebo MyDNS, PureFTPd, SpamAssassin, ClamAV a mnoho dalších.
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.04, dostupný zde:http://releases.ubuntu.com/releases/11.04/ubuntu-11.04-server-i386.iso (i386) nebo http://releases.ubuntu.com/releases /11.04/ubuntu-11.04-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 v případě potřeby musíte 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:
The Perfect Server – Ubuntu 11.04 [ISPConfig 3] – Strana 2
Zadejte název hostitele. V tomto příkladu se můj systém nazývá server1.example.com , takže zadám server1 :
Zkontrolujte, zda instalační program správně rozpoznal vaše časové pásmo. Pokud ano, vyberte Ano, jinak Ne:
Nyní musíte rozdělit pevný disk. Pro jednoduchost jsem zvolil Guided - použít celý disk a nastavit LVM - tím se vytvoří jedna skupina svazků se dvěma logickými svazky, jeden pro souborový systém / a druhý pro swap (rozdělení je samozřejmě zcela na vás - pokud víte, co děláte, můžete také nastavit oddíly ručně).
Vyberte disk, který chcete rozdělit:
Když se zobrazí dotaz Zapsat změny na disky a nakonfigurovat LVM?, vyberte Ano:
Pokud jste vybrali možnost Guided - use celý disk a nastavte LVM, vytvoří rozdělovač oddílů jednu velkou skupinu svazků, která využívá veškerý prostor na disku. Nyní můžete určit, kolik z tohoto místa na disku by mělo být využito logickými svazky pro / a swap. Je rozumné ponechat určité místo nevyužité, abyste mohli později rozšířit své stávající logické svazky nebo vytvořit nové – to vám dává větší flexibilitu.
Až budete hotovi, stiskněte Ano, když se zobrazí dotaz Zapsat změny na disky?:
Poté se vytvoří a naformátují vaše nové oddíly:
Nyní se instaluje základní systém:
Vytvořte uživatele, například uživatele Administrator s uživatelským jménem Administrator (nepoužívejte uživatelské jméno admin, protože je to vyhrazené jméno na Ubuntu 11.04):
Nepotřebuji šifrovaný soukromý adresář, takže zde volím Ne:
Dále se nakonfiguruje správce balíčků apt. Pokud k připojení k Internetu nepoužíváte proxy server, ponechte řádek HTTP proxy prázdný:
Jsem trochu staromódní a rád aktualizuji své servery ručně, abych měl větší kontrolu, proto volím Bez automatických aktualizací. Je samozřejmě na vás, co zde vyberete:
Potřebujeme DNS, mail a LAMP server, ale přesto si teď žádný z nich nevybírám, protože chci mít plnou kontrolu nad tím, co se nainstaluje do mého systému. Potřebné balíčky později nainstalujeme ručně. Jediná položka, kterou zde vyberu, je OpenSSH server, abych se po dokončení instalace mohl okamžitě připojit k systému pomocí klienta SSH, jako je PuTTY:
Instalace pokračuje:
Nainstaluje se zavaděč GRUB:
Vyberte Yes, když se zobrazí dotaz Instalovat zavaděč GRUB do hlavního spouštěcího záznamu?:
Instalace základního systému je nyní dokončena. Vyjměte instalační CD z jednotky CD a klepnutím na tlačítko Pokračovat restartujte systém:
Přejděte k dalšímu kroku...
The Perfect Server – Ubuntu 11.04 [ISPConfig 3] – Strana 3
4 Získat oprávnění 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.04 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.1 62015 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
název hostitele
název hostitele -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.04 _Natty Narwhal_ – vydání amd64 (20110426)]/ natty main limited#deb cdrom:[Ubuntu-Server 11.04 _Natty Narwhal_ – Release amd64 (20110426)]/ natty main limited# Viz http://help.ubuntu.com/community/UpgradeNotes, jak upgradovat na # novější verze distribuce.deb http://de.archive. ubuntu.com/ubuntu/ natty main limitededdeb-src http://de.archive.ubuntu.com/ubuntu/ natty main limited## Aktualizace oprav hlavních chyb vytvořené po konečném vydání distribuce ## distribution.deb http:// de.archive.ubuntu.com/ubuntu/ natty-updates hlavní omezenédeb-src http://de.archive.ubuntu.com/ubuntu/ natty-updates hlavní omezené## Pozn. 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/ natty universedeb-src http://de.archive. ubuntu.com/ubuntu/ natty universedeb http://de.archive.ubuntu.com/ubuntu/ natty-updates universedeb-src http://de.archive.ubuntu.com/ubuntu/ natty-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 NEOBDRŽÍ žádnou recenzi ani aktualizace od bezpečnostního týmu Ubuntu##.deb http://de.archive.ubuntu.com/ubuntu/ natty multiversedeb-src http://de. archive.ubuntu.com/ubuntu/ natty multiversedeb http://de.archive.ubuntu.com/ubuntu/ natty-updates multiversedeb-src http://de.archive.ubuntu.com/ubuntu/ natty-updates multiverse## Chcete-li přidat software z úložiště 'backports'##, odkomentujte následující dva řádky.## 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 bezpečnostního týmu Ubuntu.# deb http://de.archive.ubuntu.com/ubuntu/ natty-backports hlavní omezený vesmír multiverse# deb-src http://de.archive.ubuntu.com /ubuntu/ natty-backports hlavní omezený vesmír multiversedeb http://security.ubuntu.com/ubuntu natty-security main limiteddeb-src http://security.ubuntu.com/ubuntu natty-security main limiteddeb http://security. ubuntu.com/ubuntu natty-security universedeb-src http://security.ubuntu.com/ubuntu natty-security universedeb http://security.ubuntu.com/ubuntu natty-security multiversedeb-src http://security.ubuntu .com/ubuntu natty-security multiverse## Odkomentujte následující dva řádky a přidejte software z ## „partnerského“ úložiště společnosti Canonical ory.## Tento software není součástí Ubuntu, ale je nabízen společností Canonical a## příslušnými prodejci jako služba uživatelům Ubuntu.# deb http://archive.canonical.com/ubuntu natty partner# deb-src http ://archive.canonical.com/ubuntu natty 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 natty main# deb-src http://extras.ubuntu.com/ubuntu natty 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ž po týdnu odstraňování problémů, 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.04 [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
Obecný typ konfigurace pošty:<-- Internet Site
Jméno systémové pošty:<-- server1.example.com
Vytvořit adresáře pro webovou administraci? <-- Není vyžadován
certifikát SSL <-- OK
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 *:* POSLECHNOUT POSLEJTE příklad na řádku: 9990/my sq.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 Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear a mcrypt
Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear a mcrypt lze nainstalovat následovně:
apt-get install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql phpmycli-php5php php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libruby libapache2-mod-ruby
Uvidíte následující otázku:
Webový server se překonfiguruje automaticky:<-- apache2
Nakonfigurujte databázi pro phpmyadmin pomocí dbconfig-common? <-- Ne
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):
Zahrnují akce a2enmod suexec přepis SSL
a2enmod dav_fs dav auth_digest
Poté restartujte Apache:
/etc/init.d/apache2 restart
Pokud chcete hostovat soubory Ruby s příponou .rb na svých webových stránkách vytvořených prostřednictvím ISPConfig, musíte zakomentovat řádek application/x-ruby rb v /etc/mime.types:
vi /etc/mime.types
[...]#application/x-ruby rb[...] |
(Toto je potřeba pouze pro soubory .rb; soubory Ruby s příponou .rbx fungují hned po vybalení.)
Poté restartujte Apache:
/etc/init.d/apache2 restart
15 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é jméno) [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ř. 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:
/etc/init.d/pure-ftpd-mysql restart
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):
vi /etc/fstab
# /etc/fstab:informace o statickém systému souborů.## Použijte 'blkid -o value -s UUID' k vytištění univerzálně jedinečného identifikátoru# pro zařízení; toto lze použít s UUID=jako robustnější způsob pojmenování# zařízení, který funguje, i když jsou přidány a odebrány disky. Viz fstab(5).## |
Chcete-li kvótu povolit, spusťte tyto příkazy:
mount -o remount /
quotacheck -avugm
kvóta -avug
16 Instalace serveru DNS BIND
BIND lze nainstalovat následovně:
apt-get install bind9 dnsutils
17 Instalace Vlogger, Webalizer a AWstats
Vlogger, webalizer a AWstats lze nainstalovat následovně:
apt-get install vlogger webalizer awstats geoip-database
Poté otevřete /etc/cron.d/awstats...
vi /etc/cron.d/awstats
... a zakomentujte obě úlohy cron v tomto souboru:
#*/10 * * * * www-data [ -x /usr/share/awstats/tools/update.sh ] &&/usr/ share/awstats/tools/update.sh# Generování statických sestav:#10 03 * * * www-data [ -x /usr/share/awstats/tools/buildstatic.sh ] &&/usr/share/awstats/tools/buildstatic .sh |
18 Instalace Jailkit
Jailkit je potřeba pouze v případě, že chcete chrootovat uživatele SSH. Lze jej nainstalovat následovně (důležité:Jailkit musí být nainstalován před ISPConfig – nelze jej nainstalovat později!):
apt-get install build-essential autoconf automake1.9 libtool flex bison debhelper
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 binární
cd ..
dpkg -i jailkit_2.14-1_*.deb
rm -rf jailkit-2.14*
The Perfect Server – Ubuntu 11.04 [ISPConfig 3] – Strana 5
19 Instalace fail2ban
Toto je volitelné, ale doporučené, protože monitor ISPConfig se pokouší zobrazit protokol fail2ban:
apt-get install fail2ban
Chcete-li, aby fail2ban monitoroval PureFTPd, SASL a Courier, vytvořte soubor /etc/fail2ban/jail.local:
vi /etc/fail2ban/jail.local
[pureftpd] povoleno =trueport =ftpfilter =pureftpdlogpath =/var/log/syslogmaxretry =3[sasl] povoleno =trueport =smtpfilter =sasllogpath =/ var/log/mail.logmaxretry =5[courierpop3] povoleno =trueport =pop3filter =courierpop3logpath =/var/log/mail.logmaxretry =5[courierpop3s] povoleno =trueport =pop3sfilter =courierpop3slogpath =/var/log/mail.logmaxretry =5[courierimap] povoleno =trueport =imap2filter =courierimaplogpath =/var/log/mail.logmaxretry =5[courierimaps] povoleno =trueport =imapsfilter =courierimapslogpath =/var/log/mail.logmaxretry =5 |
Poté vytvořte následujících pět souborů filtru:
vi /etc/fail2ban/filter.d/pureftpd.conf
[Definice]failregex =.*pure-ftpd:\(.*@ |
vi /etc/fail2ban/filter.d/courierpop3.conf
# Konfigurační soubor Fail2Ban## $Revize:100 $#[Definice]# Možnost:failregex# Poznámky.:regex, aby odpovídal zprávám o selhání hesla v logfile. Hostitel # musí odpovídat skupině s názvem "hostitel". Tag " |
vi /etc/fail2ban/filter.d/courierpop3s.conf
# Konfigurační soubor Fail2Ban## $Revize:100 $#[Definice]# Možnost:failregex# Poznámky.:regex, aby odpovídal zprávám o selhání hesla v logfile. Hostitel # musí odpovídat skupině s názvem "hostitel". Tag " |
vi /etc/fail2ban/filter.d/courierimap.conf
# Konfigurační soubor Fail2Ban## $Revize:100 $#[Definice]# Možnost:failregex# Poznámky.:regex, aby odpovídal zprávám o selhání hesla v logfile. Hostitel # musí odpovídat skupině s názvem "hostitel". Tag " |
vi /etc/fail2ban/filter.d/courierimaps.conf
# Konfigurační soubor Fail2Ban## $Revize:100 $#[Definice]# Možnost:failregex# Poznámky.:regex, aby odpovídal zprávám o selhání hesla v logfile. Hostitel # musí odpovídat skupině s názvem "hostitel". Tag " |
Poté restartujte fail2ban:
/etc/init.d/fail2ban restart
20 Instalace SquirrelMail
Chcete-li nainstalovat webového poštovního klienta SquirrelMail, spusťte
apt-get install squirrelmail
Poté vytvořte následující symbolický odkaz...
ln -s /usr/share/squirrelmail/ /var/www/webmail
... a nakonfigurujte SquirrelMail:
squirrelmail-configure
Musíme SquirrelMail sdělit, že používáme Courier-IMAP/-POP3:
Konfigurace SquirrelMail : Přečtěte si: config.php (1.4.0)
--------------------------------- ------------------------
Hlavní nabídka --
1. Předvolby organizace
2. Nastavení serveru
3. Výchozí složky
4. Obecné možnosti
5. Motivy
6. Adresáře
7. Zpráva dne (MOTD)
8. Pluginy
9. Databáze
10. Jazyky
D. Nastavte předdefinovaná nastavení pro konkrétní IMAP servery
C Zapněte barvu
S Uložit data
Q Konec
Příkaz >> <-- D
Konfigurace SquirrelMail : Přečtěte si: config.php
---- -------------------------------------------------- ---
Zatímco jsme vytvářeli SquirrelMail, objevili jsme některá
předvolby , která fungují lépe s některými servery, které s jinými tak
nefungují tak dobře. Pokud vyberete svůj IMAP server, tato možnost
nastaví některá předdefinovaná nastavení pro tento server.
Upozorňujeme, že budete stále musíte vše procházet a ujistit se,
je správně. To nemění všechno. Existuje
pouze několik nastavení , která to se změní.
Prosím vyberte svůj IMAP server:
bincimap = Binc IMAP server
Cyrus =Cyrus IMAP Server
Dovecot =Dovecot Secure IMAP Server
Exchange =Microsoft Exchange Server
HmailServer =HmailServer
Macosx =Mac OS X MailServer
Mercury32 =Merkur /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 any key 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
Afterwards you can access SquirrelMail under http://server1.example.com/webmail or http://192.168.0.100/webmail:
The Perfect Server - Ubuntu 11.04 [ISPConfig 3] - Page 6
21 Install ISPConfig 3
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 6.0 (Squeeze/Sid) or compatible
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
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 Apache
Configuring Vlogger
Configuring Apps vhost
Configuring Firewall
Installing ISPConfig
ISPConfig Port [8080]: <-- ENTER
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 27585
* 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
...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 server 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 web server apache2
... waiting . ...done.
Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -E -Y 1 -8 UTF-8 -H -A -O clf:/var/log/pure-ftpd/transfer.log -D -b -u 1000 -B
Installation completed.
[email protected]:/tmp/ispconfig3_install/install#
The installer automatically configures all underlying services, so no manual configuration is needed.
Afterwards you can access ISPConfig 3 under http://server1.example.com:8080/ or http://192.168.0.100:8080/. 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):
The system is now ready to be used.
21.1 ISPConfig 3 Manual
In order to learn how to use ISPConfig 3, I strongly recommend to download the ISPConfig 3 Manual.
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ů.
21.2 ISPConfig Monitor App For 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! ); 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.
Pokyny ke stažení a použití naleznete na adrese http://www.ispconfig.org/ispconfig-3/ispconfig-monitor-app-for-android/.
22 Additional Notes
22.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
22.2 SquirrelMail
Lots of people have reported problems (such as getting 404 Not Found errors) using the SquirrelMail webmail package in their web sites created through ISPConfig 3. This guide explains how to configure SquirrelMail on an Ubuntu 11.04 server so that you can use it from within your web sites (created through ISPConfig).
SquirrelMail's Apache configuration is in the file /etc/squirrelmail/apache.conf, but this file isn't loaded by Apache because it is not in the /etc/apache2/conf.d/ directory. Therefore we create a symlink called squirrelmail.conf in the /etc/apache2/conf.d/ directory that points to /etc/squirrelmail/apache.conf and reload Apache afterwards:
cd /etc/apache2/conf.d/
ln -s ../../squirrelmail/apache.conf squirrelmail.conf
/etc/init.d/apache2 reload
Now open /etc/apache2/conf.d/squirrelmail.conf...
vi /etc/apache2/conf.d/squirrelmail.conf
... and add the following lines to the
[...] |
Create the directory /var/lib/squirrelmail/tmp...
mkdir /var/lib/squirrelmail/tmp
... and make it owned by the user www-data:
chown www-data /var/lib/squirrelmail/tmp
Reload Apache again:
/etc/init.d/apache2 reload
That's it already - /etc/apache2/conf.d/squirrelmail.conf defines an alias called /squirrelmail that points to SquirrelMail's installation directory /usr/share/squirrelmail.
You can now access SquirrelMail from your web site as follows:
http://www.example.com/squirrelmail
You can also access it from the ISPConfig control panel vhost as follows (this doesn't need any configuration in ISPConfig):
http://server1.example.com:8080/squirrelmail
If you'd like to use the alias /webmail instead of /squirrelmail, simply open /etc/apache2/conf.d/squirrelmail.conf...
vi /etc/apache2/conf.d/squirrelmail.conf
... and add the line Alias /webmail /usr/share/squirrelmail:
Alias /squirrelmail /usr/share/squirrelmailAlias /webmail /usr/share/squirrelmail[...] |
Then reload Apache:
/etc/init.d/apache2 reload
Now you can access Squirrelmail as follows:
http://www.example.com/webmail
http://server1.example.com:8080/webmail
If you'd like to define a vhost like webmail.example.com where your users can access SquirrelMail, you'd have to add the following vhost configuration to /etc/apache2/conf.d/squirrelmail.conf:
vi /etc/apache2/conf.d/squirrelmail.conf
[...] |
Make sure you replace 1.2.3.4 with the correct IP address of your server. Of course, there must be a DNS record for webmail.example.com that points to the IP address that you use in the vhost configuration. Also make sure that the vhost webmail.example.com does not exist in ISPConfig (otherwise both vhosts will interfere with each other!).
Now reload Apache...
/etc/init.d/apache2 reload
... and you can access SquirrelMail under http://webmail.example.com!
23 Links
- Ubuntu:http://www.ubuntu.com/
- ISPConfig:http://www.ispconfig.org/