<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Linux Forum &mdash; Dovecot и AD]]></title>
	<link rel="self" href="https://linuxforum.ru/extern.php?action=feed&amp;tid=34882&amp;type=atom" />
	<updated>2014-05-29T04:55:57Z</updated>
	<generator>PunBB</generator>
	<id>https://linuxforum.ru/viewtopic.php?id=34882</id>
		<entry>
			<title type="html"><![CDATA[Re: Dovecot и AD]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=410692#p410692" />
			<content type="html"><![CDATA[<p>Спасибо, работает... <img src="https://linuxforum.ru/img/smilies/ab.gif" alt="ab" /></p>]]></content>
			<author>
				<name><![CDATA[mitushinem]]></name>
				<uri>https://linuxforum.ru/profile.php?id=34241</uri>
			</author>
			<updated>2014-05-29T04:55:57Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=410692#p410692</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Dovecot и AD]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=410618#p410618" />
			<content type="html"><![CDATA[<p>Да, ты прав).<br />Вообщем надо сделать так, в файле<br /></p><div class="quotebox"><blockquote><p># vi&nbsp; /etc/postfix/ad_virtual_mailbox_maps.cf</p></blockquote></div><div class="codebox"><pre><code>server_host     = 10.168.50.8
server_port     = 389
version         = 3
bind            = yes
start_tls       = no
bind_dn         = vmail
bind_pw         = 1Q2w3e4r
search_base     = cn=users,dc=asiainvest,dc=local
scope           = sub
query_filter    = (&amp;(objectClass=person)(mail=%s)(!(userAccountControl=514)))
result_attribute= userPrincipalName
debuglevel      = 0</code></pre></div><p>После чего Postfix начинает находить логины. Этот файл аналогичен файл&nbsp; /etc/dovecot/dovecot-ldap.conf</p><p>Я перепутал...</p>]]></content>
			<author>
				<name><![CDATA[AlfaStriker]]></name>
				<uri>https://linuxforum.ru/profile.php?id=15778</uri>
			</author>
			<updated>2014-05-28T15:28:44Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=410618#p410618</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Dovecot и AD]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=410565#p410565" />
			<content type="html"><![CDATA[<p>Нарисовалась новая проблема, точнее она и была.<br />Если работать через web морду, то все прекрасно посылает и принимает.<br />Пробую подключиться через outlook - выдает 550 error.<br />Dovecot нормально работает и проверяет пароль из AD</p><div class="codebox"><pre><code>220 mail.analit.lan ESMTP
ehlo mail.analit.lan
250-mail.analit.lan
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
mail from: asup-31@analit.lan
250 2.1.0 Ok
rcpt to: asup-31@analit.lan
550 5.1.1 &lt;asup-31@analit.lan&gt;: Recipient address rejected: User unknown in virt
ual mailbox table</code></pre></div><p>Вот полный листинг main.cf<br /></p><div class="codebox"><pre><code>soft_bounce = no
queue_directory = /var/spool/postfix
daemon_directory = /usr/libexec/postfix
mail_owner = postfix
default_privs = nobody
inet_interfaces = all
myhostname = mail.analit.lan
mydomain = analit.lan
myorigin = $mydomain
mydestination = $myhostname,localhost.$myhostname,localhost
local_recipient_maps = proxy:unix:passwd.byname $alias_maps
unknown_local_recipient_reject_code = 550
mynetworks = 127.0.0.0/8, 10.2.0.0/16
relay_domains =
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mail_spool_directory = /var/mail
smtpd_banner = $myhostname ESMTP
debug_peer_level = 2
debug_peer_list = 127.0.0.1
debugger_command = 
    PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
    xxgdb $daemon_directory/$process_name $process_id &amp; sleep 5 
sendmail_path = /usr/sbin/sendmail
mailq_path = /usr/bin/mailq
setgid_group = postdrop
html_directory = no
manpage_directory = /usr/local/man
config_directory = /etc/postfix
virtual_mailbox_domains = $mydomain
transport_maps = hash:/etc/postfix/transport
proxy_read_maps = $smtpd_sender_login_maps $local_recipient_maps $virtual_alias_maps $virtual_mailbox_maps 
smtpd_sender_login_maps = proxy:ldap:/etc/postfix/ad_sender_login_maps.cf
virtual_mailbox_maps = proxy:ldap:/etc/postfix/ad_virtual_mailbox_maps.cf
virtual_alias_maps = proxy:ldap:/etc/postfix/ad_virtual_group_maps.cf
virtual_mailbox_base = /var/vmail
virtual_minimum_uid = 1150
virtual_uid_maps = static:1150
virtual_gid_maps = static:12
virtual_transport = dovecot
dovecot_destination_recipient_limit = 1
#---------------настройка аутентификации----------------------------------
#
smtpd_sasl_auth_enable = yes
smtpd_sasl_exceptions_networks = $mynetworks
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = /var/spool/postfix/private/dovecot-auth
#smtpd_sasl_path = private/auth
#------------------------------------------------------------------------
smtpd_recipient_restrictions = permit_mynetworks,
    permit_sasl_authenticated,
    reject_unauth_destination,
    reject_non_fqdn_recipient,
    reject_unverified_recipient,
    reject_rbl_client cbl.abuseat.org,
    reject_rbl_client dialups.mail-abuse.org,
    permit</code></pre></div>]]></content>
			<author>
				<name><![CDATA[mitushinem]]></name>
				<uri>https://linuxforum.ru/profile.php?id=34241</uri>
			</author>
			<updated>2014-05-28T05:12:30Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=410565#p410565</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Dovecot и AD]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=410229#p410229" />
			<content type="html"><![CDATA[<p>Все нормально, разобрался. <br />Авторизация проходит проходит по полю email из AD</p>]]></content>
			<author>
				<name><![CDATA[mitushinem]]></name>
				<uri>https://linuxforum.ru/profile.php?id=34241</uri>
			</author>
			<updated>2014-05-26T05:56:09Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=410229#p410229</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Dovecot и AD]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=409845#p409845" />
			<content type="html"><![CDATA[<p>Странно у тебя работает, покажи логи.<br />У меня почта нормально ходила, я посылал и получал.</p>]]></content>
			<author>
				<name><![CDATA[AlfaStriker]]></name>
				<uri>https://linuxforum.ru/profile.php?id=15778</uri>
			</author>
			<updated>2014-05-23T14:59:36Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=409845#p409845</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Dovecot и AD]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=409802#p409802" />
			<content type="html"><![CDATA[<p>Все равно не получатся ничего<br />Postfix получает данные, а вот с dovecot что то совсем непонятно</p>]]></content>
			<author>
				<name><![CDATA[mitushinem]]></name>
				<uri>https://linuxforum.ru/profile.php?id=34241</uri>
			</author>
			<updated>2014-05-23T11:32:57Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=409802#p409802</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Dovecot и AD]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=409477#p409477" />
			<content type="html"><![CDATA[<p>Буду пробовать в общем.<br />О результате отпишусь</p>]]></content>
			<author>
				<name><![CDATA[mitushinem]]></name>
				<uri>https://linuxforum.ru/profile.php?id=34241</uri>
			</author>
			<updated>2014-05-21T04:55:20Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=409477#p409477</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Dovecot и AD]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=409475#p409475" />
			<content type="html"><![CDATA[<p>Тогда тебе придется сделать так:<br /></p><div class="quotebox"><blockquote><p>vi /etc/postfix/ad_sender_login_maps.cf</p></blockquote></div><div class="codebox"><pre><code>server_host     = pdc.company.local
server_port     = 389
version         = 3
bind            = yes
start_tls       = no
bind_dn         = vmail
bind_pw         = Ivanka123
search_base     = cn=users,dc=company,dc=local
scope           = sub
query_filter    = (&amp;(objectClass=person)(mail=%s))
result_attribute= userPrincipalName
debuglevel      = 0</code></pre></div><div class="quotebox"><blockquote><p>vi /etc/dovecot/dovecot-ldap.conf</p></blockquote></div><div class="codebox"><pre><code>hosts           = pdc.company.local:389
ldap_version    = 3
auth_bind       = yes
dn              = vmail
dnpass          = Ivanka123
base            = cn=users,dc=company,dc=local
scope           = subtree
deref           = never
user_filter     = (&amp;(objectClass=person)(mail=%u))
pass_filter     = (&amp;(objectClass=person)(mail=%u))
pass_attrs      = userPassword=password
default_pass_scheme = CRYPT
user_attrs      = =home=/var/vmail/%Ld/%Ln/Maildir/,=mail=maildir:/var/vmail/%Ld/%Ln/Maildir/</code></pre></div><div class="quotebox"><blockquote><p>vi /etc/postfix/main.cf</p></blockquote></div><div class="codebox"><pre><code>virtual_mailbox_domains = company.ru</code></pre></div><p>В итоге получается: Электронные ящики берутся из поля &quot;Почтовый адрес&quot; учетных записей в OU - users. Например есть пользователь vanka@company.local, в настройках учетки в поле почтовый адрес прописано &quot;barabashka@privet.ru&quot;. <br />Postfix и Dovecot будут оперировать полем &quot;barabashka@privet.ru&quot; и паролем учетной записи &quot;vanka@company.local&quot;. </p><p>Проверь у себя, работают ли данные настройки.<br />Возможно я коряво что-то сделал, но должно работать.</p>]]></content>
			<author>
				<name><![CDATA[AlfaStriker]]></name>
				<uri>https://linuxforum.ru/profile.php?id=15778</uri>
			</author>
			<updated>2014-05-21T04:11:04Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=409475#p409475</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Dovecot и AD]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=409408#p409408" />
			<content type="html"><![CDATA[<p>Да это все хорошо, но у меня домен windows и почтовый должны быть разными.<br />Может можно что то сделать что бы использовать разные домены</p>]]></content>
			<author>
				<name><![CDATA[mitushinem]]></name>
				<uri>https://linuxforum.ru/profile.php?id=34241</uri>
			</author>
			<updated>2014-05-20T10:07:17Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=409408#p409408</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Dovecot и AD]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=409398#p409398" />
			<content type="html"><![CDATA[<p>Вот еще одно решение твоей проблемы:</p><p><strong>Исходные данные:</strong><br />* Машина: CentOS 6.5, Postfix+Dovecot+Roundcube<br />- Внутренний IP адрес: 10.168.50.2<br />- Имя хоста в локальной сети: mail.company.local</p><p>* Машина: Windows 2003, Active Directory <br />- Домен: company.local<br />- Имя хоста: pdc.company.local<br />- Внутренний IP адрес: 10.168.50.8<br />- Учетная запись для чтения данных из каталога: vmail / ее пароль - Ivanka123<br />- Учетные записи будут браться из организационной единицы company.local/users/</p><p>Настраиваем файл /etc/hosts, добавляем строчки:<br /></p><div class="codebox"><pre><code>10.168.50.2 mx.company.local mx
10.168.50.8 pdc.company.local pdc</code></pre></div><p>Устанавливаем утилиты OpenLDAP:<br /></p><div class="quotebox"><blockquote><p>yum install openldap-clients</p></blockquote></div><p>Проверяем как работает доступ к Windows AD:<br /></p><div class="quotebox"><blockquote><p>ldapsearch -x -h pdc.company.local -D &#039;vmail&#039; -W -b &#039;cn=users,dc=company,dc=local&#039;</p></blockquote></div><p>Получим в выводе кучу информации которая хранится в каталоге LDAP.</p><p>Редактируем конфигурационный фал Postfix - /etc/postfix/main.cf<br />Меняем значения:<br /></p><div class="codebox"><pre><code>virtual_mailbox_domains = company.local
transport_maps = hash:/etc/postfix/transport
proxy_read_maps = $smtpd_sender_login_maps $local_recipient_maps $virtual_alias_maps $virtual_mailbox_maps
smtpd_sender_login_maps = proxy:ldap:/etc/postfix/ad_sender_login_maps.cf
virtual_mailbox_maps = proxy:ldap:/etc/postfix/ad_virtual_mailbox_maps.cf
virtual_alias_maps = proxy:ldap:/etc/postfix/ad_virtual_group_maps.cf
virtual_mailbox_base = /var/vmail</code></pre></div><p>Создаем первый файлы: <br /></p><div class="quotebox"><blockquote><p>vi /etc/postfix/transport</p></blockquote></div><div class="codebox"><pre><code>company.local dovecot</code></pre></div><p>Делаем:<br /></p><div class="quotebox"><blockquote><p>postmap hash:/etc/postfix/transport</p></blockquote></div><p>Создаем файлы со следующим содержимым:<br /></p><div class="quotebox"><blockquote><p>vi /etc/postfix/ad_sender_login_maps.cf</p></blockquote></div><div class="codebox"><pre><code>server_host     = pdc.company.local
server_port     = 389
version         = 3
bind            = yes
start_tls       = no
bind_dn         = vmail
bind_pw         = Ivanka123
search_base     = cn=users,dc=company,dc=local
scope           = sub
query_filter    = (&amp;(userPrincipalName=%s)(objectClass=person)(!(userAccountControl=514)))
result_attribute= userPrincipalName
debuglevel      = 0</code></pre></div><div class="quotebox"><blockquote><p># vi&nbsp; /etc/postfix/ad_virtual_mailbox_maps.cf</p></blockquote></div><div class="codebox"><pre><code>server_host     = pdc.company.local
server_port     = 389
version         = 3
bind            = yes
start_tls       = no
bind_dn         = vmail
bind_pw         = Ivanka123
search_base     = cn=users,dc=company,dc=local
scope           = sub
query_filter    = (&amp;(objectclass=person)(userPrincipalName=%s))
result_attribute= userPrincipalName
result_format   = %d/%u/Maildir/
debuglevel      = 0</code></pre></div><div class="quotebox"><blockquote><p>vi /etc/postfix/ad_virtual_group_maps.cf</p></blockquote></div><div class="codebox"><pre><code>server_host     = pdc.company.local
server_port     = 389
version         = 3
bind            = yes
start_tls       = no
bind_dn         = vmail
bind_pw         = Ivanka123
search_base     = cn=users,dc=company,dc=local
scope           = sub
query_filter    = (&amp;(objectClass=group)(mail=%s))
special_result_attribute = member
leaf_result_attribute = mail
result_attribute= userPrincipalName
debuglevel      = 0</code></pre></div><p>Пояснение:<br />%d Доменная часть без локальной части и символа @ (например, pipec.org).<br />%s Полный почтовый адрес (например, artem@pipec.org).<br />%u Локальная часть без символа @ и указания домена (например, artem).</p><br /><p><strong>ПРОВЕРКИ, ВЫБОРКА ДАННЫХ ИЗ КАТАЛОГА LDAP</strong><br />Проверяем:<br /></p><div class="quotebox"><blockquote><p>postmap -q AlfaStriker@company.local <br />ldap:/etc/postfix/ad_virtual_mailbox_maps.cf</p></blockquote></div><p>Получаем:<br /></p><div class="codebox"><pre><code>company.local/AlfaStriker/Maildir/</code></pre></div><p>Проверяем:<br /></p><div class="quotebox"><blockquote><p>postmap -q AlfaStriker@company.local ldap:/etc/postfix/ad_sender_login_maps.cf</p></blockquote></div><p>Получаем:<br /></p><div class="codebox"><pre><code>AlfaStriker@company.local</code></pre></div><p>Создаем группу в Active Directory, назовем ее - mailgroup@company.local<br />В настройках этой группы заполним поле e-mail - mailgroup@company.local</p><p>Проверяем:<br /></p><div class="quotebox"><blockquote><p>postmap -q mailgroup@company.local ldap:/etc/postfix/ad_virtual_group_maps.cf</p></blockquote></div><p>Получаем:<br /></p><div class="codebox"><pre><code>AlfaStriker@company.local</code></pre></div><br /><div class="quotebox"><blockquote><p>Настройка Dovecot</p></blockquote></div><p>Теперь создадим файл&nbsp; /etc/dovecot/dovecot-ldap.conf<br /></p><div class="codebox"><pre><code>hosts           = pdc.company.local:389
ldap_version    = 3
auth_bind       = yes
dn              = vmail
dnpass          = Ivanka123
base            = cn=users,dc=company,dc=local
scope           = subtree
deref           = never
user_filter     = (&amp;(userPrincipalName=%u)(objectClass=person)(!(userAccountControl=514)))
pass_filter     = (&amp;(userPrincipalName=%u)(objectClass=person)(!(userAccountControl=514)))
pass_attrs      = userPassword=password
default_pass_scheme = CRYPT
user_attrs      = =home=/var/vmail/%Ld/%Ln/Maildir/,=mail=maildir:/var/vmail/%Ld/%Ln/Maildir/     </code></pre></div><p>&nbsp; &nbsp;</p><p>Для наглядности приведу полный конфиг файл Dovecot:<br /></p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p># 2.0.9: /etc/dovecot/dovecot.conf<br /># OS: Linux 2.6.32-220.7.1.el6.i686 i686 CentOS release 6.2 (Final) ext4<br />auth_debug = yes<br />auth_debug_passwords = yes<br />auth_mechanisms = plain login<br />auth_verbose = yes<br />base_dir = /var/run/dovecot/<br />disable_plaintext_auth = no<br />ssl = no<br />first_valid_uid = 1150<br />last_valid_uid = 1150<br />mail_uid = 1150<br />mail_gid = 12<br />log_timestamp = %Y-%m-%d %H:%M:%S<br />mail_debug = yes<br />mail_location = maildir:/var/vmail/%d/%u<br />passdb {<br />&nbsp; &nbsp;args = /etc/dovecot/dovecot-ldap.conf<br />&nbsp; &nbsp;driver = ldap<br />}<br />protocols = imap pop3<br />service auth {<br />unix_listener /var/spool/postfix/private/dovecot-auth {<br />&nbsp; &nbsp;user = postfix<br />&nbsp; &nbsp;group = postfix<br />&nbsp; &nbsp;mode = 0660<br />}<br />unix_listener auth-master {<br />&nbsp; &nbsp;user = vmail<br />&nbsp; &nbsp;group = mail<br />&nbsp; &nbsp;mode = 0660<br />}<br />unix_listener auth-userdb {<br />&nbsp; &nbsp;user = vmail<br />&nbsp; &nbsp;group = mail<br />&nbsp; &nbsp;mode = 0660<br />}<br />#user=root<br />}<br />service imap-login {<br />executable = /usr/libexec/dovecot/imap-login<br />inet_listener imap {<br />&nbsp; &nbsp;address = *<br />&nbsp; &nbsp;port = 143<br />}<br />}<br />service imap {<br />&nbsp; &nbsp;executable = /usr/libexec/dovecot/imap<br />}<br />service pop3-login {<br />executable = /usr/libexec/dovecot/pop3-login<br />inet_listener pop3 {<br />&nbsp; &nbsp;address = *<br />&nbsp; &nbsp;port = 110<br />}<br />}<br />service pop3 {<br />&nbsp; &nbsp;executable = /usr/libexec/dovecot/pop3<br />}<br />userdb {<br />&nbsp; &nbsp;args = /etc/dovecot/dovecot-ldap.conf<br />&nbsp; &nbsp;driver = ldap<br />}<br />protocol lda {<br />&nbsp; &nbsp;auth_socket_path = /var/run/dovecot/auth-master<br />&nbsp; &nbsp;postmaster_address = admin@company.local<br />}</p></div></div><p>А также полный конфигурационный файл&nbsp; Postfix:<br /></p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p>soft_bounce = no<br />queue_directory = /var/spool/postfix<br />daemon_directory = /usr/libexec/postfix<br />mail_owner = postfix<br />default_privs = nobody<br />inet_interfaces = all<br />myhostname = mx.company.local<br />mydomain = company.local<br />myorigin = $mydomain<br />mydestination = $myhostname,localhost.$myhostname,localhost<br />local_recipient_maps = proxy:unix:passwd.byname $alias_maps<br />unknown_local_recipient_reject_code = 550<br />mynetworks = 127.0.0.0/8<br />relay_domains =<br />alias_maps = hash:/etc/aliases<br />alias_database = hash:/etc/aliases<br />mail_spool_directory = /var/mail<br />smtpd_banner = $myhostname ESMTP<br />debug_peer_level = 2<br />debug_peer_list = 127.0.0.1<br />debugger_command =<br />&nbsp; &nbsp; PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin<br />&nbsp; &nbsp; xxgdb $daemon_directory/$process_name $process_id &amp; sleep 5<br />sendmail_path = /usr/sbin/sendmail<br />mailq_path = /usr/bin/mailq<br />setgid_group = postdrop<br />html_directory = no<br />manpage_directory = /usr/local/man<br />config_directory = /etc/postfix<br />virtual_mailbox_domains = company.local<br />transport_maps = hash:/etc/postfix/transport<br />proxy_read_maps = $smtpd_sender_login_maps $local_recipient_maps $virtual_alias_maps $virtual_mailbox_maps<br />smtpd_sender_login_maps = proxy:ldap:/etc/postfix/ad_sender_login_maps.cf<br />virtual_mailbox_maps = proxy:ldap:/etc/postfix/ad_virtual_mailbox_maps.cf<br />virtual_alias_maps = proxy:ldap:/etc/postfix/ad_virtual_group_maps.cf<br />virtual_mailbox_base = /var/vmail<br />virtual_minimum_uid = 1150<br />virtual_uid_maps = static:1150<br />virtual_gid_maps = static:12<br />virtual_transport = dovecot<br />dovecot_destination_recipient_limit = 1<br />smtpd_sasl_auth_enable = yes<br />smtpd_sasl_exceptions_networks = $mynetworks<br />smtpd_sasl_security_options = noanonymous<br />broken_sasl_auth_clients = yes<br />smtpd_sasl_type = dovecot<br />smtpd_sasl_path = /var/spool/postfix/private/dovecot-auth<br />smtpd_recipient_restrictions = permit_mynetworks,<br />&nbsp; &nbsp; permit_sasl_authenticated,<br />&nbsp; &nbsp; reject_unauth_destination,<br />&nbsp; &nbsp; check_policy_service unix:/var/spool/postfix/postgrey/socket,<br />&nbsp; &nbsp; reject_non_fqdn_recipient,<br />&nbsp; &nbsp; reject_unverified_recipient,<br />&nbsp; &nbsp; reject_rbl_client cbl.abuseat.org,<br />&nbsp; &nbsp; reject_rbl_client dialups.mail-abuse.org,<br />&nbsp; &nbsp; permit<br />content_filter = scan:127.0.0.1:10025<br />receive_override_options = no_address_mappings</p></div></div><p><strong>Проверка из RoundCube</strong><br />Входим в веб интерфейс и вводим alfastriker@company.local, пароль разумеется берем из Active Directory.<br />Отправляем письмо себе или на другой ящик.</p>]]></content>
			<author>
				<name><![CDATA[AlfaStriker]]></name>
				<uri>https://linuxforum.ru/profile.php?id=15778</uri>
			</author>
			<updated>2014-05-20T07:58:59Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=409398#p409398</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Dovecot и AD]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=409346#p409346" />
			<content type="html"><![CDATA[<p>Я сам не давно узнал об этом способе. Только видишь тут берутся логины в AD и подставляется доменная часть.</p>]]></content>
			<author>
				<name><![CDATA[AlfaStriker]]></name>
				<uri>https://linuxforum.ru/profile.php?id=15778</uri>
			</author>
			<updated>2014-05-19T13:47:22Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=409346#p409346</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Dovecot и AD]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=409330#p409330" />
			<content type="html"><![CDATA[<p>О как интересно, буду пробовать.<br />Мне только вот не понятно почему на сайте dovecot ничего не сказано про такой метод</p>]]></content>
			<author>
				<name><![CDATA[mitushinem]]></name>
				<uri>https://linuxforum.ru/profile.php?id=34241</uri>
			</author>
			<updated>2014-05-19T11:00:36Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=409330#p409330</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Dovecot и AD]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=409082#p409082" />
			<content type="html"><![CDATA[<p><strong>Исходные данные:</strong><br />- Машина Windows 2003, роли AD+DNS, домен - company.local, локальный ip адрес - 10.168.50.8, доменный администратор - AlfaStriker <br />- Машина CentOS 6.5, почтовый сервер, установлено Postfix+Dovecot+RoundCube, домен - company.ru, локальный&nbsp; ip адрес - 10.168.50.2 , белый реальный ip - 111.222.333.444</p><p><strong>Задача: </strong><br />Подружить Dovecot&nbsp; с Windows Active Directory</p><p><strong>Используемые средства для достижения цели: </strong><br />PAM + Winbind + Samba +Kerberos</p><p>Идем по шагам:<br />1. Вводим CentOS в домен - company.local<br />2. Настраиваем Dovecot<br />3. Настраиваем Postfix<br />4. Проверка работы из RoundCube</p><p><strong>1. Вводим CentOS в домен - company.local</strong><br />Настраиваем имя хоста:<br /></p><div class="quotebox"><blockquote><p>vi /etc/hosts</p></blockquote></div><p>Добавляем две строчки:<br /></p><div class="codebox"><pre><code>10.168.50.2 mx.company.local mx
10.168.50.8 pdc.company.local pdc</code></pre></div><p>Настраиваем синхронизацию времени с доменным контроллером:<br /></p><div class="quotebox"><blockquote><p>vi /etc/ntp.conf</p></blockquote></div><p>Добавляем строчку:<br /></p><div class="codebox"><pre><code>server company.local</code></pre></div><div class="quotebox"><blockquote><p>service ntpd restart</p></blockquote></div><p>Устанавливаем Samba + Winbind<br /></p><div class="quotebox"><blockquote><p>yum install samba samba-winbind samba-winbind-clients</p></blockquote></div><div class="quotebox"><blockquote><p>authconfig --update \<br />--kickstart \<br />--enablewinbind \<br />--enablewinbindauth \<br />--smbsecurity=ads \<br />--smbworkgroup=company \<br />--smbrealm=company.local \<br />--smbservers=10.168.50.8 \<br />--winbindjoin=AlfaStriker \<br />--winbindtemplatehomedir=/home/%U \<br />--winbindtemplateshell=/bin/bash \<br />--enablewinbindusedefaultdomain \<br />--enablelocauthorize</p></blockquote></div><p>Запросят пароль доменного администратора. <br /></p><div class="quotebox"><blockquote><p>Password for AlfaStriker@COMPANY.LOCAL:</p></blockquote></div><div class="codebox"><pre><code>*************</code></pre></div><p>Запросим билет любого доменного пользователя:<br /></p><div class="quotebox"><blockquote><p># kinit AlfaStriker@COMPANY.LOCAL</p></blockquote></div><div class="quotebox"><blockquote><p>Password for AlfaStriker@COMPANY.LOCAL:</p></blockquote></div><div class="codebox"><pre><code>************</code></pre></div><p>Убедимся что билет есть:<br /></p><div class="quotebox"><blockquote><p># klist</p></blockquote></div><div class="codebox"><pre><code>Ticket cache: FILE:/tmp/krb5cc_0
Default principal: AlfaStriker@COMPANY.LOCAL
Valid starting     Expires            Service principal
05/15/14 10:02:04  05/15/14 20:02:02  krbtgt/COMPANY.LOCAL@COMPANY.LOCAL
renew until 05/22/14 10:02:04</code></pre></div><p>Редактируем&nbsp; /etc/samba/smb.conf, вставляем текст после **end-line--:<br /></p><div class="codebox"><pre><code>#--authconfig--end-line--
   idmap config COMPANY.LOCAL:backend      = rid
   idmap config COMPANY.LOCAL:base_rid     = 0
   idmap config COMPANY.LOCAL:range        = 20000 - 49999
   auth methods = winbind
   winbind enum users = yes
   winbind enum groups = yes</code></pre></div><p>Проверяем конфиг, вводим команду:<br /></p><div class="quotebox"><blockquote><p># testparm</p></blockquote></div><div class="codebox"><pre><code>Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section &quot;[homes]&quot;
Processing section &quot;[printers]&quot;
Loaded services file OK.
Server role: ROLE_DOMAIN_MEMBER
Press enter to see a dump of your service definitions</code></pre></div><p>Ставим демоны Samba и Winbind в автозагрузку:<br /></p><div class="quotebox"><blockquote><p># chkconfig smb on</p></blockquote></div><div class="quotebox"><blockquote><p># chkconfig winbind on</p></blockquote></div><p>Добавление машины:<br /></p><div class="quotebox"><blockquote><p>net ads join -U AlfaStriker -D COMPANY.LOCAL</p></blockquote></div><br /><p>Проверяем:<br /></p><div class="quotebox"><blockquote><p># net ads testjoin</p></blockquote></div><div class="codebox"><pre><code>Join is OK</code></pre></div><p>Проверки, машина:<br /></p><div class="quotebox"><blockquote><p># wbinfo -t</p></blockquote></div><div class="codebox"><pre><code>checking the trust secret for domain COMPANY via RPC calls succeeded</code></pre></div><p>Проверяем, запросим список юзеров:<br /></p><div class="quotebox"><blockquote><p># wbinfo -u</p></blockquote></div><div class="codebox"><pre><code>guest
alfastriker
krbtgt
iusr_ai-documents
alfauser
support_388945a0
***************</code></pre></div><p>Проверяем группы:<br /></p><div class="quotebox"><blockquote><p># wbinfo -g</p></blockquote></div><div class="codebox"><pre><code>domain computers
cert publishers
domain guests
domain users
group policy creator owners
domain controllers
ras and ias servers
enterprise admins
**************</code></pre></div><p>Редактируем файл /etc/nsswitch.conf, строчки:<br /></p><div class="codebox"><pre><code>passwd:         compat winbind
group:          compat winbind</code></pre></div><p>Перезапустим службы:<br /></p><div class="quotebox"><blockquote><p># service smb restart<br /># service nmb restart<br /># service winbind restart</p></blockquote></div><p>Проверим работоспособность:<br />Вывод учетных записей из AD<br /></p><div class="quotebox"><blockquote><p>getent passwd</p></blockquote></div><p>Вывод групп из AD<br /></p><div class="quotebox"><blockquote><p>getent group</p></blockquote></div><p>На этом настройка входа в домен COMPANY.LOCAL -&nbsp; выполнена.</p><p><strong>2. Настраиваем Dovecot</strong><br />Редактируем файл /etc/dovecot/dovecot.conf<br />Я приведу полный конфиг этого файла для наглядности:<br /></p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p># 2.0.9: /etc/dovecot/dovecot.conf<br /># OS: Linux 2.6.32-220.7.1.el6.i686 i686 CentOS release 6.2 (Final) ext4<br />auth_debug = yes<br />auth_debug_passwords = yes<br />auth_mechanisms = plain login ntlm gssapi<br />auth_krb5_keytab = /etc/krb5.keytab<br />auth_realms = COMPANY.RU<br />auth_use_winbind = yes<br />auth_username_format = %n<br />auth_winbind_helper_path = /usr/bin/ntlm_auth<br />auth_verbose = yes<br />base_dir = /var/run/dovecot/<br />disable_plaintext_auth = no<br />ssl = no<br />first_valid_uid = 1150<br />last_valid_uid = 1150<br />log_timestamp = %Y-%m-%d %H:%M:%S<br />mail_debug = yes<br />mail_location = maildir:/var/vmail/%d/%u<br />passdb {<br />&nbsp; driver = pam<br />&nbsp; args = dovecot<br />}<br />protocols = imap pop3<br />service auth {<br />&nbsp; unix_listener /var/spool/postfix/private/dovecot-auth {<br />&nbsp; user = postfix<br />&nbsp; group = postfix<br />&nbsp; mode = 0660<br />}<br />unix_listener auth-master {<br />&nbsp; user = vmail<br />&nbsp; group = mail<br />&nbsp; mode = 0660<br />}<br />unix_listener auth-userdb {<br />&nbsp; user = vmail<br />&nbsp; group = mail<br />&nbsp; mode = 0660<br />}<br />#user=root<br />}<br />service imap-login {<br />&nbsp; executable = /usr/libexec/dovecot/imap-login<br />&nbsp; inet_listener imap {<br />&nbsp; address = *<br />&nbsp; port = 143<br />}<br />}<br />service imap {<br />&nbsp; executable = /usr/libexec/dovecot/imap<br />}<br />service pop3-login {<br />&nbsp; executable = /usr/libexec/dovecot/pop3-login<br />inet_listener pop3 {<br />&nbsp; address = *<br />&nbsp; port = 110<br />}<br />}<br />service pop3 {<br />&nbsp; executable = /usr/libexec/dovecot/pop3<br />}<br />userdb {<br />&nbsp; args = uid=vmail gid=mail home=/var/vmail/ allow_all_users=yes<br />&nbsp; driver = passwd<br />}<br />protocol lda {<br />&nbsp; auth_socket_path = /var/run/dovecot/auth-master<br />&nbsp; postmaster_address = admin@company.ru<br />}</p></div></div><p>Теперь отредактируем файл - /etc/pam.d/dovecot<br />Добавляем в файл:<br /></p><div class="codebox"><pre><code>auth    sufficient      pam_krb5.so
account sufficient      pam_krb5.so
auth    required        pam_unix.so nullok
account required        pam_unix.so</code></pre></div><br /><p><strong>3. Настраиваем Postfix</strong><br /></p><div class="quotebox"><blockquote><p># vi /etc/postfix/main.cf</p></blockquote></div><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p>soft_bounce = no<br />queue_directory = /var/spool/postfix<br />daemon_directory = /usr/libexec/postfix<br />mail_owner = postfix<br />default_privs = nobody<br />inet_interfaces = all<br />myhostname = mx.company.ru<br />mydomain = company.ru<br />myorigin = $mydomain<br />mydestination = $myhostname,localhost.$myhostname,localhost<br />local_recipient_maps = proxy:unix:passwd.byname $alias_maps<br />unknown_local_recipient_reject_code = 550<br />mynetworks = 127.0.0.0/8<br />relay_domains =<br />alias_maps = hash:/etc/aliases<br />alias_database = hash:/etc/aliases<br />mail_spool_directory = /var/mail<br />smtpd_banner = $myhostname ESMTP<br />debug_peer_level = 2<br />debug_peer_list = 127.0.0.1<br />debugger_command =<br />&nbsp; &nbsp; PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin<br />&nbsp; &nbsp; xxgdb $daemon_directory/$process_name $process_id &amp; sleep 5<br />sendmail_path = /usr/sbin/sendmail<br />mailq_path = /usr/bin/mailq<br />setgid_group = postdrop<br />html_directory = no<br />manpage_directory = /usr/local/man<br />config_directory = /etc/postfix<br />virtual_mailbox_domains = company.ru<br />virtual_mailbox_base = /var/vmail<br />#virtual_mailbox_maps = mysql:$config_directory/sql/vmailbox.cf<br />#virtual_alias_maps = mysql:$config_directory/sql/valias.cf<br />virtual_minimum_uid = 1150<br />virtual_uid_maps = static:1150<br />virtual_gid_maps = static:12<br />virtual_transport = dovecot<br />dovecot_destination_recipient_limit = 1<br />smtpd_sasl_auth_enable = yes<br />smtpd_sasl_exceptions_networks = $mynetworks<br />smtpd_sasl_security_options = noanonymous<br />broken_sasl_auth_clients = yes<br />smtpd_sasl_type = dovecot<br />smtpd_sasl_path = /var/spool/postfix/private/dovecot-auth<br />smtpd_recipient_restrictions = permit_mynetworks,<br />&nbsp; &nbsp; permit_sasl_authenticated,<br />&nbsp; &nbsp; reject_unauth_destination,<br />&nbsp; &nbsp; check_policy_service unix:/var/spool/postfix/postgrey/socket,<br />&nbsp; &nbsp; reject_non_fqdn_recipient,<br />&nbsp; &nbsp; reject_unverified_recipient,<br />&nbsp; &nbsp; reject_rbl_client cbl.abuseat.org,<br />&nbsp; &nbsp; reject_rbl_client dialups.mail-abuse.org,<br />&nbsp; &nbsp; permit<br />content_filter = scan:127.0.0.1:10025<br />receive_override_options = no_address_mappings</p></div></div><p><strong>4. Проверка работы из RoundCube</strong><br />Запускаем браузер, заходим <a href="http://10.168.50.2/roundcube/">http://10.168.50.2/roundcube/</a> <br />При запросе логина и пароля вводим -&nbsp; &nbsp;alfastriker@company.ru / Password<br />И отправляем письмо себе или на другой ящик.</p>]]></content>
			<author>
				<name><![CDATA[AlfaStriker]]></name>
				<uri>https://linuxforum.ru/profile.php?id=15778</uri>
			</author>
			<updated>2014-05-16T07:34:48Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=409082#p409082</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Dovecot и AD]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=409063#p409063" />
			<content type="html"><![CDATA[<p>Как твои продвижения?</p><p>У меня получилось не до конца сделать через Dovecot + Winbind.</p><p>Учетки берутся из AD, письма отправляются, но вылезла трабла c правами и каталогом почты.</p><p>Итого работает, но нормально проверит не получается. Может косячное решение <img src="https://linuxforum.ru/img/smilies/ab.gif" alt="ab" /></p>]]></content>
			<author>
				<name><![CDATA[AlfaStriker]]></name>
				<uri>https://linuxforum.ru/profile.php?id=15778</uri>
			</author>
			<updated>2014-05-16T04:12:02Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=409063#p409063</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Dovecot и AD]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=408981#p408981" />
			<content type="html"><![CDATA[<p>Всем доброго дня! Голову сломал.<br />Есть postfix 2.11 + dovecot 2.0.20 + mysql на centos 6.5 и есть ActiveDirectory на windows server 2003.<br />Появилась необходимость интеграции всего этого хозяйства с AD. Просто напросто юзеров очень много, и я понимаю что создавать столько почтовых ящиков дело мутарное, <br />а потом еще и пароли для пользователей раздавать.<br />Только сразу с гугл или поиск не посылайте, перерыл кучу всего. Не получается заставить Dovecot авторизовываться.<br />Едиственное уточнение. Домен AD - corp.contoso.com, <br />почтовый сервер mail.local.lan и почтовый домен соответственно local.lan</p><p>Вот конфиги.</p><br /><p>main.cf</p><div class="codebox"><pre><code>soft_bounce = no
queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
mail_owner = postfix
default_privs = nobody
inet_interfaces = all
myhostname = mail.analit.lan
mydomain = analit.lan
myorigin = $mydomain
mydestination = $myhostname,localhost.$myhostname,localhost
#local_recipient_maps = $virtual_mailbox_maps, $virtual_alias_maps
local_recipient_maps = proxy:unix:passwd.byname $alias_maps
unknown_local_recipient_reject_code = 550
mynetworks = 127.0.0.0/8
relay_domains =
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mail_spool_directory = /var/mail
smtpd_banner = $myhostname ESMTP ready
recipient_delimiter = +
debug_peer_level = 2
debug_peer_list = 127.0.0.1
debugger_command =
    PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
    xxgdb $daemon_directory/$process_name $process_id &amp; sleep 5
sendmail_path = /usr/sbin/sendmail
mailq_path = /usr/bin/mailq
setgid_group = postdrop
html_directory = no
manpage_directory = /usr/local/man
config_directory = /etc/postfix
virtual_mailbox_domains = $mydomain
virtual_mailbox_base = /var/vmail
virtual_mailbox_maps = ldap:$config_directory/virtual_mailbox_maps.conf
virtual_alias_maps = ldap:$config_directory/virtual_alias.conf, ldap:$config_directory/virtual_mlist.conf
virtual_minimum_uid = 1150
virtual_uid_maps = static:1150
virtual_gid_maps = static:12
virtual_transport = dovecot
dovecot_destination_recipient_limit = 1
#------------------------------TSL----------------------------------
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous, noplaintext
smtpd_sasl_tls_security_options = noanonymous
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth-client
#------------------------------TSL_END------------------------------</code></pre></div><p>virtual_mailbox_maps.conf</p><div class="codebox"><pre><code>server_host = 10.2.0.105:3268
search_base = DC=corp,DC=contoso,DC=com
version = 3
scope = sub
query_filter = (&amp;(objectClass=person)(mail=%s))
result_attribute = mail
result_format = %s/
bind = yes
bind_dn = CN=ldap_user,CN=Users,DC=corp,DC=contoso,DC=com
bind_pw = qwer1234++
start_tls = no
cache = no</code></pre></div><br /><p>Выполняю <br /></p><div class="codebox"><pre><code>postmap -q &quot;user@local.lan&quot; ldap:/etc/postfix/virtual_mailbox_maps.cf
user@local.lan/</code></pre></div><p>Получается postfix авторизуется в AD.</p><p>dovecot-ldap.conf</p><div class="codebox"><pre><code>hosts = 10.2.0.105:3268
dn = ldap_user@corp.contoso.com
dnpass = qwer1234++
auth_bind = yes
#auth_bind_userdn = %Lu
ldap_version = 3
base = DC=corp,DC=contoso,DC=com
deref = finding
scope = subtree
user_filter = (&amp;(objectClass=person)(mail=%u))
#user_attrs =
pass_filter = (&amp;(objectClass=person)(mail=%u))
pass_attrs = uid=mail, userPassword=password</code></pre></div><div class="codebox"><pre><code>[root@mail dovecot]# telnet localhost pop3
Trying ::1...
Connected to localhost.
Escape character is &#039;^]&#039;.
+OK Dovecot ready.
user ldap_user
+OK
pass qwer1234++
-ERR Authentication failed.</code></pre></div><div class="codebox"><pre><code>May 15 16:19:23 auth: Info: ldap(ldap_user,::1): unknown user
May 15 16:20:06 pop3-login: Info: Aborted login (auth failed, 1 attempts): user=&lt;ldap_user&gt;, method=PLAIN, rip=::1, lip=::1, secured</code></pre></div><div class="codebox"><pre><code>May 15 16:18:56 auth: Debug: Loading modules from directory: /usr/lib64/dovecot/auth
May 15 16:18:56 auth: Debug: Module loaded: /usr/lib64/dovecot/auth/libauthdb_ldap.so
May 15 16:18:56 auth: Debug: Module loaded: /usr/lib64/dovecot/auth/libdriver_sqlite.so
May 15 16:18:56 auth: Debug: Module loaded: /usr/lib64/dovecot/auth/libmech_gssapi.so
May 15 16:18:56 auth: Debug: auth client connected (pid=1930)
May 15 16:19:23 auth: Debug: client in: AUTH    1       PLAIN   service=pop3    secured lip=::1 rip=::1 lport=110       rport=44939     resp=AGxkYXBfdXNlcgBxd2VyMTIzNCsr
May 15 16:19:23 auth: Debug: ldap(ldap_user,::1): bind search: base=DC=oasupiit,DC=analitpribor,DC=com filter=(&amp;(objectClass=person)(mail=ldap_user))
May 15 16:19:25 auth: Debug: client out: FAIL   1       user=ldap_user</code></pre></div><p>Помогите подружить Dovecot с AD.</p>]]></content>
			<author>
				<name><![CDATA[mitushinem]]></name>
				<uri>https://linuxforum.ru/profile.php?id=34241</uri>
			</author>
			<updated>2014-05-15T12:35:28Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=408981#p408981</id>
		</entry>
</feed>
