Почтовый сервер со всем фаршем на 10.04 LTS Сравнение версий

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
Последняя версия Следующая версия справа и слева
wiki:почтовый_сервер_со_всем_фаршем_на_10.04_lts [2011/07/20 12:55]
[Постановка задачи]
wiki:почтовый_сервер_со_всем_фаршем_на_10.04_lts [2012/08/13 15:27]
перенёс что-то с форума, вдруг пригодится
Строка 1: Строка 1:
-===== О документе ===== +===== Почтовый сервер со всем фаршем на 10.04 LTS ===== 
-Этот документ описывает процедуру установки почтового сервера на базе Ubuntu 10.04 LTS. В документе использовано следующее форматирование:​+Этот документ описывает процедуру установки почтового сервера на базе ​//Ubuntu 10.04 LTS//. В документе использовано следующее форматирование:​
  
-''​строки с таким выделением''​+<code bash>строки с таким выделением</​code>​
  
 это команды,​ которые мы задаем в терминале. это команды,​ которые мы задаем в терминале.
  
-**строки с таким выделением**+<note tip>**строки с таким выделением**</​note>​
  
 это ответы,​ которые мы получаем на введенные нами команды это ответы,​ которые мы получаем на введенные нами команды
 +
 <​file>​строки с таким выделением</​file>​ <​file>​строки с таким выделением</​file>​
 +
 это содержимое различного рода конфигурационных файлов. это содержимое различного рода конфигурационных файлов.
  
Строка 344: Строка 346:
 Создаем сертификат для подписывания:​ Создаем сертификат для подписывания:​
  
-<code bash>​openssl x509 -trustout -inform PEM -in ca.crt -outform DER -out ca.pfx</code>+<code bash>openssl pkcs12 -export -in ca.cer -inkey ca.key -out ca.pfx</​code>​ 
 + 
 +<del>openssl x509 -trustout -inform PEM -in ca.crt -outform DER -out ca.pfx</del>
  
 Создадим директорию,​ в которой у нас будут лежать все ключи для всех серверов (если мы в дальнейшем будем создавать и подписывать ключи для других серверов;​ например,​ захотим,​ чтобы ключи были разные для //​smtp.aaa.ru//​ //​pop3.aaa.ru//​ и //​imap.aaa.ru//​) и, соответственно,​ директории для всех имен серверов (в нашем случае — //​oban.aaa.ru//​) ​ Создадим директорию,​ в которой у нас будут лежать все ключи для всех серверов (если мы в дальнейшем будем создавать и подписывать ключи для других серверов;​ например,​ захотим,​ чтобы ключи были разные для //​smtp.aaa.ru//​ //​pop3.aaa.ru//​ и //​imap.aaa.ru//​) и, соответственно,​ директории для всех имен серверов (в нашем случае — //​oban.aaa.ru//​) ​
Строка 477: Строка 481:
 (ответим,​ что мы хотим доверять новым сертификатам и выберем в списке наш новый сертификат для активации) (ответим,​ что мы хотим доверять новым сертификатам и выберем в списке наш новый сертификат для активации)
  
-Нашим клиентам,​ которые будут связываться с нашим ​первером с использованием шифрования (TLS, SSL) или с нашим веб-сервером по протоколу HTTPS нужно установить доверие к нашему CA. Тем или иным способом передайте им открытый ключ нашего CA - ca.crt. ​+Нашим клиентам,​ которые будут связываться с нашим ​сервером с использованием шифрования (TLS, SSL) или с нашим веб-сервером по протоколу HTTPS нужно установить доверие к нашему CA. Тем или иным способом передайте им открытый ключ нашего CA - ca.crt. ​
  
 <note warning>​Внимание! Никогда никому не передавайте созданные приватные ключи *.key и не делайте их доступными! </​note>​ <note warning>​Внимание! Никогда никому не передавайте созданные приватные ключи *.key и не делайте их доступными! </​note>​
Строка 1139: Строка 1143:
 Отредактируем файл /​etc/​horde/​imp4/​servers.php Отредактируем файл /​etc/​horde/​imp4/​servers.php
  
-<code bash>​sudo /​etc/​horde/​imp4/​servers.php</​code>​+<code bash>​sudo ​nano /​etc/​horde/​imp4/​servers.php</​code>​
  
 <​file>​$servers['​imap'​] = array( ​ <​file>​$servers['​imap'​] = array( ​
Строка 1863: Строка 1867:
 <​file>​milter_default_action = accept ​ <​file>​milter_default_action = accept ​
 milter_protocol = 2  milter_protocol = 2 
-#smtpd_milters = inet:​localhost:​8891,​inet:​localhost:​8892 ​; for internal delivery only +smtpd_milters = inet:​localhost:​8891,​inet:​localhost:​8892
 non_smtpd_milters = inet:​localhost:​8891,​inet:​localhost:​8892 </​file>​ non_smtpd_milters = inet:​localhost:​8891,​inet:​localhost:​8892 </​file>​
- 
-Мы хотим, чтобы подписывались только исходящие письма,​ поэтому строка //​smtpd_milters//​ закомментарена. 
  
 Проверьте,​ что файл Проверьте,​ что файл
Строка 1875: Строка 1877:
  
 <​file>​$enable_dkim_verification = 1; </​file>​ <​file>​$enable_dkim_verification = 1; </​file>​
 +
 +Отредактируем файл /​etc/​postfix/​master.cf
 +
 +<code bash>​sudo nano /​etc/​postfix/​master.cf</​code>​
 +
 +и в блоке
 +
 +<​file>​127.0.0.1:​10025 inet n - - - - smtpd 
 +        -o content_filter= ​
 +        -o local_recipient_maps= ​
 +        -o relay_recipient_maps= ​
 +        -o smtpd_restriction_classes= ​
 +        -o smtpd_client_restrictions= ​
 +        -o smtpd_helo_restrictions= ​
 +        -o smtpd_sender_restrictions= ​
 +        -o smtpd_recipient_restrictions=permit_mynetworks,​reject ​
 +        -o mynetworks=127.0.0.0/​8 ​
 +        -o strict_rfc821_envelopes=yes ​
 +        -o receive_override_options=no_unknown_recipient_checks,​no_header_body_checks
 +        -o smtpd_bind_address=127.0.0.1 </​file>​
 +
 +изменим строку
 +
 +<​file> ​       -o receive_override_options=no_unknown_recipient_checks,​no_header_body_checks,​no_milters</​file>​
 +
 +иначе наши исходящие письма будут подписываться //DKIM// два раза.
  
 Последнее,​ что нам осталось сделать - это внести изменения в DNS-записи нашего домена (доменов):​ Последнее,​ что нам осталось сделать - это внести изменения в DNS-записи нашего домена (доменов):​
Строка 3634: Строка 3662:
  
 <​file>​procmail unix - n n - - pipe  <​file>​procmail unix - n n - - pipe 
-  -o flags=RO user=vmail argv=/​usr/​bin/​procmail -t -m USER=${user} EXTENSION=${extension} NEXTHOP=${nexthop} /​etc/​postfix/​procmailrc.common </​file>​+  -o flags=RO user=vmail argv=/​usr/​bin/​procmail -t -m USER=${user} EXTENSION=${extension} NEXTHOP=${nexthop} /​etc/​postfix/​procmail.common </​file>​
  
 (вторая строка должна начинаться хотя бы с одного пробела) (вторая строка должна начинаться хотя бы с одного пробела)
Строка 3872: Строка 3900:
  
 Теперь в разделе **Почта — Фильтры** можно активировать,​ редактировать имеющиеся фильтры или добавлять новые. Все правила,​ которые Вы будете задавать через //horde (ingo)// будут записываться в файл правил с именем //ingo//. Этот файл будет доступен для редактирования с помощью любого другого плагина //sieve// (например,​ к //​thunderbird//​). ​ Теперь в разделе **Почта — Фильтры** можно активировать,​ редактировать имеющиеся фильтры или добавлять новые. Все правила,​ которые Вы будете задавать через //horde (ingo)// будут записываться в файл правил с именем //ingo//. Этот файл будет доступен для редактирования с помощью любого другого плагина //sieve// (например,​ к //​thunderbird//​). ​
 +
 +===== FAQ =====
 +
 +**Q: В этой статье написано,​ как настроить LDAP?**\\
 +A: Нет. Настройка LDAP - это своя большая тема, которая лежит за рамками этого howto. Здесь просто показано,​ как использовать уже имеющийся LDAP. Если его нет (и нет AD) - используйте только mysql.
 +
 +**Q: Как сделать такой сервер,​ но без LDAP?**\\
 +A: Просто пропускайте все, что связано с LDAP и делайте только то, что связано с mysql.
  
 ===== Ссылки ===== ===== Ссылки =====
  
   * [[http://​forum.ubuntu.ru/​index.php?​topic=127090.0|Обсуждение статьи на форуме]]   * [[http://​forum.ubuntu.ru/​index.php?​topic=127090.0|Обсуждение статьи на форуме]]
-  * [[http://​forum.ubuntu.ru/​index.php?​action=dlattach;​topic=127090.0;​attach=25869|Статья в формате .odt]] +  * [[http://​forum.ubuntu.ru/​index.php?​action=dlattach;​topic=127090.0;​attach=30328|Статья в формате .odt]] 
- +  * [[http://​wiki.horde.org/​FAQ/​Admin/​Troubleshoot|Horde Administrator'​s FAQ]] — решение проблем с Horde
-{{tag>​postfix dovecot amavis spamassassin autoresponder sieve horde clamav razor pyzor postgrey spf dkim domainkey mailman fail2ban munin}}+
  
 +{{tag>​администрирование postfix dovecot amavis spamassassin autoresponder sieve horde clamav razor pyzor postgrey spf dkim domainkey mailman fail2ban munin}}