LINUX-BG Адрес : http://www.linux-bg.org |
Създаване на виртуални пощенски кутии с popa3d и postfix |
От: Мирослав Йорданов Публикувана на: 23-11-2003 Адрес на статията: http://www.linux-bg.org/cgi-bin/y/index.pl?page=article&id=programs&key=356532488 |
Създаване на виртуални пощенски кутии с помощта на popa3d и postfix
В този документ ще се опитам да ви обясня как да използвате виртуални пощенски кутии с помощта на popa3d и postfix. В допълнение ще опиша как да използвате тези пощи с openwebmail.
Инсталиране на popa3d
За да можете да компилирате popa3d с подръжка за виртуални пощенски кутии, трябва да редактирате файла params.h. В него променете POP_VIRTUAL и VIRTUAL_ONLY от 0 на 1. След това трябва да посочите пътя, където ще се намират вашите виртуални пощенски кутии. За тази цел, променете VIRTUAL_HOME_PATH. Стойността по подразбиране е “/vhome” - вие я променете според вашите изисквания. В нашия пример, ще заменя “/vhome” с "/home/virtual/popa3d/". Ето как трябва да изглеждат променените редове след редакцията (пропускам коментарите между тях):
След като редактирахме params.h, трябва да се промени и Makefile-а. В него разкоментирайте (т.е. махнете знака “#” най-отпред) реда:
Компилирайте и инсталирайте popa3d с командите 'make' и 'make install'. Създайте непривилегирован потребител popa3d и група popa3d:
Създайте празна директория /var/empty в която popa3d ще се chroot -ва:
Най-накрая остана да стартирате popa3d. Ако използвате inetd можете да добавите следния ред в /etc/inetd.conf:
Ако искате да използвате pop3 с SSL (pop3s), трябва да инсталирате stunnel и да добавите следния ред в /etc/inetd.conf:
В случая аз използвам сертификата генериран при инсталацията на webmin.
Добавяне на pop3-потребители
Самото добавяне на потребителите става с perl-скрипта add-popa3d-user, който можете да изтеглите от http://gene.science.uva.nl/~talerven/software/. Редактирайте скрипта, като зададете стойност на променливата $virtual_domain_root_directory. В нашия пример редът с тази променлива трябва да изглежда така:
Също така, трябва да посочите потребител, който да е собственик на виртуалните пощи. Нека в нашия пример да използваме потребителя vmail. Можете да го създадете с команда, подобна на тази:
Сега посочете този потребител за $virtual_mail_owner:
Вече сте готови да добавяте потребители. Използвайте скрипта add-popa3d-user директно или посочете като аргумент името на потребителя, който искате да добавите. Ако потребителят е реален Unix-потребител на системата, неговия mailbox-файл ще бъде създаден със собственик реалния потребител и група mail. Ако няма такъв реален потребител, mailbox-файлът ще бъде създаден със собственик vmail (потребителя за виртуалната поща) и група mail.
Конфигуриране на postfix
virtual_mailbox_base – указва пътя до пощенските кутии virtual_mailbox_maps – пътя до map файла с потребителите virtual_mailbox_domains – пътя до map-файла с домейните virtual_minimum_uid – минималното uid virtual_uid_maps – потребителят, с чието ID ще се записват mailbox-файловете. В нашия пример това е 112, ID -то на потребителя vmail. virtual_gid_maps – групата, с чието ID ще се записват mailbox файловете. В нашия пример това е 8 – групата mail. Сега създайте файла /etc/postfix/vmaildomains и добавете в него домейна за виртуалните пощи по следния начин:
Можете да добавите повече от един домейн. След това създайте файла /etc/postfix/vmailbox и добавете в него създадените pop3-виртуални пощенски кутии. Да приемем, че сме създали поща за потребителя test със скрипт add-popa3d-user. Тогава трябва да запишем:
Както се досещате, test@domain.name е email-адресът, а test е mailbox-файлът, в който ще се запазва пощата. След създаването/променянето на map-файловете не забравяйте да изпълните командата postmap за всеки един от тях:
Проверете дали във файла /etc/postfix/master.cf е коментиран редът:
Ако е коментиран, разкоментирайте го. Сега презаредете конфигурацията на postfix (с командата 'postfix reload') и вече можете да използвате създадените виртуални пощенски кутии. Остава само един проблем за разрешаване. Когато popa3d е компилиран така, че да използва виртуални пощенски кутии, тогава той не може да работи с пощенските кутии на реалните потребители на системата (т.е. реалните потребители няма да могат да си изтеглят пощата чрез popa3d). Единият от начините това да стане възможно е да представите реалните потребители като виртуални. Как става това. Първо добавяте реалните потребители със скрипта add-popa3d-user. Той ще разбере, че са реални потребители и ще създаде техните mailbox-файлове с техните си права. Освен това, ще поиска да въведете друга парола за потребителя – няма да се използва реалната парола на потребителя в системата, което е плюс за сигурността на вашата система. След това трябва да редактирате main.cf файла на postfix, като махнете вашия hostname от mydestination. Например, ако вашият hostname е example.org, то в момента вашия mydestination ред изглежда по подобен начин:
След като го редактирате, трябва да изглежда по лседния начин:
После добавете вашия hostname в /etc/postfix/vmaildomains и реалните потребители в /etc/postfix/vmailbox както беше описано по горе. След редактирането на map файловете, не забравяйте да изпълните командата 'postmap името_на_map_файла' и да презаредите конфигурацията на postfix. Забележка Във файла vmailbox няма да можете да използвате записи от типа:
Горният запис НЯМА да препрати пощата към other@email.mail (както предполагам сте свикнали със записите във файла virtual), а ще създаде виртуална пощенска кутия, която ще се казва other@email.mail . За да можете да препращате пощата към друг email адрес, запишете следното в main.cf:
След това във файла /etc/postfix/vmailalias можете да добавите реда:
Забележка 2 Включете потребителите popa3d и vmail в групата mail, за да могат да пишат в пощенските кутии на реалните потребители на системата без да възникнат проблеми с правата.
Конфигуриране на Openwebmail да използва виртуалните пощи
След това добавете следните редове:
Това е!
В допълнение << Как да пуснем VPN под Linux | Чудният свят на Линукс 2.6 >> |
Авторите на сайта, както и техните сътрудници запазват авторските права върху собствените си материали публикувани тук,
но те са copyleft т.е. могат свободно да бъдат копирани и разпространявани с изискването изрично да се упоменава името на автора,
както и да се публикува на видно място, че те са взети от оригиналния им URL-адрес на този сървър (http://www.linux-bg.org). Авторските права на преводните материали принадлежат на техните автори. Ако с публикуването тук на някакъв материал неволно са нарушени нечии права - след констатирането на този факт материалът ще бъде свален.
All trademarks, logos and copyrights mentioned on this site are the property of their respective owners.
|