Webszerver
Talán már le se kell írnom, hogy hozzuk létre a jail fájlrendszerét a leírt módon, illetve az adatok tárolásához szükséges fájlrendszert, majd belépve telepítsük fel az apache22 kiszolgálót, amelyet akár el is indíthatunk, hiszen nem kell semmi különös beállítás. A webszerver feladate alapvetően weboldalak kiszolgálása lesz, illetve különféle – többnyire PHP – alkalmazások futtatása.
Mivel már telepítettünk fel Apache kiszolgálót az első jail fejezetben, végezzük el ismét az ott olvasható lépéseket.
Az Apache kiszolgáló – eléggé elitélhető módon – nem képes Syslog használatára, ezért képes a jail teljes fájlrendszerét megtölteni a növekvő logfájlokkal. A trükk egyszerűen annyi, hogy a FreeBSD alaprendszer részét képező /usr/bin/logger programot használjuk fel arra, hogy az Apache bejegyzéseit továbbítsa a lokális syslog-ng2 felé, amely persze rögtön továbbküldi a logserver-nek.
Az elmélet gyakorlatba ültetése mindössze annyi, hogy az Apache Includes könyvtárába felvesszük a logger.conf állományt az alábbi tartalommal:
ErrorLog "|/usr/bin/logger -i -p local0.error -t httpd" LogLevel warn <IfModule log_config_module> LogFormat "%h %v %l %u \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined CustomLog "|/usr/bin/logger -i -p local0.warn -t httpd" Combined </IfModule>
Az Includes könyvtárba célszerű írnunk az összes saját módosítást, mivel ebből a könyvtárból betöltődik az összes *.conf állomány, és az Apache úgy tekinti, mintha ezek is a httpd.conf részét képeznék. Természetesen ha a "gyári" beállítások között azonos opciót állítunk át, akkor az Includes könyvtárban lévő lesz érvényes.
Bár még nincs itt az ideje, de célszerű felvennünk a PHP5 támogatást az webszerverünkbe, különben nem fognak működni a feltelepített PHP programok:
<IfModule php5_module> <IfModule mime_module> AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps </IfModule> </IfModule>
Webes levelezés
Elsőképp állítsunk be egy webes levelezőrendszert, az én kedvencem a squirrelmail, függőségként feltelepül a php5 is, amelynél válasszuk ki opcióként az APACHE, a MULTIBYTE opciót is, mivel csak ekkor tudatosul az apache kiszolgálóban, hogy van neki php5 modulja is. Nézzük a squirrelmail beállításait:
[root@httpd:/usr/local/www/squirrelmail]$ cd ~ [root@httpd:~]$ cd /usr/local/www/squirrelmail/ [root@httpd:/usr/local/www/squirrelmail]$ ./configure
Kapunk egy menüvezérelt felületet, ahol pár dolgot be tudunk állítani:
- 2. Server Settings
- 1. Domain – mail.javaforum.hu
- 2. Invert Time – false
- 3. Sendmail or SMTP – SMTP
- A. Update IMAP Settings
- 4. IMAP Server – mail.jails.javaforum.hu
- 5. IMAP Port – 143
- 6. Authentication type – login
- 7. Secure IMAP (TLS) – false
- 8. Server software – dovecot
- 9. Delimiter – detect
- B. Update SMTP Settings
- 4. SMTP Server – mail.jails.javaforum.hu
- 5. SMTP Port – 25
- 6. POP before SMTP – false
- 7. SMTP Authentication – none
- 8. Secure SMTP (TLS) – false
- 9. Header encryption key –
- 4. General Options
- 1. Data Directory – /data/squirrelmail/pref/
- 2. Attachment Directory – /data/squirrelmail/attach/
- S. Save Data
A többit a mentés előtt értelemszerűen ki lehet tölteni saját ízlésünk szerint, azonban ne felejtsük el létrehozni a /data alá a squirrelmail könyvtárat a megfelelő jogokkal:
[root@mail:/mails]$ mv /var/spool/squirrelmail/ /data/
A levelezés eléréséhez felhasználjuk az Apache virtuális hoszt képességét, amivel több domén nevet is képes kiszolgálni. Ehhez elsőképp az alábbi fájlt kell létrehoznunk:
NameVirtualHost *:80
Ettől az Apache képes lesz több domént kiszolgálni. Vegyük fel gyorsan egy virtuális hoszt konfigurációt a hu.javaforum.mail.conf állományban:
<VirtualHost *:80> ServerAdmin auth.gabor@javaforum.hu DocumentRoot /usr/local/www/squirrelmail/ ServerName mail.javaforum.hu ServerAlias mail.1000birka.hu ServerAlias mail.enaplo.hu ServerAlias mail.javakocsma.hu DirectoryIndex index.php index.html index.htm <Directory /usr/local/www/squirrelmail/> Options FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> </VirtualHost>
Nem túl összetett az állomány, az elején fel kell sorolnunk azokat a doméneket, amelyeket ki akarunk szolgálni, megadjuk a weboldalak gyökerét, amely a squirrelmail könyvtára, illetve elérési jogot adunk erre a könyvtárra. Az Apache újratöltése után már el kell érnünk a levelezőprogram webes felületét.
Ezek után egyszerűen navigáljunk el a mail.javaforum.hu címre és nézzük meg mit dolgoztunk.
Proxy
Ha csak egy IP címünk van, akkor gondot okozhat több webkiszolgáló üzemeltetése, gondoljunk csak arra, hogy van már egy Apache kiszolgáló a mailman és a munin jail-ben, amelyekhez vagy kérünk publikus IP címet, vagy az ipnat használatávan más portról irányítjuk át a kéréseket, vagy használjuk az Apache mod_proxy tudását.
Gyakorlatilag az alábbi konfigurációs fájlt kell használnunk:
<VirtualHost *:80> ServerAdmin auth.gabor@javaforum.hu DocumentRoot /usr/local/www/apache22/data/ ServerName lists.javaforum.hu DirectoryIndex index.php index.html index.htm <Location /> ProxyPass http://mailman.jails.javaforum.hu:80/ ProxyPassReverse http://mailman.jails.javaforum.hu:80/ </Location> ProxyVia Off ProxyPreserveHost On </VirtualHost>
A lists.javaforum.hu doménre érkező kéréseket továbbítjuk a mailman jail felé.
Biztonságos kapcsolat
...