|
ot Miroslav Iordanov(23-11-2003)
reiting (18)
[ dobre ]
[ zle ]
Variant za otpechatvane
Suzdavane na virtualni poshtenski kutii s pomoshtta na popa3d i postfix
V tozi dokument shte se opitam da vi obiasnia kak da izpolzvate virtualni poshtenski kutii s pomoshtta na popa3d i postfix. V dopulnenie shte opisha kak da izpolzvate tezi poshti s openwebmail.
Instalirane na popa3d
Poslednata versiia na popa3d mozhete da izteglite ot http://www.openwall.com/popa3d/ . V momenta na pisaneto na tozi dokument poslednata versiia e 0.6.4, taka che po natam shte izpolzvam neia. Purvo razarhiviraite popa3d i vlezte v novosuzdadenata direktoriia:
|
tar xvfz popa3d-0.6.4.tar.gz
cd popa3d-0.6.4 |
Za da mozhete da kompilirate popa3d s podruzhka za virtualni poshtenski kutii, triabva da redaktirate faila params.h. V nego promenete POP_VIRTUAL i VIRTUAL_ONLY ot 0 na 1. Sled tova triabva da posochite putia, kudeto shte se namirat vashite virtualni poshtenski kutii. Za tazi tsel, promenete VIRTUAL_HOME_PATH. Stoinostta po podrazbirane e “/vhome” - vie ia promenete spored vashite iziskvaniia. V nashiia primer, shte zamenia “/vhome” s "/home/virtual/popa3d/". Eto kak triabva da izglezhdat promenenite redove sled redaktsiiata (propuskam komentarite mezhdu tiah):
Sled kato redaktirahme params.h, triabva da se promeni i Makefile-a. V nego razkomentiraite (t.e. mahnete znaka “#” nai-otpred) reda:
Kompiliraite i instaliraite popa3d s komandite 'make' i 'make install'. Suzdaite neprivilegirovan potrebitel popa3d i grupa popa3d:
|
groupadd popa3d
useradd -g popa3d -d /dev/null -s /dev/null popa3d |
Suzdaite prazna direktoriia /var/empty v koiato popa3d shte se chroot -va:
Nai-nakraia ostana da startirate popa3d. Ako izpolzvate inetd mozhete da dobavite sledniia red v /etc/inetd.conf:
|
pop3 stream tcp nowait root /usr/sbin/tcpd /usr/local/sbin/popa3d |
Ako iskate da izpolzvate pop3 s SSL (pop3s), triabva da instalirate stunnel i da dobavite sledniia red v /etc/inetd.conf:
|
pop3s stream tcp nowait root /usr/sbin/stunnel
stunnel -p /etc/webmin/miniserv.pem -l /usr/local/sbin/popa3d |
V sluchaia az izpolzvam sertifikata generiran pri instalatsiiata na webmin.
Dobaviane na pop3-potrebiteli
Predi tova, niakolko obshti prikazki. Po-rano posochihme direktoriiata, v koiato shte se suhraniavat virtualnite poshtenski kutii (/home/virtual/popa3d/). Popa3d ochakva da nameri v tazi direktoriia, koiato suotvetstva na IP-to, na koeto “slusha”. V povecheto sluchai tova e adresut 127.0.0.1. V tazi direktoriia popa3d ochakva da nameri dve drugi direktorii – auth i mail. V mail-direktoriiata sa poshtenskite kutii – vsiaka poshtenska kutiia e s imeto na potrebitelia. V auth-direktoriiata sa failovete, sudurzhashti potrebitelsko ime i kriptirana parola – vseki fail se kazva na imeto na potrebitelia. Za da stane malko po-iasno, eto kakvi direktorii triabva da suzdadete (v nashiia primer):
|
/home/virtual/popa3d/127.0.0.1/
/home/virtual/popa3d/127.0.0.1/auth/
/home/virtual/popa3d/127.0.0.1/mail/ |
Samoto dobaviane na potrebitelite stava s perl-skripta add-popa3d-user, koito mozhete da izteglite ot http://gene.science.uva.nl/~talerven/software/. Redaktiraite skripta, kato zadadete stoinost na promenlivata $virtual_domain_root_directory. V nashiia primer redut s tazi promenliva triabva da izglezhda taka:
|
my $virtual_domain_root_directory = "/home/virtual/popa3d/127.0.0.1"; |
Sushto taka, triabva da posochite potrebitel, koito da e sobstvenik na virtualnite poshti. Neka v nashiia primer da izpolzvame potrebitelia vmail. Mozhete da go suzdadete s komanda, podobna na tazi:
|
adduser --system --no-create-home vmail |
Sega posochete tozi potrebitel za $virtual_mail_owner:
|
my $virtual_mail_owner = "vmail"; |
Veche ste gotovi da dobaviate potrebiteli. Izpolzvaite skripta add-popa3d-user direktno ili posochete kato argument imeto na potrebitelia, koito iskate da dobavite. Ako potrebiteliat e realen Unix-potrebitel na sistemata, negoviia mailbox-fail shte bude suzdaden sus sobstvenik realniia potrebitel i grupa mail. Ako niama takuv realen potrebitel, mailbox-failut shte bude suzdaden sus sobstvenik vmail (potrebitelia za virtualnata poshta) i grupa mail.
Konfigurirane na postfix
Nakraia stignahme do nai-interesnata chast – konfiguriraneto na postfix. Tuk niama da opisvam instaliraneto na postfix. Ako iskate da nauchite poveche za postfix prochetete statiiata Postfix - burz, siguren i lesen za upravlenie na N. Antonov.
Triabva da dobavite slednite redove vuv faila main.cf (obiknoveno /etc/postfix/main.cf):
|
virtual_transport = virtual
virtual_mailbox_base = /home/virtual/popa3d/127.0.0.1/mail
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
virtual_mailbox_domains = hash:/etc/postfix/vmaildomains
virtual_minimum_uid = 100
virtual_uid_maps = static:112
virtual_gid_maps = static:8 |
virtual_mailbox_base – ukazva putia do poshtenskite kutii
virtual_mailbox_maps – putia do map faila s potrebitelite
virtual_mailbox_domains – putia do map-faila s domeinite
virtual_minimum_uid – minimalnoto uid
virtual_uid_maps – potrebiteliat, s chieto ID shte se zapisvat mailbox-failovete. V nashiia primer tova e 112, ID -to na potrebitelia vmail.
virtual_gid_maps – grupata, s chieto ID shte se zapisvat mailbox failovete. V nashiia primer tova e 8 – grupata mail.
Sega suzdaite faila /etc/postfix/vmaildomains i dobavete v nego domeina za virtualnite poshti po sledniia nachin:
|
domain.name required to prevent relay access denied errors |
Mozhete da dobavite poveche ot edin domein. Sled tova suzdaite faila /etc/postfix/vmailbox i dobavete v nego suzdadenite pop3-virtualni poshtenski kutii. Da priemem, che sme suzdali poshta za potrebitelia test sus skript add-popa3d-user. Togava triabva da zapishem:
Kakto se doseshtate, test@domain.name e email-adresut, a test e mailbox-failut, v koito shte se zapazva poshtata.
Sled suzdavaneto/promenianeto na map-failovete ne zabraviaite da izpulnite komandata postmap za vseki edin ot tiah:
|
postmap /etc/postfix/vmailbox
postmap /etc/postfix/vmaildomains |
Proverete dali vuv faila /etc/postfix/master.cf e komentiran redut:
|
virtual unix - n n - - virtual |
Ako e komentiran, razkomentiraite go.
Sega prezaredete konfiguratsiiata na postfix (s komandata 'postfix reload') i veche mozhete da izpolzvate suzdadenite virtualni poshtenski kutii.
Ostava samo edin problem za razreshavane. Kogato popa3d e kompiliran taka, che da izpolzva virtualni poshtenski kutii, togava toi ne mozhe da raboti s poshtenskite kutii na realnite potrebiteli na sistemata (t.e. realnite potrebiteli niama da mogat da si iztegliat poshtata chrez popa3d). Ediniiat ot nachinite tova da stane vuzmozhno e da predstavite realnite potrebiteli kato virtualni.
Kak stava tova. Purvo dobaviate realnite potrebiteli sus skripta add-popa3d-user. Toi shte razbere, che sa realni potrebiteli i shte suzdade tehnite mailbox-failove s tehnite si prava. Osven tova, shte poiska da vuvedete druga parola za potrebitelia – niama da se izpolzva realnata parola na potrebitelia v sistemata, koeto e plyus za sigurnostta na vashata sistema.
Sled tova triabva da redaktirate main.cf faila na postfix, kato mahnete vashiia hostname ot mydestination. Naprimer, ako vashiiat hostname e example.org, to v momenta vashiia mydestination red izglezhda po podoben nachin:
|
mydestination = example.org, localhost, $localhost.$mydomain |
Sled kato go redaktirate, triabva da izglezhda po lsedniia nachin:
|
mydestination = localhost, $localhost.$mydomain |
Posle dobavete vashiia hostname v /etc/postfix/vmaildomains i realnite potrebiteli v /etc/postfix/vmailbox kakto beshe opisano po gore. Sled redaktiraneto na map failovete, ne zabraviaite da izpulnite komandata 'postmap imeto_na_map_faila' i da prezaredite konfiguratsiiata na postfix.
Zabelezhka
Vuv faila vmailbox niama da mozhete da izpolzvate zapisi ot tipa:
|
test1@domain.name other@email.mail |
Gorniiat zapis NQMA da preprati poshtata kum other@email.mail (kakto predpolagam ste sviknali sus zapisite vuv faila virtual), a shte suzdade virtualna poshtenska kutiia, koiato shte se kazva other@email.mail . Za da mozhete da preprashtate poshtata kum drug email adres, zapishete slednoto v main.cf:
|
virtual_alias_maps = hash:/etc/postfix/vmailalias |
Sled tova vuv faila /etc/postfix/vmailalias mozhete da dobavite reda:
|
test1@domain.name other@email.mail |
Zabelezhka 2
Vklyuchete potrebitelite popa3d i vmail v grupata mail, za da mogat da pishat v poshtenskite kutii na realnite potrebiteli na sistemata bez da vuzniknat problemi s pravata.
Konfigurirane na Openwebmail da izpolzva virtualnite poshti
Za da nastroite vashiia openwebmail da raboti s virtualnite poshtenski kutii, triabva da promenite i dobavite niakolko reda v /etc/openwebmail/openwebmail.conf. Promenete redovete s auth_module i mailspooldir po sledniia nachin:
|
auth_module auth_pop3.pl
mailspooldir /home/virtual/popa3d/127.0.0.1/mail |
Sled tova dobavete slednite redove:
|
use_syshomedir no
use_homedirspools no
enable_changepwd no
enable_autoreply no
enable_setforward no
enable_pop3 yes
pop3_authserver localhost
pop3_authport 110
getmail_from_pop3_authserver yes |
Tova e!
V dopulnenie
Posochenata informatsiia ne pretendira da e pulna i absolyutno tochna!
Ima i drugi resheniia za virtualni poshtenski kutii i postfix – naprimer postfix + vm-pop3d. Mozhe te da sa po podhodiashti za vas.
Kato dopulnitelna dokumentatsiia mozhe da izpolzvate faila VIRTUAL_README ot dokumentatsiiata na postfix, faila INSTALL paketa na popa3d i pop3-ssl-using-popa3d-HOWTO, v koeto se izpolzva exim za MTA (http://gene.wins.uva.nl/~talerven/software/add-popa3d-user/pop3-ssl-using-popa3d-HOWTO).
<< Kak da pusnem VPN pod Linux | CHudniiat sviat na Linuks 2.6 >>
|
|