Допълнителни функции на PostfixAdmin на FreeBSD

В тази публикация няма дума за това какво е PostfixAdmin и как да го включите в пощенската система. В мрежата има голям брой добри статии по тази тема. Например „прецаках“ PostfixAdmin към базирана на постфикс система за мейл офис, съгласно инструкциите на Алексей (известен още като ALex_hha) Конфигуриране на Postfix + Courier-IMAP + Cyrus-sasl2 на FreeBSD - Част I. Тази бележка допълва съществуващите статии и разглежда такива функции на PostfixAdmin, като: автоматичен отговор, събиране на поща, създаване на групови псевдоними, почистване на диска от пощенски кутии, изтрити чрез GUI. Според мен тези въпроси се разглеждат твърде кратко в рускоезичните документи, затова реших да попълня празнината.

Първоначални данни

Има сървър с FreeBSD, на който, наред с други неща, е разположена базирана на постфикс система за среден офис поща. За управление на пощенската система се използва PostfixAdmin, конфигуриран съгласно статията Конфигуриране на пощенската система на freebsd. Част I. За да активираме горните функции PostfixAdmin, ни трябва Fetchmail (за събиране на поща от отдалечени сървъри) и sudo (за да стартираме скрипта с привилегиите на необходимия акаунт). Целият софтуер ще се инсталира от портове, затова препоръчвам да ги актуализирате, преди да изпълните стъпките по-долу (използвах FreeBSD 7.0 и най-новите портове за него). Всички имена на папки следват стойностите по подразбиране, избрани по подразбиране при инсталиране на софтуер от портове.

Телефонен секретар

функции

При извършване на действията, описани в този раздел, бях ръководен от документа INSTALL.TXT, намиращ се в/usr/local/www/postfixadmin/VIRTUAL_VACATION .
За да конфигурирате автоматичния отговор, на първо място, трябва да създадете потребителя на ваканция и групата за ваканция, под които ще се изпълнява скриптът vacation.pl, да създадете домашната папка на потребителя на ваканция, да поставите скрипта vacation.pl в него и да промените собственик на папка и права за скриптове съответно:

След това трябва да промените скрипта за отпуск.pl, който сте копирали по-рано. По-специално, редовете, определящи типа на използваната база данни, потребителско име/парола/име на база данни, трябва да бъдат променени:

След това трябва да добавите дефиницията за транспорт на ваканция към файла master.cf, намиращ се в/usr/local/etc/postfix:

Ако от съображения за сигурност вашата файлова система/var има атрибут noexec (моят има), добавете пътя към интерпретатора Perl към командния ред, в противен случай скриптът vacation.pl няма да може да се изпълни:

След това добавете ред, дефиниращ транспорт за ваканция, към транспортния файл в/usr/local/etc/postfix, който е транспортната таблица. Форматът на този файл е описан в транспорт (5). Добавеният ред изглежда така:

След модифициране на транспортния файл, трябва да изпълните командата postmap с името на транспортния файл като аргумент. Домейнът autoreply.company.com е абстрактен, т.е. не е необходимо да регистрира съответните записи в DNS, достатъчно е да добавите запис за този домейн към файла/etc/hosts:

След това трябва да коригирате стойността на параметъра transport_maps във файла main.cf, намиращ се в/usr/local/etc/postfix, като добавите предварително създадената (модифицирана) транспортна таблица:

Остава да промените файла config.inc.php, намиращ се в/usr/local/www/postfixadmin, за да активирате функциите за управление на телефонния секретар в интерфейса PostfixAdmin. По-специално, трябва да промените редовете, определящи активирането на телефонния секретар; домейнът, използван от телефонния секретар; способността на потребителите да задават автоматични отговори на съобщения; способността на администратора да променя тези съобщения: