Linux jako server/Etch/Pošta: Porovnání verzí

Smazaný obsah Přidaný obsah
Hugo (diskuse | příspěvky)
Zrušena verze 39544 od uživatele 192.162.96.50 (diskuse)
značka: vrácení zpět
Řádek 404:
Zatímco u jednodoménového řešení má každý uživatel přidaný do systému automaticky schránku, u vícedoménového to tak jednoduché není. Virtuální domény si žádají virtuální muže! A ženy. A děti. Jenže kam s nimi? Do databáze! A do jaké? No, nabízí se především SQL, či LDAP. LDAP je (jak říká kamarád) řešení "overkill", takže zůstaneme u SQL.
 
Programy, které použijeme, umějí pracovat jak s MySQL, tak s PostgreSQL. Ačkoli tu popisujeme řešení s MySQL, řešení s PostreSQL je tak podobné, že by bylo zbytečné ho tu rozpitvávat.
 
V SQL databázi budeme mít tabulky:
* s virtuálními uživateli, jejich hesly (šifrovaná MD5) a umístěním adresářů na poštu
* poštu
* s aliasy uživatelů
* s virtuálními doménami
* s administrátory
Databázi budeme spravovovat přes webové rozhraní programu Postfix Admin, což je vážně pohoda. Naší databázi bude rozumět jak Postfix, tak Dovecot. Co víc si přát? Dejme se do toho
 
=== Instalace MySQL ===
toho
 
Dá se předpokládat, že SQL databázi už máte nainstalovanou, pokud ne, vyhoví nám MySQL ve verzi 4.1 a vyšší.
=== MySQL ===
 
Pokud máte raději PostgreSQL, tak vás snad potěší, že všechny použité programy umí i tuto databázi. Pokud tuto variantu vyzkoušíte, bude skvělé, když tento návod o případné ochylky obohatíte.
vyšší.
 
Chcete-li mít v MySQL jako výchozí kódování znaků UTF-8 a třídit česky, dejte do /etc/mysql/conf.d/ soubor (název libovolný) s tímto obsahem:
obohatíte.
 
[mysqld]
obsahem:
language = /usr/share/mysql/czech
 
character_set_server = utf8
collation_server = utf8_czech_ci
 
=== Squirrelmail ===
 
Budeme instalovat balíčky:
* squirrelmail
* squirrelmail-locales
Počítáte-li s exotickými kódováními v e-mailech, dejte ještě balíček
 
balíček
* squirrelmail-decode
 
=== Postfix admin (pfadmin) ===
 
Není součástí Debianího archivu, takže si ho stáhneme ze [http://sourceforge.net/projects/postfixadmin/ SourceForge].
 
Stažený soubor je zagzipovaný tar archiv. Rozbalíme ho do /var/www/postfixadmin.
 
Nyní budeme věnovat pozornost dvěma konfiguračním souborům: <code>config.inc.php</code> a <code>DATABASE_MYSQL.TXT</code>. Samozřejmě se nedopustíme chyby přečtením <code>INSTALL.TXT</code>.
<code>INSTALL.TXT</code>.
 
==== config.inc.php ====
 
Vyrobíme zkopírováním config.inc.php.sample:
 
cp config.inc.php.sample config.inc.php
 
A pak si ho trochu upravíme.
* Můžeme změnit <code>default_language</code> na "cs"
* "cs"
* <code>database_type</code> bude "mysqli" (ano, na konci je i).
* i).
* Bude vhodné si změnit heslo pro přístup do databáze <code>database_password</code>.
* <code>admin_email</code> - třeba postmaster@skutecna.cz
* <code>generate_passwords</code> bych nastavil na "NO". Automaticky generovaná hesla stejně nikdo nemá rád. Ale na druhou stranu, není to nic špatně.
* špatně.
* <code>default_aliases</code> - tomu se dá rozumět.
* kvóty; hlavně <code>maxquota</code> - výchozí hodnta 10MB se mi nezdá moc. Já přidal nulu, takže 100.
* 100.
* <code>quota</code> - vynucení kvóty změníme na YES, ale třeba až bude všechno fungovat. Když "NO", tak bude mít uživatel informaci o tom, kolik prostoru zabírá, ale nebude omezován.
* omezován.
* <code>logging</code> - bych nechal na "YES". Log se zapisuje do SQL databáze a obsahuje informace o přidaných/změněných uživatelích, doménách, aliasech... Tedy užitečné informace.
* informace.
* <code>footer_text</code> se objeví dole na každé stránce a dá se na něj kliknout. Dostanete se pak na stránku na adrese v dalším parametru <code>footer_link</code>. Tam bych dal odkaz na postfixadmin - login.php. Bude-li pfadmin na vlastní doméně třetí úrovně, pak by to mohlo vypadat takto: <nowiki>https://pfadmin.skutecna.cz:4440/login.php</nowiki>.
*<nowiki>https://pfadmin.skutecna.cz:4440/login.php</nowiki>.
 
Ostatní věci v tomto konfiguráku si pročtěte taky. Já jen chtěl upozornit na ty podstatnější.
podstatnější.
 
==== generování sql databáze ====
 
<code>DATABASE_MYSQL.TXT</code> je další soubor, který nás bude extrémně zajímat.
zajímat.
 
Hned první "INSERT" vytváří uživatelele pro přístup do naší SQL databáze. Ta se bude jmenovat "postfix", ale heslo nenecháme "postfix", ale nastavíme si tu jiné.
jiné.
 
O pár řádek níž je další "INSERT" pro uživatele "postfixadmin". Tomu upravíme heslo na stejné, jako jsme dali do <code>database_password</code> v <code>config.inc.php</code> výše.
výše.
 
A pak už jen spustíme tvorbu databáze:
 
# mysql -u root [-p] < DATABASE_MYSQL.TXT
 
==== Nastavení virtuální domény pro pfadmina ====
==== fadmina ====
 
Přečtěte si [[../web]]. Tady to jen velmi stručně ukážu.
ukážu.
 
Pfadmin bude naslouchat na portu 4440 a bude přístupný pouze po šifrované lince (ssl). Port si samozřejmě můžete vybrat jiný.
jiný.
 
* Budeme muset vygenerovat klíč/certifikát pro doménu pfadmin.skutecna.cz a uložit do adresáře "ssl" v adresáři /etc/apache2.
* /etc/apache2.
* Uděláme konfigurák pro doménu v sites-available s názvem "pfadm.skutecna.cz".
Listen 4440
NameVirtualHost *:4440
<VirtualHost *:4440>
DocumentRoot /var/www/postfixadmin
ServerName pfadm.no-frost.cz
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/pfadm.skutecna.cz.crt
SSLCertificateKeyFile /etc/apache2/ssl/pfadm.skutecna.cz.key
</VirtualHost>
* Zadáme příkaz, který nám doménu přidá do sites-enabled:
# a2ensite pfadm.skutecna.cz