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

The Perfect Server – CentOS 5.7 x86_64 [ISPConfig 3]

Dokonalý server – CentOS 5.7 x86_64 [ISPConfig 3]

Tento tutoriál ukazuje, jak připravit server CentOS 5.7 x86_64 pro instalaci ISPConfig 3 a jak nainstalovat ISPConfig 3. ISPConfig 3 je ovládací panel webhostingu, který umožňuje konfigurovat následující služby prostřednictvím webového prohlížeče:webový server Apache, Postfix poštovní server, MySQL, jmenný server BIND, 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!

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

1 požadavky

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

  • Stáhněte si dvě CentOS 5.7 DVD nebo osm CentOS 5.7 CD ze zrcadla vedle vás (seznam zrcadel lze nalézt zde:http://isoredirect.centos.org/centos/5/isos/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 Instalace základního systému

Spusťte z vašeho prvního CentOS 5.7 CD (CD 1) nebo prvního CentOS 5.7 DVD. Stiskněte na výzvu ke spuštění:

Testování instalačního média může trvat dlouho, takže tento test zde přeskočíme:

Zobrazí se uvítací obrazovka instalačního programu CentOS. Klikněte na Další:

Dále vyberte jazyk:

Vyberte rozložení klávesnice:

Instaluji CentOS 5.7 na nový systém, takže na otázku Přejete si inicializovat tento disk a vymazat VŠECHNA DATA?

Nyní musíme vybrat schéma rozdělení pro naši instalaci. Pro jednoduchost vyberu Odstranit linuxové oddíly na vybraných discích a vytvořím výchozí rozložení. Výsledkem bude malý /boot a velký / a také odkládací oddíl. Pevný disk si samozřejmě můžete rozdělit, jak chcete. Poté jsem klikl na Další:

Na následující otázku (Opravdu to chcete udělat?) odpovězte Ano:

Přejděte do nastavení sítě. Výchozí nastavení je konfigurace síťových rozhraní pomocí DHCP, ale instalujeme server, takže statické IP adresy nejsou špatný nápad... Klikněte na tlačítko Upravit vpravo nahoře.

V okně, které se objeví, zrušte zaškrtnutí políčka Dynamic IP configuration (DHCP) a Enable IPv6 support a přidělte vaší síťové kartě statickou IP adresu (v tomto návodu používám IP adresu 192.168.0.100 pro demonstrační účely) a vhodnou síťovou masku (např. 255.255.255.0; pokud si nejste jisti správnými hodnotami, může vám pomoci http://www.subnetmask.info):

Nastavte název hostitele ručně, např. server1.example.com a zadejte bránu (např. 192.168.0.1) a až dva servery DNS (např. 8.8.8.8 a 145.253.2.75):

Vyberte své časové pásmo:

Dejte rootovi heslo:

Dokonalý server – CentOS 5.7 x86_64 [ISPConfig 3] – Strana 2

4 Upravte /etc/hosts

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

vi /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               localhost.localdomain localhost
192.168.0.100           server1.example.com server1
::1             localhost6.localdomain6 localhost6

5 Konfigurace dalších IP adres

(Tato část je zcela volitelná. Pouze ukazuje, jak přidat další IP adresy do vašeho síťového rozhraní eth0, pokud potřebujete více než jednu IP adresu. Pokud vám vyhovuje jedna IP adresa, můžete tuto část přeskočit.)

Předpokládejme, že naše síťové rozhraní je eth0. Dále je zde soubor /etc/sysconfig/network-scripts/ifcfg-eth0, který obsahuje nastavení pro eth0. Můžeme to použít jako příklad pro naše nové rozhraní virtuální sítě eth0:0:

cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:0

Nyní chceme použít IP adresu 192.168.0.101 na virtuálním rozhraní eth0:0. Proto otevřeme soubor /etc/sysconfig/network-scripts/ifcfg-eth0:0 a upravíme jej následovně (řádek HWADDR můžeme vynechat, protože se jedná o stejnou fyzickou síťovou kartu):

vi /etc/sysconfig/network-scripts/ifcfg-eth0:0
# Intel Corporation 82545EM Gigabit Ethernet Controller (Copper)
DEVICE=eth0:0
BOOTPROTO=static
BROADCAST=192.168.0.255
IPADDR=192.168.0.101
NETMASK=255.255.255.0
NETWORK=192.168.0.0
ONBOOT=yes

Poté musíme restartovat síť:

/etc/init.d/network restart

Po přidání nových IP adres můžete také upravit /etc/hosts, i když to není nutné.

Nyní spusťte

ifconfig

Nyní byste měli ve výstupu vidět svou novou IP adresu:

[[email protected] ~]# ifconfig
eth0      Odkaz encap:Ethernet  HWaddr 00:0C:29:89:71:35
           inet addr:292.168.0.5150.5 Ma. 255,0
          PŘECHÁZENÍ VYSÍLÁNÍ MULTICAST  MTU:1500  Metrika:1
          RX pakety:307 chyby:0 zahozené:0 přetečení:0 přetečení snímek 5    TX přetečení       chyba TX :2 :0 carrier:0
          kolize:0 txqueuelen:1000
          RX bajtů:29217 (28,5 KiB) net TX bajtů:45961 (44,8 / br 0B 0 0 HWaddr 00:0C:29:89:71:35
          inet addr:192.168.0.101  Bcast:192.168.0.255  Maska:255.255.255.0 Mex :TU  255.255.255.0 
 BASTING 10 
  
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Maska:255.0.0.0
      RX   ets: 8 chyba LOOPBACK :6 UP LOOPBACK s:4 0 6 RUNNING :0 přetečení:0 snímek:0
          TX pakety:8 chyby:0 zahozené:0 překročení:0 přenašeč:0
          kolize:0 txqueuelen:0
          RX bajtů:560 (560,0 b)  TX bajtů:560 (560,0 b)

[example@unixlinux.

6 Zakázat bránu firewall a SELinux

(Tuto kapitolu můžete přeskočit, pokud jste již deaktivovali firewall a SELinux na konci základní instalace systému (v Setup Agent).)

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

SELinux je bezpečnostní rozšíření CentOS, které by mělo poskytovat rozšířené zabezpečení. Podle mého názoru to ke konfiguraci zabezpečeného systému nepotřebujete a obvykle to způ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 SELinux). Proto jsem to také zakázal (to je nutnost, pokud chcete ISPConfig nainstalovat později).

Spustit

system-config-securitylevel

Nastavte Úroveň zabezpečení i SELinux na Vypnuto a stiskněte OK:

Poté musíme restartovat systém:

reboot

7 Instalace softwaru

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

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

Povolte úložiště contrib a centosplus:

vi /etc/yum.repos.d/CentOS-Base.repo

Upravte řádky níže:

[base]
[...]
exclude=postfix
[...]
[updates]
[...]
exclude=postfix
[...]
[centosplus]
[...]
enabled=1
includepkgs=postfix
[...]
[contrib]
[...]
enabled=1
[...]

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

yum update

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

yum groupinstall 'Development Tools'
yum groupinstall 'Development Libraries'

8 kvóta

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

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

yum install quota

Upravte /etc/fstab a přidejte,usrquota,grpquota do oddílu / (/dev/VolGroup00/LogVol00):

vi /etc/fstab
/dev/VolGroup00/LogVol00 /                       ext3    defaults,usrquota,grpquota        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
/dev/VolGroup00/LogVol01 swap                    swap    defaults        0 0

Potom spusťte

touch /aquota.user /aquota.group
chmod 600 /aquota.*
mount -o remount /
quotacheck -avugm
quotaon -avug

pro povolení kvóty.

9 Instalace Apache, MySQL, phpMyAdmin

Nejprve povolíme úložiště RPMforge na našem systému CentOS, protože mnoho balíčků, které se chystáme instalovat v průběhu tohoto tutoriálu, není dostupných v oficiálních repozitářích CentOS 5.7:

wget http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
rpm --import RPM-GPG-KEY.dag.txt

cd /tmp
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm
rpm -ivh rpmforge-release- 0.5.2-2.el5.rf.x86_64.rpm

(Pokud výše uvedený odkaz již nefunguje, aktuální verzi rpmforge-release naleznete zde:http://packages.sw.be/rpmforge-release/)

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

yum install ntp httpd mysql-server php php-mysql php-mbstring php-mcrypt phpmyadmin

Dokonalý server – CentOS 5.7 x86_64 [ISPConfig 3] – strana 4

10 Instalace Dovecot

V úložišti CentOS je balíček Dovecot, ale bohužel nepodporuje MySQL. Proto musíme odstranit stávající Dovecot a nainstalovat jiný balíček Dovecot (od ATrpms), který je dodáván s podporou MySQL.

yum remove dovecot

Vytvořte nový soubor /etc/yum.repos.d/atrpms.repo...

vi /etc/yum.repos.d/atrpms.repo

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

[atrpms]
name=Red Hat Enterprise Linux 5 - $basearch - ATrpms
baseurl=http://dl.atrpms.net/el5-$basearch/atrpms/stable
failovermethod=priority
exclude=dovecot-2*
includepkgs=dovecot dovecot-sieve

#
# requires stable
#
[atrpms-testing]
name=Red Hat Enterprise Linux 5 - $basearch - ATrpms testing
baseurl=http://dl.atrpms.net/el5-$basearch/atrpms/testing
failovermethod=priority
enabled=1
exclude=dovecot-2*
includepkgs=dovecot dovecot-sieve

#
# requires stable and testing
#
[atrpms-bleeding]
name=Red Hat Enterprise Linux 5 - $basearch - ATrpms bleeding
baseurl=http://dl.atrpms.net/el5-$basearch/atrpms/bleeding
failovermethod=priority
enabled=0

Poté importujte klíč tge gpg z úložiště atrpm...

wget http://ATrpms.net/RPM-GPG-KEY.atrpms
rpm --import RPM-GPG-KEY.atrpms

...a nainstalujte Dovecot:

yum install dovecot dovecot-sieve

Na 64bitovém systému proveďte také toto (nedělejte to na 32bitovém systému!):

ln -s /usr/lib64/dovecot/ /usr/lib/dovecot

Nyní vytvoříme spouštěcí odkazy systému pro Dovecot:

chkconfig --levels 235 dovecot na
/etc/init.d/dovecot start

Pokud se Dovecot nepodaří spustit s následující chybou:

Fatal: listen(::, 143) failed: Address already in use

... otevřete /etc/dovecot.conf...

vi /etc/dovecot.conf 

... a přidejte řádek listen =*:

[...]
#listen = *, [::]
listen = *
[...]

Potom zkuste znovu spustit Dovecot:

/etc/init.d/dovecot start 

11 Instalace Postfixu s podporou MySQL

"Normální" balíček Postfix z úložiště CentOS nemá MySQL, ale balíček Postfix z úložiště CentOS Plus ano. Proto odstraňujeme Postfix...

yum remove postfix

... a znovu jej nainstalujte, tentokrát z úložiště CentOS Plus:

yum install postfix   

Poté vypněte Sendmail a spusťte Postfix a MySQL:

chkconfig --levels 235 mysqld na
/etc/init.d/mysqld start

chkconfig --levels 235 sendmail off
chkconfig --levels 235 postfix on
/etc/init.d/sendmail stop
/etc/init.d/postfix start

12 Nainstalujte si Getmail

Getmail lze nainstalovat následovně:

yum install getmail

13 Nastavení hesel MySQL a konfigurace phpMyAdmin

Nastavte hesla pro kořenový účet MySQL:

mysql_secure_installation

[[email protected] tmp]# mysql_secure_installation




POZNÁMKA: SPUŠTĚNÍ VŠECHNY ČÁSTI TOHOto skriptu JE DOPORUČUJEME PRO VŠECHNY PRODUKT MySQL
      SERVERY V SERVERU POUŽITÍ! PROSÍM POČTĚTE KAŽDÝ KROK POZOR!


Aby se přihlásili do MySQL a zabezpečili je, budeme potřebovat aktuální
heslo pro uživatele root. Pokud jste právě nainstalovali MySQL a 
ještě nenastavili heslo kořenu , heslo bude prázdné,
tak měli stačí stisknout sem enter.

Enter aktuální heslo pro kořen (zadejte pro žádné):
OK, úspěšně použité heslo, pokračujeme ...

Nastavení hesla root zajistí , že se nikdo nemůže přihlásit do MySQL
root uživatel bez náležitého oprávnění.

Nastavit heslo uživatele root? [A/N] <-- ZADEJTE
Nové heslo: <-- heslo yourrootsql
Znovu zadejte nové heslo: <-- heslo vaše rootsql
Heslo úspěšně aktualizováno!
Opětovné načítání tabulek privilegií. .
 ... Úspěch!


Ve výchozím nastavení má instalace MySQL anonymního uživatele, který umožňuje 
přihlásit se do MySQL bez musí mít uživatelský účet vytvořené pro ně
. Toto je určeno pouze pro testování a aby instalace
byla o něco plynulejší. Měli byste je odstranit [A/N] <-- ENTER
 ... Úspěch!

Za normálních okolností by měl uživatel pouze povolit připojení z 'localhost'. To
zajišťuje , že někdo nemůže odhadnout heslo root ze sítě.

Zakázat vzdálené přihlášení rootu? [A/N] <-- ENTER
 ... Úspěch!

Ve výchozím nastavení MySQL přichází s databází nazvanou 'test', ke které má kdo
přístup. Toto je také je určeno pouze pro testování a mělo by se odstranit
před přestěhováním do produkčního prostředí.

Odstranit testovací databázi a získat do ní přístup? [A/N] <-- ENTER
 - Odstranění testovací databáze...
 ... Úspěch!
 - Odebrání oprávnění na testovací databázi...
 ... Úspěch !

Opětovné načtení tabulek privilegií zajistí , že všechny dosud provedené změny se okamžitě projeví.

Znovu načíst tabulky privilegií hned? [A/N] <-- ENTER
 ... Úspěch!

Úklid ...



Vše hotovo! Pokud jste dokončili všechny výše uvedené kroky, vaše mySQL
instalace by nyní měla být zabezpečena.

Děkujeme za používání MySQL!


[příklad @unixlinux.online tmp]#

Nyní nakonfigurujeme phpMyAdmin. Změnili jsme konfiguraci Apache tak, aby phpMyAdmin umožňoval připojení nejen z localhostu (zakomentováním stanzy ):

vi /etc/httpd/conf.d/phpmyadmin.conf
#
#  Web application to manage MySQL
#

#<Directory "/usr/share/phpmyadmin">
#  Order Deny,Allow
#  Deny from all
#  Allow from 127.0.0.1
#</Directory>

Alias /phpmyadmin /usr/share/phpmyadmin
Alias /phpMyAdmin /usr/share/phpmyadmin
Alias /mysqladmin /usr/share/phpmyadmin

Dále změníme autentizaci v phpMyAdmin z cookie na http:

vi /usr/share/phpmyadmin/config.inc.php
[...]
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'http';
[...]

Poté vytvoříme spouštěcí odkazy systému pro Apache a spustíme jej:

chkconfig --levels 235 httpd na
/etc/init.d/httpd start

Nyní můžete svůj prohlížeč nasměrovat na http://server1.example.com/phpmyadmin/ nebo http://192.168.0.100/phpmyadmin/ a přihlásit se pomocí uživatelského jména root a vašeho nového hesla root MySQL.

14 Instalace Amavisd-new, SpamAssassin And ClamAV

Chcete-li nainstalovat amavisd-new, spamassassin a clamav, spusťte následující příkaz:

yum install amavisd-new spamassassin clamav clamd unzip bzip2 unrar perl-DBD-mysql

Otevřete /etc/sysconfig/amavisd...

vi /etc/sysconfig/amavisd

... a odkomentujte řádek CONFIG_FILE="/etc/amavisd.conf":

### Uncomment this if you want to use amavis with sendmail milter interface.
### See README.milter for details.
#
#MILTER_SOCKET="local:/var/amavis/amavis-milter.sock"
#MILTER_SOCKET="[email protected]"

### These are other defaults.
#AMAVIS_ACCOUNT="amavis"
CONFIG_FILE="/etc/amavisd.conf"
#MILTER_FLAGS=""

Pak začneme freshclam, amavisd a clamd...

sa-update
chkconfig --levels 235 amavisd on
chkconfig --levels 235 clamd on
/usr/bin/freshclam
/etc/init.d/amavisd start
/etc/init.d/clamd start

... a vytvořte některé potřebné adresáře:

mkdir /var/run/amavisd /var/spool/amavisd /var/spool/amavisd/tmp /var/spool/amavisd/db
chown amavis /var/run/amavisd /var/spool/amavisd /var/ spool/amavisd/tmp /var/spool/amavisd/db
ln -s /var/run/clamav/clamd.sock /var/spool/amavisd/clamd.sock

Dokonalý server – CentOS 5.7 x86_64 [ISPConfig 3] – strana 5

15 Instalace Apache2 pomocí mod_php, mod_fcgi/PHP5 a suPHP

ISPConfig 3 vám umožňuje používat mod_php, mod_fcgi/PHP5, cgi/PHP5 a suPHP na základě jednotlivých webových stránek.

mod_fcgid není k dispozici v oficiálních repozitářích CentOS, ale v testovacím úložišti centos.karan.org je balíček pro CentOS 5.x. Úložiště aktivujeme následovně:

cd /etc/yum.repos.d/
wget http://centos.karan.org/kbsingh-CentOS-Extras.repo

Dále otevřeme /etc/yum.repos.d/kbsingh-CentOS-Extras.repo...

vi /etc/yum.repos.d/kbsingh-CentOS-Extras.repo

... a nastavte gpgcheck na 0 a aktivujte na 1 v sekci [kbs-CentOS-Testing]:

[...]
# pkgs in the -Testing repo are not gpg signed
[kbs-CentOS-Testing]
name=CentOS.Karan.Org-EL$releasever - Testing
gpgcheck=0
gpgkey=http://centos.karan.org/RPM-GPG-KEY-karan.org.txt
enabled=1
baseurl=http://centos.karan.org/el$releasever/extras/testing/$basearch/RPMS/

Poté můžeme nainstalovat Apache2 pomocí mod_php5, mod_fcgid a PHP5:

yum install php php-devel php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc php-eaccelerator php-mbstring php-mcrypt php-mhash php-mssql php-snmp php-soap php-tidy curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel mod_fcgid php-cli httpd-devel

Dále otevřeme /etc/php.ini...

vi /etc/php.ini

... a změňte hlášení chyb (tak, aby se upozornění již nezobrazovala) a přidejte cgi.fix_pathinfo =1 na konec souboru:

[...]
;error_reporting  =  E_ALL
error_reporting = E_ALL & ~E_NOTICE
[...]
cgi.fix_pathinfo = 1

Dále nainstalujeme suPHP:

cd /tmp
wget http://suphp.org/download/suphp-0.7.1.tar.gz
tar xvfz suphp-0.7.1.tar.gz
cd suphp-0.7 .1/
./configure --prefix=/usr --sysconfdir=/etc --with-apr=/usr/bin/apr-1-config --with-apxs=/usr/sbin/apxs --with-apache-user=apache --with-setid-mode=owner --with-php=/usr/bin/php-cgi --with-logfile=/var/log/httpd/suphp_log --enable- SUPHP_USE_USERGROUP=yes
provést
provést instalaci

Poté přidáme modul suPHP do naší konfigurace Apache...

vi /etc/httpd/conf.d/suphp.conf
LoadModule suphp_module modules/mod_suphp.so

... a vytvořte soubor /etc/suphp.conf následovně:

vi /etc/suphp.conf
[global]
;Path to logfile
logfile=/var/log/httpd/suphp.log
;Loglevel
loglevel=info
;User Apache is running as
webserver_user=apache
;Path all scripts have to be in
docroot=/
;Path to chroot() to before executing script
;chroot=/mychroot
; Security options
allow_file_group_writeable=true
allow_file_others_writeable=false
allow_directory_group_writeable=true
allow_directory_others_writeable=false
;Check wheter script is within DOCUMENT_ROOT
check_vhost_docroot=true
;Send minor error messages to browser
errors_to_browser=false
;PATH environment variable
env_path=/bin:/usr/bin
;Umask to set, specify in octal notation
umask=0077
; Minimum UID
min_uid=100
; Minimum GID
min_gid=100
[handlers]
;Handler for php-scripts
x-httpd-suphp="php:/usr/bin/php-cgi"
;Handler for CGI-scripts
x-suphp-cgi="execute:!self"

Nakonec restartujeme Apache:

/etc/init.d/httpd restart

15.1 Ruby

Počínaje verzí 3.0.3 má ISPConfig 3 vestavěnou podporu pro Ruby. Místo použití CGI/FastCGI závisí ISPConfig na dostupnosti mod_ruby na serveru Apache.

Pro CentOS 5.7 není k dispozici žádný balíček mod_ruby, takže jej musíme zkompilovat sami. Nejprve nainstalujeme některé předpoklady:

yum install httpd-devel ruby ruby-devel

Dále stáhneme a nainstalujeme mod_ruby následovně:

cd /tmp
wget http://modruby.net/archive/mod_ruby-1.3.0.tar.gz
tar zxvf mod_ruby-1.3.0.tar.gz
cd mod_ruby-1.3 .0/
./configure.rb --with-apr-includes=/usr/include/apr-1
provést
provést instalaci

Nakonec musíme přidat modul mod_ruby do konfigurace Apache, takže vytvoříme soubor /etc/httpd/conf.d/ruby.conf...

vi /etc/httpd/conf.d/ruby.conf
LoadModule ruby_module modules/mod_ruby.so

... a restartujte Apache:

/etc/init.d/httpd restart

15.2 WebDAV

WebDAV by již měl být povolen, ale pro kontrolu otevřete /etc/httpd/conf/httpd.conf a ujistěte se, že jsou aktivní následující tři moduly:

vi /etc/httpd/conf/httpd.conf
[...]
LoadModule auth_digest_module modules/mod_auth_digest.so
[...]
LoadModule dav_module modules/mod_dav.so
[...]
LoadModule dav_fs_module modules/mod_dav_fs.so
[...]

Pokud musíte upravit /etc/httpd/conf/httpd.conf, nezapomeňte poté restartovat Apache:

/etc/init.d/httpd restart 

16 Instalace PureFTPd

PureFTPd lze nainstalovat pomocí následujícího příkazu:

yum install pure-ftpd

Poté vytvořte odkazy pro spuštění systému a spusťte PureFTPd:

chkconfig --levels 235 pure-ftpd na
/etc/init.d/pure-ftpd start

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ší.

OpenSSL vyžaduje TLS; k instalaci OpenSSL jednoduše spustíme:

yum install openssl

Otevřete /etc/pure-ftpd/pure-ftpd.conf...

vi /etc/pure-ftpd/pure-ftpd.conf

Pokud chcete povolit relace FTP a TLS, nastavte TLS na 1:

[...]
# This option can accept three values :
# 0 : disable SSL/TLS encryption layer (default).
# 1 : accept both traditional and encrypted sessions.
# 2 : refuse connections that don't use SSL/TLS security mechanisms,
#     including anonymous sessions.
# Do _not_ uncomment this blindly. Be sure that :
# 1) Your server has been compiled with SSL/TLS support (--with-tls),
# 2) A valid certificate is in place,
# 3) Only compatible clients will log in.
TLS                      1
[...]

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) [GB]:<-- Zadejte název země (např. „DE“).
Název státu nebo provincie (celé jméno) [Berkshire]:<-- Zadejte svůj stát nebo provincii Název.
Název lokality (např. město) [Newbury]:<-- Zadejte své město.
Název organizace (např. společnost) [Moje společnost 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 nebo název hostitele vašeho serveru) []:<-- 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

Nakonec restartujte PureFTPd:

 /etc/init.d/pure-ftpd restart

A je to. Nyní se můžete pokusit připojit pomocí svého FTP klienta; měli byste však nakonfigurovat svého FTP klienta tak, aby používal TLS.

17 Instalace serveru DNS chrooted (BIND9)

Chcete-li nainstalovat chrootovaný BIND9, provedeme toto:

yum install bind-chroot

Pak proveďte toto:

chmod 755 /var/named/
chmod 775 /var/named/chroot/
chmod 775 /var/named/chroot/var/
chmod 775 /var/named/chroot/var/ named/
chmod 775 /var/named/chroot/var/run/
chmod 777 /var/named/chroot/var/run/named/
cd /var/named/chroot/ var/named/
ln -s ../../ chroot
dotkněte se /var/named/chroot/var/named/named.local
cp /usr/share/doc/bind -9.3.6/sample/var/named/named.root /var/named/chroot/var/named/named.root
dotkněte se /var/named/chroot/etc/named.conf.local
vi /var/named/chroot/etc/named.conf

//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
options {
        listen-on port 53 { any; };
        listen-on-v6 port 53 { any; };
        directory       "/var/named/chroot/var/named";
        dump-file       "/var/named/chroot/var/named/data/cache_dump.db";
        statistics-file "/var/named/chroot/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/chroot/var/named/data/named_mem_stats.txt";
        allow-query     { any; };
        recursion no;
        allow-recursion { none; };
};
logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};
zone "." IN {
        type hint;
        file "named.root";
};
include "/var/named/chroot/var/named/named.local";

chkconfig --levels 235 pojmenované na
/etc/init.d/named start

BIND poběží v chrootovém vězení pod /var/named/chroot/var/named/. Pro konfiguraci BIND (zóny atd.) použiji ISPConfig.

18 Instalace Vloggeru, Webalizeru a AWStats

Vlogger, webalizer a AWStats lze nainstalovat následovně:

yum install webalizer awstats perl-DateTime-Format-HTTP perl-DateTime-Format-Builder

cd /tmp
wget http://n0rp.chemlab.org/vlogger/vlogger-1.3.tar.gz
tar xvfz vlogger-1.3.tar.gz
mv vlogger-1.3/vlogger /usr/sbin/
rm -rf vlogger*

19 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!):

cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.14.tar.gz
tar xvfz jailkit-2.14.tar.gz
cd jailkit-2.14
./configure
make
make install
cd ..
rm -rf jailkit-2.14*

20 Instalace fail2ban

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

yum install fail2ban

chkconfig --levels 235 fail2ban na
/etc/init.d/fail2ban start

21 Instalace rkhunter

rkhunter lze nainstalovat následovně:

yum install rkhunter

Dokonalý server – CentOS 5.7 x86_64 [ISPConfig 3] – strana 6

22 Instalace SquirrelMail

Chcete-li nainstalovat webového poštovního klienta SquirrelMail, spusťte...

yum install squirrelmail

... a restartujte Apache:

/etc/init.d/httpd restart

Poté nakonfigurujte SquirrelMail:

/usr/share/squirrelmail/config/conf.pl

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. Témata
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   Vypnout barvu 
S   Uložit data
Q   Ukončit

Příkaz >> <-- D


Konfigurace SquirrelMail : Přečtěte si: config.php
---------------------------- ------------------------------
Zatímco budujeme SquirrelMail , objevili jsme některé 
předvolby které fungují lépe s některými servery, které nefungují tak
dobře s jinými. 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í.

Vyberte svůj IMAP server:
    bincimap    = Binc IMAP server
    
    br / kurýr      = Kurier      = Kurier      = Kurier  > Cyrus =Cyrus IMAP Server
Dovecot =Dovecot Secure IMAP Server
Exchange =Microsoft Exchange Server
HmailServer =HmailServer
Macosx =Mac OS X MailServer
Mercury32 =Merkur /32
    uw          = Server IMAP Washingtonské univerzity

    ukončit         = Nic neměnit
Příkaz >> <-- />

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 nefungujícími servery takže
dobře s ostatními. 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í.

Vyberte svůj IMAP server:
    bincimap    = Binc IMAP server
    
    br / kurýr      = Kurier      = Kurier      = Kurier  > Cyrus =Cyrus IMAP Server
Dovecot =Dovecot Secure IMAP Server
Exchange =Microsoft Exchange Server
HmailServer =HmailServer
Macosx =Mac OS X MailServer
Mercury32 =Merkur /32
    uw          = Server IMAP Washingtonské univerzity

    ukončit         = Nic neměnit
Příkaz >>
dovecot>          map server            _ server                        Default_Folder_PREFIX =
Trash_Folder =Trash
Send_Folder =odeslán
Draft_Folder =Drafts
show_prefix_option =false
default_sub_of_inbox =false
show_contain_subfolders_option =false
            optional_delimiter = detekce
          delete_folder = false

Stisknutím libovolné klávesy pokračujte... <-- stiskněte klávesu


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. Témata
6. Adresáře
7. Zpráva dne (MOTD)
8. Pluginy
9. Databáze
10. Jazyky

D. Nastavit předdefinovaná nastavení pro konkrétní IMAP servery

C   Vypnout barvu 
S   Uložit data
Q   Ukončit

Příkaz >> <--S


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. Témata
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   Vypnout barvu 
S   Uložit data
Q   Ukončit

Příkaz >> <--Q

Poslední věc, kterou musíme udělat, je upravit soubor /etc/squirrelmail/config_local.php a zakomentovat proměnnou $default_folder_prefix – pokud to neuděláte, po přihlášení se ve SquirrelMail zobrazí následující chybová zpráva :Dotaz:CREATE "Odesláno" Důvod uvedený:Neplatný název poštovní schránky.

vi /etc/squirrelmail/config_local.php
<?php

/**
 * Local config overrides.
 *
 * You can override the config.php settings here.
 * Don't do it unless you know what you're doing.
 * Use standard PHP syntax, see config.php for examples.
 *
 * @copyright &copy; 2002-2006 The SquirrelMail Project Team
 * @license http://opensource.org/licenses/gpl-license.php GNU Public License
 * @version $Id: config_local.php,v 1.2 2006/07/11 03:33:47 wtogami Exp $
 * @package squirrelmail
 * @subpackage config
 */

//$default_folder_prefix                = '';
?>

Nyní můžete do prohlížeče zadat http://server1.example.com/webmail nebo http://192.168.0.100/webmail pro přístup ke SquirrelMail.

23 Instalace 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/

Dalším krokem je spuštění

php -q install.php

Tím se spustí instalační program ISPConfig 3:

[[email protected] install]# php -q install.php


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


>> Počáteční konfigurace

Operační systém: CentOS 5 nebo kompatibilní

    Následovat budeme  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í .
    Klepnutím na „konec“ (bez uvozovek) zastavíte instalátor.


Vyberte jazyk (en, de) [cs]: <-- ENTER

Režim instalace (standardní, expertní) [standardní]: <-- ENTER

Úplný kvalifikovaný název hostitele (FQDN) serveru , např. server1.domain.tld  [server1.example.com]: <-- ENTER

Název hostitele serveru MySQL [místní hostitel]: <-- ENTER

Uživatelské jméno kořenového MySQL [ root]: <-- ENTER

Heslo kořene MySQL []: <-- yourrootsqlpas meč

databáze MySQL k vytvoření [dbispconfig]: <-- ENTER

Znaková sada MySQL [utf8]: <-- ENTER

Generování 2048 bit RSA soukromého klíče
...............+++
...+++
zápis nového soukromého klíče do 'smtpd.key'
-----
Chystáte se zadat informace , které budou začleněny 
do vaší žádosti o certifikát.
To, co zadáte Rozlišující jméno nebo DN.
Je zde poměrně několik polí , ale některá můžete ponechat prázdná 
U některých polí bude výchozí hodnota,
Pokud zadáte '.', pole bude bude ponechte prázdné.
-----
Název země (2 písmenný kód) [GB]: <-- ENTER
Název státu nebo provincie (celé jméno) [Berkshire]: <- - ENTER
Název místa (např. město) [Newbury]: <-- ENTER
Název organizace (např. společnost) [My Company Ltd]: <-- ENTER
Název organizační jednotky ( např. sekce) []: <-- ENTER
Běžné jméno (např. vaše jméno nebo název hostitele vašeho serveru) []: <-- ENTER
E-mailová adresa ss []: <-- ENTER
Konfigurace Jailkit
Konfigurace Dovecot
Konfigurace Spamassassin
Konfigurace Amavisd
Konfigurace Getmail
Konfigurace Pureftpd
Konfigurace BIND
Konfigurace Apache
Konfigurace Vloggeru
Konfigurace aplikací vhost
Konfigurace Firewall
Instalace ISPConfig
Port ISPConfig [8080]: <-- ENTER

Konfigurace DBServer
Instalace ISPConfig crontab
žádný crontab pro root
žádný crontab pro getmail
Restartování služeb ...
Zastavení MySQL:      <                                                                                         > Zahájení MySQL:[OK]
Vypnutí postfixu:[OK]
Spuštění postfixu:[OK]
Zastavení Saslauthd:[selhalo]
Zahájení Saslauthd:[OK]
Vypnutí Mail Virus Scanner (amavisd):    [  OK  ]
Spouštění Mail Virus Scanner (amavisd):                      [  OK  ]
Zastavení démona Clam AntiVirus Daemon:"Nastavit režim Anti         [                [                                                            Br /> [OK]
Zastavení Dovecot IMAP:[OK]
Pokud máte potíže s selháním ověřování,
Povolte nastavení auth_debug. Viz http://wiki.dovecot.org/WhyDoesItNotWork
Tato zpráva zmizí po prvním úspěšném přihlášení.
Závažné: listen(::, 143) selhalo: Adresa již použita
Spouštění Dovecot IMAP:[selhal]
Zastavení httpd:[OK]
[Po 26. září 13:29:58 2011] [WARN] JMEZIVIRTUALHOST*:80 nemá žádné virtualhosts
Začátek httpd:[OK ]
Zastavení Pure-FTPD:[OK]
Spuštění Pure-FTPD:[OK]
Instalace dokončena.

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

Pokud se Dovecot nepodaří spustit s následující chybou:

Fatal: listen(::, 143) failed: Address already in use

... otevřete /etc/dovecot.conf...

vi /etc/dovecot.conf 

... a přidejte řádek listen =*:

[...]
#listen = *, [::]
listen = *
[...]

Potom zkuste znovu spustit Dovecot:

/etc/init.d/dovecot start

Poté můžete přistupovat k ISPConfig 3 pod http://server1.example.com:8080/ nebo 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):

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

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

  • CentOS:http://www.centos.org/
  • ISPConfig:http://www.ispconfig.org/

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

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

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

  1. The Perfect Server – CentOS 5.6 x86_64 [ISPConfig 2]

  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 – CentOS 5.7 x86_64 [ISPConfig 2]

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

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