LINUXSOFT.cz
Username: Password:     
    CZ UK PL

> IspCP(2) - CLI nástroje, ochrana e-mailov a PostgreSQL

Vítam Vás pri ďaľšej časti o IspCP. Dnes sa pozriemena to, ako spravovať IspCP pomocou konzolových nástrojov, potom si doinštalujeme podporu spam filtera a antivíru a nakoniec si ukážeme ako pridať podporu PostgreSQL.

14.5.2010 07:00 | Tomáš Srnka | read 6156×

DISCUSSION   

Konzolové nástroje IspCP

Poznámka: Popisované nástroje nie sú súčasťou oficiálneho balíku IspCP. Ide o nástroje tretích strán, ktoré sú vyvíjané komunitou. Príklady v tejto sekcii sú otestované na verzií 1.0.4. Pokiaľ máte inú verziu IspCP, prosím stiahnite si scripts.tar.gz k príslušnej verzii z diskusného fóra IspCP.

Keď už máme nainštalované IspCP, občas nastane situácia, kedy sa nám môže hodiť správa z konzoly. Napríklad pri prechod z iných webhostingových panelov vieme využiť tieto nástroje na automatizovanie celého procesu. Z tohto dôvodu vznikol súbor CLI PHP skriptov, ktoré si teraz nainštalujeme a ukážeme si ich použitie.

Vzhľadom na to, že je potrebné sa registrovať na diskusnom fóre IspCP, aby ste si mohli stiahnuť dané skripty, skripty sme umiestnili na linuxsoft.cz, odkiaľ si ich môžete bez problémov stiahnuť.

# wget http://linuxsoft.cz/img/ispcp2/scripts_1_0_4.tar.gz -O /tmp/scripts_1_0_4.tar.gz

Odporúčam stiahnutý súbor .tar.gz rozbaliť do /var/www/ispcp/. Tým sa skripty uložia do adresára /var/www/ispcp/scripts/ .

# tar xvfz scripts_1_0_4.tar.gz /var/www/ispcp/

V tomto adresári sa nachádza aj konfiguračný súbor config.php.dist, ktorý je potrebné skopírovať do config.php.

# cd /var/www/ispcp/scripts/
# cp config.php.dist config.php

Následne je potrebné upraviť config.php, aby odpovedal Vašej konfigurácii. Vo výsledku by mal obsahovať podobné údaje:

<?php
// Pripojenie k databazi
$db_user = "ispcp";
$db_password = "heslo";
$db_host = "localhost";

// e-mailova adresa, z ktorej sa posielaju informacie uzivatelom
$default_mail = "admin@domena.sk";
// Predvolena IP adresa
$default_ip_id = "1";
// Predvoleny hosting plan
$default_hosting_plan = "default";
// Kto vlastni hostingove plany?
$plan_owner = "reseller";
// Vytvorene uzivatelom
$created_by = "tomas";
// Jazyk uzivatelov (standardne: lang_EnglishBritain)
$user_lang = "lang_EnglishBritain";
?>

V adresári sa nachádzajú dva skripty: domain.php - slúži na správu domén, ftp účtov, e-mailov - teda umožnuje ich vytváranie a mazanie. domain_dns.php - pomáha spravovať DNS záznamy domén. Na rozdiel od webového rozhrania, tento skript Vám umožnuje pridávať rôzne záznamy k doménam, ktoré sú podporované control panelom.

Prejdime teda k samotnej práci s CLI nástrojmi. Domain.php podporuje nasledujúce operácie:

create_domain
fix_htdocs_owner
pozn: Služí na opravenie vlasníka adresáru domény vrátane celého adresára htdocs
create_ftp
create_mail
create_mail_alias
create_dom_alias
create_db
create_db_user
create_subdomain
regenerate_domain
create_default_mail
disable_mail
enable_mail
delete_domain
delete_alias

Pokiaľ je config.php správne upravený, vyskúšame si pridávanie doménu pomocou domain.php:

# php domain.php --action create_domain --created_by 'reseller' \
--domain 'mojanovadomena.sk' --password 'heslo' --hosting_plan 'Profil'

Ak všetko prebehlo v poriadku, výstup by mal vyzerať nasledovne:

Creating the default user for mojanovadomena.sk 
User created

Ako druhý príklad si vytvoríme základné e-mailové účty, teda postmaster@, webmaster@ a abuse@:

# php domain.php --action 'create_default_mail' --domain 'mojanovadomena.sk';

Výsledok by mal vyzerať nasledovne:

Creating the default mailboxes webmaster, postmaster and abuse for mojanovadomena.sk

Obdobne je možné použiť skript na všetky vyššie zmienené úkony.

Druhý skript domain_dns.php slúži na pridávanie DNS záznamov, teda obsahuje iba jednu operáciu - “create_dns”. V ukážke pridáme MX záznam “mail.domena.sk” pre domena1.sk:

# php domain_dns.php --action 'create_dns' --domain 'domena1.sk' --dns_type 'MX' \
--dns_sub 'domena1.sk.' --dns_txt 'mail.domena.sk' --dns_prio '20'

Do budúcna sa plánuje zaradiť tieto nástroje do oficiálneho vydania IspCP, do tej doby je ich potrebné používať s opatrnosťou. Verím však, že Vám tieto skripty pomôžu k efektívnejšej a jednoduchšej správe domén.

Spam Filter za pomoci MailScanner+ClamAV+SpamassAssin

Poznámka: Táto sekcia je priame pokračovanie minulého dielu. Predpokladá sa teda, že systém je postavený na Debian Linux Lenny s nainštalovaným IspCP bez úprav.

V dobe keď je viac ako 90% všetkych zaslaných e-mailov nevyžiadaných, je takmer nemožné prevádzkovať e-mailový server bez adektvátnej spam ochrany. IspCP v základnej inštalácii neobsahuje žiadne riešenie na kontrolu e-mailov. Preto osobne už niekoľko rokov používam k plnej spokojnosti riešenie postavené na MailScanner+ClamAV+SpamAssassin, ktoré si dnes popíšeme.

MailScanner sa žial nenachádza v oficálnych balíkoch Debianu, preto je potrebné si pridať backport repozitáre:

# echo "deb http://www.backports.org/debian lenny-backports main contrib non-free" >> /etc/apt/sources.list
# wget -O - http://backports.org/debian/archive.key | apt-key add -
# aptitude update

Teraz už môžeme nainštalovať potrebné balíčky z backports:

# aptitude -t lenny-backports install mailscanner clamav pyzor razor spamassassin

Ďalej pripravíme adresáre pre SpamAssassin:

# mkdir /var/spool/MailScanner/spamassassin
# chown postfix:postfix /var/spool/MailScanner/spamassassin
# chown postfix:postfix /var/spool/MailScanner/spamassassin

V ďalšom kroku nakonfigurujeme MailScanner. Nakoľko je zmien v súbore veľa a konfiguračný súbor je možné prenášať bez problémov medzi systémami, rozhodol som sa použiť už prepripravený súbor:

# cd /etc/MailScanner
# cp MailScanner.conf MailScanner.conf.dist
# wget http://vpsfree.cz/download/ispcp/MailScanner.conf -O /etc/MailScanner/MailScanner.conf

Ostáva nám ešte nakonfigurovať postfix, aby zachytával e-maily pre MailScanner. To docielime pridaním header_checks do main.cf a vytvorením pravidla pre zachytávanie pošty:

# cd /etc/postfix/
# cp main.cf main.cf.dist
# echo "header_checks = regexp:/etc/postfix/header_checks" >> main.cf
# touch /etc/postfix/header_checks
# echo "/^Received:/ HOLD" > /etc/postfix/header_checks

V poslednom kroku iba zabezpečíme, aby sa MailScanner spúštal automaticky pri štarte. To dosiahneme odstránením komentáru, čiže znaku #, v súbore /etc/default/mailscanner, aby sme dostali:

run_mailscanner=1

Všetko je už nakonfigurované, takže odteraz nám Mailscanner kontroluje príchodziu aj odchodziu poštu pomocou spamfilteru aj antivíru. Ostáva nám už iba spustiť mailscanner a postfix:

/etc/init.d/mailscanner start
/etc/init.d/postfix start

Inštalácia PostgreSQL a phpPgAdmin

Cieľom tejto sekcie je ukázať a popísať rôzne konfiguračné súbory IspCP na praktickom príklade. Ako náš príklad nám poslúži inštalácia PostgreSQL databázového serveru a webovej aplikácie phpPgAdmin.

Na inštalacií PostgreSQL nie je nič výnimočné a na internete je možné nájsť veľké množstvo postupov, preto sa budeme zaoberať konfiguráciou a inštaláciou iba okrajovo. Avšak, aby aj phpPgAdmin fungoval správne a automaticky sa nastavovali aliasy, je potrebné urobiť niekoľko krokov, ktoré si vrámci ukážky opíšeme.

IspCP udržuje všetky konfiguračné súbory na jednom mieste - /etc/ispcp/. Keď sa pozrieme bližšie na obsah, vidíme, že obsahuje adresáre všetkých služieb, ktoré IspCP ako také využíva:

# ls
apache  awstats  bind  courier  cron.d  database  fcgi  ispcp.conf  postfix  proftpd

Adresár každej služby obsahuje tri podadresáre. V prvom z trojice - working, nájdeme aktuálnu kópiu prevádzkovaných konfiguračných súborov. Ak by ste niekedy zmenili konfiguračný súbor ktorejkoľvek služby manuálne, je potrebné ho ihneď skopírovať aj do adresára working - v opačnom prípade Vám IspCP po krátkom čase prepíše Váš súbor kópiou z working adresára. Teda v prípade apache tam nájdeme súbor ispcp.conf s konfiguráciou všetkých domén. Adresár backup obsahuje kópiu súborov pred zmenami, ktoré vykonal IspCP. Posledný adresár parts nás bude najviac zaujímať - obsahuje šablony súborov (ináč nazývane šablóny), podľa ktorých sa generujú konfiguračné súbory. Tým vieme zabezpečiť, aby napríklad každá novo pridaná doména obsahovala automaticky alias na webmail na adrese mojadomena.sk/webmail.

V prvej časti tohto článku je pri nástroji domain.php zmienená možnosť regenerate_domain - práve tu môžeme uplatniť túto funkciu. Ak zmeníme template a chceme, aby aj už existujúce domény obsahovali túto úpravu, možeme si napísať jednoduchý skript, ktorý pregeneruje všetky existujúce domény.

Teraz už k sľúbenému praktickému príkladu. Iba pripomínam, že príklad je, ako zvyčajne, písaný pre Debian Linux.

Najprv si nainštalujeme PostgreSQL a phpPgAdmin z repozitárov:

# aptitude install phppgadmin postgresql

Po inštalácií je potrebné vytvoriť účet administrátora pre PostgreSQL a nastaviť mu heslo. Nasledujúce kroky je potrebné vykonávať ako postgres užívateľ:

# su postgres

Vytvoríme účet administrátora nazvaný admin a nastavíme mu práva superuser.

 
$ createuser admin
 ¿Shall the new role be a superuser? (y/n) ? y

Nastavíme heslo novovytvorenému užívateľovi “admin”:

$ psql postgres
  alter user admin with password 'moje_heslo';
 \q

Spustíme PostgreSQL:

# /etc/init.d/postgresql-8.3 start

Týmto je minimálna konfigurácia PostgreSQL ukončená a my sa ďalej pozrieme na konfiguráciu phpPgAdmin.

Ako prvé skopírujeme phppgadmin do adresára s GUI nástrojmi IspCP:

# cp -r /usr/share/phppgadmin/ /var/www/ispcp/gui/tools

Následne upravíme konfiguračné súbory, aby obsahovali alias na /phppgadmin. Na to je potrebné vykonať úpravy v súboroch uložených v /etc/ispcp/apache, teda v konfiguračných súboroch, ktoré sme si popísali.

Otvoríme si súbor /etc/ispcp/apache/00_master.conf a pridáme k trom už existujúcim aliasom ďaľší:

Alias /phppgadmin {ROOT_DIR}/gui/tools/phppgadmin/

Takmer zhodnú úpravu vykonáme v súbore /etc/ispcp/apache/parts/dmn_entry.tpl kam pridáme za už existujúce tri RedirectMatch pravidlá nové pravidlo:

RedirectMatch permanent ^/phppgadmin([\/]?) http://{BASE_SERVER_VHOST}/phppgadmin/

Tieto úpravi nám zabezpečia automatické pridávanie aliasov ku každej novo pridanej doméne. Ako upraviť existujúce domény? To už nechám na každého z Vás, verím, že to ľahko zvládnete.

Záver

V dnešnej, záverečnej časti sme si úkazali, ako spravovať IspCP z konzoly, ako sprevádzkovať spam filter na poštu a nakoniec sme si popísali a ukázali konfiguračné súbory. Verím, že Vám IspCP uľahčí prácu s veľkým množstvom domén a poskytne dostatočnú voľnosť na vlastné úpravy. Ak by ste mali akékoľvek otázky alebo komentáre, neváhajte ich napísať pod článok.

 

DISCUSSION

For this item is no comments.

Add comment is possible for logged registered users.
> Search Software
> Search Google
1. Pacman linux
Download: 4789x
2. FreeBSD
Download: 8979x
3. PCLinuxOS-2010
Download: 8485x
4. alcolix
Download: 10793x
5. Onebase Linux
Download: 9565x
6. Novell Linux Desktop
Download: 0x
7. KateOS
Download: 6134x

1. xinetd
Download: 2326x
2. RDGS
Download: 937x
3. spkg
Download: 4542x
4. LinPacker
Download: 9789x
5. VFU File Manager
Download: 3112x
6. LeftHand Mała Księgowość
Download: 6996x
7. MISU pyFotoResize
Download: 2696x
8. Lefthand CRM
Download: 3482x
9. MetadataExtractor
Download: 0x
10. RCP100
Download: 2994x
11. Predaj softveru
Download: 0x
12. MSH Free Autoresponder
Download: 0x
©Pavel Kysilka - 2003-2024 | mailatlinuxsoft.cz | Design: www.megadesign.cz