URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 60160
[ Назад ]

Исходное сообщение
"Postfix +Cyrus-Imapdi +ClamAvi +Clamsmtpi +Аутентификация в Active ..."

Отправлено appc , 18-Сен-05 14:52 
Встала предомной задача, сделать почтовый сервер у себя в конторе для внутреннего испльзования и сделал :).
Есть у меня что-то типа опсания моих действий. Хочу выложить его чтобы другие могли в будующем пользоваться. Но в том виде как оно есть выкладывать стыдно, как-то все коряво. Посоветуйте как мне все это формить чтобы этим моим черновиком можно было пользоваться как неким руководством :)

Текст привожу ниже:
Общие параметры
Сервер:
ОС: Fedora Core 3
FQDN: k1-210.domain
Выполняемые функции: Почтовый сервер для внутреннего использования + Веб-интерфейс к почте
Требования к почтовому серверу:
•    Почта пользователей храниться на сервере (так проще делать Backup)
•    Не создавать пользователей дважды (Сначала в Active Directory потом на почтовом сервере)
•    Нужно чтобы имя пользователя и пароль на вход в Windows подходил и для почтового сервера, если пользователь сменил пароль в Windows, то пароль на почтовом сервере тоже должен смениться
•    В именах пользователей в AD присутствуют точки например: a.ivanov (так сложилось исторически)
•    
•    Нужно чтобы у пользователей была возможность самостоятельно перенаправить почту на другой ящик.
•    Вся переписка должна проверяться на вирусы
•    Хочеться иметь возможность использовать «Группы распространения» в Active Directory как почтовые псевдонимы
•    Желательно чтобы был WEB интерфейс для пользователей
Глядя на выше перечисленные требования я остановил свой выбор на следующих программах:
Дистрибутив: FC3
•    первое что попалось под руку
В качестве почтового сервера cyrus-imapd:
•    Это первое на что я наткнулся  и что отвечало моим требованиям
•    Есть возможность работать с почтой прямо на сервере (IMAP)
•    Есть возможность создавать ящики пользователям автоматически при первом входе или поступления письма через lmtp
•    Можно создавать Sieve скрипты которые позволяют управлять письмами (автоматически сортировать по папкам, перенаправлять на другой ящик и т.д. и т.п.)
В качестве MTA postfix:
•    Мне с ним проще работать чем с каким-либо другим MTA
•    Можно общаться с AD как с LDAP сервером (проверять наличие пользователя, использовать «Группы распространения» в качестве почтовых псевдонимов.
•    Можно подключить ClamAv для проверки писем на вирусы
В качестве WEB интерфейса Squirrelmail
•    Нашел в Google список вещей которые могут работать как web интерфейс к почте. SquirrelMail получилось настроить с первого раза
Аутентификация через Winbind
Параметры установки системы
Установка пакетов и дополнительных программ
Делаем минимальную установку
После установки обновляемся до последних версий с помощью yum –y update
Доставляем нужные пакеты и удаляем мешающие
/var/log/yum.log:
Sep 14 10:49:06 Installed: desktop-file-utils.i386 0.9-2
Sep 14 11:43:23 Installed: mc.i386 1:4.6.1-1.FC3
Sep 14 12:05:08 Installed: postfix.i386 2:2.1.5-5
Sep 14 12:14:28 Installed: samba-common.i386 3.0.10-1.fc3
Sep 14 12:14:28 Installed: samba-client.i386 3.0.10-1.fc3
Sep 14 12:27:29 Installed: cyrus-imapd.i386 2.2.12-1.1.fc3
Sep 14 12:29:16 Installed: perl-Cyrus.i386 2.2.12-1.1.fc3
Sep 14 12:29:16 Installed: cyrus-imapd-murder.i386 2.2.12-1.1.fc3
Sep 14 12:29:16 Installed: cyrus-imapd-nntp.i386 2.2.12-1.1.fc3
Sep 14 12:29:16 Installed: cyrus-imapd-utils.i386 2.2.12-1.1.fc3
Sep 14 12:37:10 Installed: apr.i386 0.9.4-24.2
Sep 14 12:37:10 Installed: libidn.i386 0.5.6-1
Sep 14 12:37:10 Installed: curl.i386 7.12.3-3.fc3
Sep 14 12:37:10 Installed: apr-util.i386 0.9.4-17
Sep 14 12:37:10 Installed: libc-client.i386 2002e-8
Sep 14 12:37:11 Installed: httpd.i386 2.0.53-3.3
Sep 14 12:37:12 Installed: php.i386 4.3.11-2.7
Sep 14 12:37:12 Installed: php-pear.i386 4.3.11-2.7
Sep 14 12:37:12 Installed: httpd-suexec.i386 2.0.53-3.3
Sep 14 12:37:14 Installed: squirrelmail.noarch 1.4.6-0.cvs20050812.1.fc3
Sep 14 12:37:14 Installed: php-imap.i386 4.3.11-2.7
Sep 14 17:35:36 Installed: openldap-clients.i386 2.2.13-2
Sep 14 18:16:25 Installed: cyrus-sasl-gssapi.i386 2.1.19-3
Sep 16 11:15:05 Installed: rpm-build.i386 4.3.2-21
Sep 16 12:16:14 Installed: php-mbstring.i386 4.3.11-2.7
Sep 16 19:41:26 Installed: openldap-clients.i386 2.2.13-2
Sep 18 10:21:04 Installed: autoconf.noarch 2.59-5
Sep 18 10:21:06 Installed: automake.noarch 1.9.2-3
Sep 18 10:43:21 Installed: ntp.i386 4.2.0.a.20040617-5.FC3
Sep 18 12:18:50 Installed: fetchmail.i386 6.2.5-7.fc3.1
Sep 14 12:05:20 Erased: sendmail
Вытыскиваем последнии версии, собираем и устанавливаем следующие пограммы:
+clamav
+clamsmtpd
Настройка программ
Настройка Почтовой подсистемы
Файл /etc/postfix/main.cf (параметры отличающиеся от параметров по умолчанию):
alias_maps      hash:/etc/aliases
content_filter     scan:127.0.0.1:10025
mailbox_transport     cyrus
fallback_transport     lmtp:unix:/var/lib/imap/socket/lmtp
local_recipient_maps     ldap:/etc/postfix/ldap_local_recipient_maps.conf
mydestination     $myhostname, localhost.$mydomain, localhost, $mydomain, mail.$mydomain, k1-210.$mydomain, kant-mail5.$mydomain
mynetworks     192.168.0.0/16, 127.0.0.0/8
myorigin     $myhostname
relayhost     smtp.domain
virtual_alias_maps     ldap:/etc/postfix/ldap_aliases.conf

/etc/postfix/ldap_local_recipient_maps.conf
server_host = domain
server_port = 389
search_base = dc=domain
timeout = 2
query_filter = (&(objectClass=user)(samAccountName=%u))
result_attribute = samAccountName
scope = sub
bind = yes
bind_dn =cn=postfix,cn=Users,dc=domain
bind_pw =secret
version = 3

/etc/postfix/ldap_aliases.conf
server_host = domain
server_port = 389
search_base = dc= domain
timeout = 3
query_filter = (&(mail=%s)(sAMAccountType=268435457))
result_filter = %u
result_attribute = userPrincipalName
special_result_attribute = member
scope = sub
bind = yes
bind_dn =cn=postfix,cn=Users,dc= domain
bind_pw =secret
version = 3

В /etc/postfix/master.cf добавлеям строчки
# AV scan filter (used by content_filter)
scan    unix    -       -       n       -       16      smtp -o smtp_send_xforward_command=yes
# For injecting mail back into postfix from the filter
127.0.0.1:10026 inet    n       -       n       -       16      smtpd
    -o content_filter=
    -o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
    -o smtpd_helo_restrictions=
    -o smtpd_client_restrictions=
    -o smtpd_sender_restrictions=
    -o smtpd_recipient_restrictions=permit_mynetworks,reject
    -o mynetworks_style=host
    -o smtpd_authorized_xforward_hosts=127.0.0.0/8

Файл /etc/cyrus.conf
# standard standalone server implementation

START {
  # do not delete this entry!
  recover       cmd="ctl_cyrusdb -r"

  # this is only necessary if using idled for IMAP IDLE
  idled         cmd="idled"
}

# UNIX sockets start with a slash and are put into /var/lib/imap/sockets
SERVICES {
  # add or remove based on preferences
  imap          cmd="imapd" listen="imap" prefork=5
  imaps         cmd="imapd -s" listen="imaps" prefork=1
  pop3          cmd="pop3d" listen="pop3" prefork=3
  pop3s         cmd="pop3d -s" listen="pop3s" prefork=1
  sieve         cmd="timsieved" listen="sieve" prefork=0

  # these are only necessary if receiving/exporting usenet via NNTP
#  nntp         cmd="nntpd" listen="nntp" prefork=3
#  nntps                cmd="nntpd -s" listen="nntps" prefork=1

  # at least one LMTP is required for delivery
#  lmtp         cmd="lmtpd" listen="lmtp" prefork=0
  lmtpunix      cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=1

  # this is only necessary if using notifications
#  notify       cmd="notifyd" listen="/var/lib/imap/socket/notify" proto="udp" prefork=1
}

EVENTS {
  # this is required
  checkpoint    cmd="ctl_cyrusdb -c" period=30

  # this is only necessary if using duplicate delivery suppression,
  # Sieve or NNTP
  delprune      cmd="cyr_expire -E 3" at=0400

  # this is only necessary if caching TLS sessions
  tlsprune      cmd="tls_prune" at=0400
}

Файл /etc/imapd.conf
configdirectory: /var/lib/imap
partition-default: /var/spool/imap
admins: cyrus root
sievedir: /var/lib/imap/sieve
sendmail: /usr/sbin/sendmail
hashimapspool: true
sasl_pwcheck_method: saslauthd
sasl_mech_list: PLAIN
autocreatequota: 10000
createonpost: yes
autocreateinboxfolders: Sent|Drafts|Trash
autosubscribeinboxfolders: Sent|Drafts|Trash
allowusermoves: 1
unixhierarchysep: yes
quotawarn: 90
quotawarnkb: 2048
username_tolower: 1
Настройка авторизации и аутентификации
Авторизацию пользоавтелей делаем через winbind
/etc/samba/smb.conf
[global]
        dos charset = CP866
        unix charset = UTF8
        workgroup = domain
        realm = DOMAIN
        server string = Samba server (v.%v) on %L
        security = ADS
        min passwd length = 0
        map to guest = Bad Password
        null passwords = Yes
        log file = /var/log/samba/%m.log
        max log size = 0
        announce version = 5.0 (2195)
        time server = Yes
        socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
        wins server = 192.168.0.3
        ldap ssl = no
        default service = pub
        idmap uid = 10000-20000
        idmap gid = 10000-20000
        template homedir = /home/%U
        winbind use default domain = Yes
        username = samba

Файл /etc/krb5.conf
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log

[libdefaults]
default_realm = DOMAIN
dns_lookup_realm = false
dns_lookup_kdc = false

[realms]
DOMAIN = {
  kdc = domain:88
  admin_server = domain:749
  default_domain = domain
}

[domain_realm]
.domain = DOMAIN
domain = DOMAIN

[kdc]
profile = /var/kerberos/krb5kdc/kdc.conf

[appdefaults]
pam = {
   debug = false
   ticket_lifetime = 36000
   renew_lifetime = 36000
   forwardable = true
   krb4_convert = false
}

Файл /etc/pam.d/system-auth.winbind
auth        required      /lib/security/$ISA/pam_env.so
auth        sufficient    /lib/security/$ISA/pam_winbind.so
auth        sufficient    /lib/security/$ISA/pam_unix.so use_first_pass likeauth nullok
auth        required      /lib/security/$ISA/pam_deny.so
account     sufficient    /lib/security/$ISA/pam_winbind.so
account     required      /lib/security/$ISA/pam_unix.so
account     sufficient    /lib/security/$ISA/pam_succeed_if.so uid < 100 quiet
account     required      /lib/security/$ISA/pam_permit.so
password    requisite     /lib/security/$ISA/pam_cracklib.so retry=3
password    sufficient    /lib/security/$ISA/pam_unix.so nullok use_authtok md5 shadow
password    required      /lib/security/$ISA/pam_deny.so
session     required      /lib/security/$ISA/pam_limits.so
session     required      /lib/security/$ISA/pam_unix.so

Файл /etc/sysconfig/saslauthd
и пишем там строчку
MECH=pam

Файл /etc/pam.d/imap
auth       required     pam_stack.so service=system-auth.winbind
account    required     pam_stack.so service=system-auth.winbind
Файл /etc/pam.d/sieve
auth       required     pam_stack.so service=system-auth.winbind
account    required     pam_stack.so service=system-auth.winbind
Файл /etc/pam.d/pop
auth       required     pam_stack.so service=system-auth.winbind
account    required     pam_stack.so service=system-auth.winbind
Файл /etc/pam.d/lmtp
auth       required     pam_stack.so service=system-auth.winbind
account    required     pam_stack.so service=system-auth.winbind


Содержание

Сообщения в этом обсуждении
"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено appc , 19-Сен-05 10:45 
Не уж-то ни кому тема не интересна? :)
Ну вобщем тогда нет нужды выкладывать это как описание.

"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено SubGun , 19-Сен-05 10:49 
>Не уж-то ни кому тема не интересна? :)
>Ну вобщем тогда нет нужды выкладывать это как описание.


Есть, Есть! Тема хорошая и нужная.


"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено A Clockwork Orange , 19-Сен-05 17:50 
Извини друг, что-то не увидел в конфигурации postfix связку с cyrus-imapd

"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено A Clockwork Orange , 19-Сен-05 17:51 
Пардон, увидел, правда у меня это не все.

"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено appc , 19-Сен-05 20:10 
>Извини друг, что-то не увидел в конфигурации postfix связку с cyrus-imapd
Postfix доставляет сообщения с помощью транспорта cyrus (main.cf: mailbox_transport cyrus ), Но если такого пользователя не существует то Postfix попытается доставить сообщение с помощью LMTP (main.cf: fallback_transport lmtp:unix:/var/lib/imap/socket/lmtp)

Почему так?
Помоему в списке рассылке на сайте cyrusа видел замечание о том, что при больших нагрузках на сервер, LMTP медленне работает (у меня таких нагрузок нет ) чем deliver который идет в комплекте с cyrus-imapd
Но cyrus-imapd может создавать новые ящики только в результате регистрации (imapd.conf: autocreatequota: 10000), либо если письмо пришло через LMTP (imapd.conf: createonpost: yes).


"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено Dmitry , 28-Сен-05 11:47 
Столкнулся с проблемами.
courier сам не умеет создавать Maildir/. Кто умеет?
courier и sasl не авторизируются. ПРошу уточнить что стоит в параметре курьера LDAP_FILTER, LDAP_MAIL.
В данной конфигурации поиск производится только в одноом OU, как сделать чтобы во всех?

"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено ZXVF , 20-Сен-05 16:02 
Slackware 10.1
postfix+maildrop+courier-imap+ldap+Auth-in-Active_Directory+ almost-every-thing-your-want

Без winbind, pam, и пр.

Очень кратко:


Postfix:

master.cf

maildrop  unix  -       n       n       -       -       pipe
  flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}

main.cf

virtual_gid_maps      static:5000
virtual_mailbox_base     /var/virtual/mail/virtualdomain.com/
virtual_mailbox_limit     0
virtual_mailbox_maps     ldap:ldapvirtual
virtual_minimum_uid     500
virtual_transport     maildrop
virtual_uid_maps     static:5000

ldapvirtual_server_host = 192.168.0.1
ldapvirtual_server_port = 389
ldapvirtual_bind = yes
ldapvirtual_bind_dn = CN=BindName, CN=Users, DC=virtualdomain, DC=com
ldapvirtual_bind_pw = passwd
ldapvirtual_search_base = CN=Users, DC=virtualdomain, DC=com
ldapvirtual_query_filter =  (&(mail=%s)(sAMAccountName=%u))    
ldapvirtual_result_attribute = sAMAccountName
ldapvirtual_domain = virtualdomain.com

Courier IMAP

authdaemonrc

LDAP_SERVER             192.168.0.1
LDAP_PORT               389
LDAP_PROTOCOL_VERSION   3
LDAP_BASEDN             CN=Users,DC=virtualdomain,DC=com
LDAP_BINDDN             CN=Bindname, CN=Users, DC=virtual, DC=com
LDAP_BINDPW             passwd
LDAP_TIMEOUT            5
LDAP_AUTHBIND           1
LDAP_MAIL               mail
LDAP_FILTER        (objectClass=user)
LDAP_DOMAIN             virtualdomain.com
LDAP_GLOB_UID           vmail
LDAP_GLOB_GID           vmail
LDAP_HOMEDIR            sAMAccountName
LDAP_MAILROOT           /var/virtual/mail/virtualdomain.com
LDAP_MAILDIR            ./Maildir
LDAP_MAILDIRQUOTA       info
LDAP_FULLNAME           cn
LDAP_CLEARPW            clearPassword
LDAP_CRYPTPW            userPassword
LDAP_DEREF              never
LDAP_TLS                0

>Встала предомной задача, сделать почтовый сервер у себя в конторе для внутреннего
>испльзования и сделал :).
>Есть у меня что-то типа опсания моих действий. Хочу выложить его чтобы
>другие могли в будующем пользоваться. Но в том виде как оно
>есть выкладывать стыдно, как-то все коряво. Посоветуйте как мне все это
>формить чтобы этим моим черновиком можно было пользоваться как неким руководством
>:)
>
>Текст привожу ниже:
>Общие параметры
>Сервер:
>ОС: Fedora Core 3
>FQDN: k1-210.domain
>Выполняемые функции: Почтовый сервер для внутреннего использования + Веб-интерфейс к почте
>Требования к почтовому серверу:
>• Почта пользователей храниться на сервере (так проще делать Backup)
>• Не создавать пользователей дважды (Сначала в Active Directory потом на почтовом
>сервере)
>• Нужно чтобы имя пользователя и пароль на вход в Windows подходил
>и для почтового сервера, если пользователь сменил пароль в Windows, то
>пароль на почтовом сервере тоже должен смениться
>• В именах пользователей в AD присутствуют точки например: a.ivanov (так сложилось
>исторически)
>•
>• Нужно чтобы у пользователей была возможность самостоятельно перенаправить почту на другой
>ящик.
>• Вся переписка должна проверяться на вирусы
>• Хочеться иметь возможность использовать «Группы распространения» в Active Directory как почтовые
>псевдонимы
>• Желательно чтобы был WEB интерфейс для пользователей
>Глядя на выше перечисленные требования я остановил свой выбор на следующих программах:
>
>Дистрибутив: FC3
>• первое что попалось под руку
>В качестве почтового сервера cyrus-imapd:
>• Это первое на что я наткнулся  и что отвечало моим
>требованиям
>• Есть возможность работать с почтой прямо на сервере (IMAP)
>• Есть возможность создавать ящики пользователям автоматически при первом входе или поступления
>письма через lmtp
>• Можно создавать Sieve скрипты которые позволяют управлять письмами (автоматически сортировать по
>папкам, перенаправлять на другой ящик и т.д. и т.п.)
>В качестве MTA postfix:
>• Мне с ним проще работать чем с каким-либо другим MTA
>• Можно общаться с AD как с LDAP сервером (проверять наличие пользователя,
>использовать «Группы распространения» в качестве почтовых псевдонимов.
>• Можно подключить ClamAv для проверки писем на вирусы
>В качестве WEB интерфейса Squirrelmail
>• Нашел в Google список вещей которые могут работать как web интерфейс
>к почте. SquirrelMail получилось настроить с первого раза
>Аутентификация через Winbind
>Параметры установки системы
>Установка пакетов и дополнительных программ
>Делаем минимальную установку
>После установки обновляемся до последних версий с помощью yum –y update
>Доставляем нужные пакеты и удаляем мешающие
>/var/log/yum.log:
>Sep 14 10:49:06 Installed: desktop-file-utils.i386 0.9-2
>Sep 14 11:43:23 Installed: mc.i386 1:4.6.1-1.FC3
>Sep 14 12:05:08 Installed: postfix.i386 2:2.1.5-5
>Sep 14 12:14:28 Installed: samba-common.i386 3.0.10-1.fc3
>Sep 14 12:14:28 Installed: samba-client.i386 3.0.10-1.fc3
>Sep 14 12:27:29 Installed: cyrus-imapd.i386 2.2.12-1.1.fc3
>Sep 14 12:29:16 Installed: perl-Cyrus.i386 2.2.12-1.1.fc3
>Sep 14 12:29:16 Installed: cyrus-imapd-murder.i386 2.2.12-1.1.fc3
>Sep 14 12:29:16 Installed: cyrus-imapd-nntp.i386 2.2.12-1.1.fc3
>Sep 14 12:29:16 Installed: cyrus-imapd-utils.i386 2.2.12-1.1.fc3
>Sep 14 12:37:10 Installed: apr.i386 0.9.4-24.2
>Sep 14 12:37:10 Installed: libidn.i386 0.5.6-1
>Sep 14 12:37:10 Installed: curl.i386 7.12.3-3.fc3
>Sep 14 12:37:10 Installed: apr-util.i386 0.9.4-17
>Sep 14 12:37:10 Installed: libc-client.i386 2002e-8
>Sep 14 12:37:11 Installed: httpd.i386 2.0.53-3.3
>Sep 14 12:37:12 Installed: php.i386 4.3.11-2.7
>Sep 14 12:37:12 Installed: php-pear.i386 4.3.11-2.7
>Sep 14 12:37:12 Installed: httpd-suexec.i386 2.0.53-3.3
>Sep 14 12:37:14 Installed: squirrelmail.noarch 1.4.6-0.cvs20050812.1.fc3
>Sep 14 12:37:14 Installed: php-imap.i386 4.3.11-2.7
>Sep 14 17:35:36 Installed: openldap-clients.i386 2.2.13-2
>Sep 14 18:16:25 Installed: cyrus-sasl-gssapi.i386 2.1.19-3
>Sep 16 11:15:05 Installed: rpm-build.i386 4.3.2-21
>Sep 16 12:16:14 Installed: php-mbstring.i386 4.3.11-2.7
>Sep 16 19:41:26 Installed: openldap-clients.i386 2.2.13-2
>Sep 18 10:21:04 Installed: autoconf.noarch 2.59-5
>Sep 18 10:21:06 Installed: automake.noarch 1.9.2-3
>Sep 18 10:43:21 Installed: ntp.i386 4.2.0.a.20040617-5.FC3
>Sep 18 12:18:50 Installed: fetchmail.i386 6.2.5-7.fc3.1
>Sep 14 12:05:20 Erased: sendmail
>Вытыскиваем последнии версии, собираем и устанавливаем следующие пограммы:
>+clamav
>+clamsmtpd
>Настройка программ
>Настройка Почтовой подсистемы
>Файл /etc/postfix/main.cf (параметры отличающиеся от параметров по умолчанию):
>alias_maps   hash:/etc/aliases
>content_filter  scan:127.0.0.1:10025
>mailbox_transport  cyrus
>fallback_transport  lmtp:unix:/var/lib/imap/socket/lmtp
>local_recipient_maps  ldap:/etc/postfix/ldap_local_recipient_maps.conf
>mydestination  $myhostname, localhost.$mydomain, localhost, $mydomain, mail.$mydomain, k1-210.$mydomain, kant-mail5.$mydomain
>mynetworks  192.168.0.0/16, 127.0.0.0/8
>myorigin  $myhostname
>relayhost  smtp.domain
>virtual_alias_maps  ldap:/etc/postfix/ldap_aliases.conf
>
>/etc/postfix/ldap_local_recipient_maps.conf
>server_host = domain
>server_port = 389
>search_base = dc=domain
>timeout = 2
>query_filter = (&(objectClass=user)(samAccountName=%u))
>result_attribute = samAccountName
>scope = sub
>bind = yes
>bind_dn =cn=postfix,cn=Users,dc=domain
>bind_pw =secret
>version = 3
>
>/etc/postfix/ldap_aliases.conf
>server_host = domain
>server_port = 389
>search_base = dc= domain
>timeout = 3
>query_filter = (&(mail=%s)(sAMAccountType=268435457))
>result_filter = %u
>result_attribute = userPrincipalName
>special_result_attribute = member
>scope = sub
>bind = yes
>bind_dn =cn=postfix,cn=Users,dc= domain
>bind_pw =secret
>version = 3
>
>В /etc/postfix/master.cf добавлеям строчки
># AV scan filter (used by content_filter)
>scan    unix    -    
>   -       n
>      -    
>  16      smtp -o smtp_send_xforward_command=yes
>
># For injecting mail back into postfix from the filter
>127.0.0.1:10026 inet    n      
>-       n    
>   -       16
>     smtpd
>    -o content_filter=
>    -o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
>    -o smtpd_helo_restrictions=
>    -o smtpd_client_restrictions=
>    -o smtpd_sender_restrictions=
>    -o smtpd_recipient_restrictions=permit_mynetworks,reject
>    -o mynetworks_style=host
>    -o smtpd_authorized_xforward_hosts=127.0.0.0/8
>
>Файл /etc/cyrus.conf
># standard standalone server implementation
>
>START {
>  # do not delete this entry!
>  recover       cmd="ctl_cyrusdb -r"
>
>  # this is only necessary if using idled for IMAP
>IDLE
>  idled         cmd="idled"
>
>}
>
># UNIX sockets start with a slash and are put into /var/lib/imap/sockets
>
>SERVICES {
>  # add or remove based on preferences
>  imap          
>cmd="imapd" listen="imap" prefork=5
>  imaps         cmd="imapd
>-s" listen="imaps" prefork=1
>  pop3          
>cmd="pop3d" listen="pop3" prefork=3
>  pop3s         cmd="pop3d
>-s" listen="pop3s" prefork=1
>  sieve         cmd="timsieved"
>listen="sieve" prefork=0
>
>  # these are only necessary if receiving/exporting usenet via NNTP
>
>#  nntp         cmd="nntpd"
>listen="nntp" prefork=3
>#  nntps          
>      cmd="nntpd -s" listen="nntps" prefork=1
>
>  # at least one LMTP is required for delivery
>#  lmtp         cmd="lmtpd"
>listen="lmtp" prefork=0
>  lmtpunix      cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=1
>
>  # this is only necessary if using notifications
>#  notify       cmd="notifyd" listen="/var/lib/imap/socket/notify" proto="udp"
>prefork=1
>}
>
>EVENTS {
>  # this is required
>  checkpoint    cmd="ctl_cyrusdb -c" period=30
>
>  # this is only necessary if using duplicate delivery suppression,
>
>  # Sieve or NNTP
>  delprune      cmd="cyr_expire -E 3" at=0400
>
>
>  # this is only necessary if caching TLS sessions
>  tlsprune      cmd="tls_prune" at=0400
>}
>
>Файл /etc/imapd.conf
>configdirectory: /var/lib/imap
>partition-default: /var/spool/imap
>admins: cyrus root
>sievedir: /var/lib/imap/sieve
>sendmail: /usr/sbin/sendmail
>hashimapspool: true
>sasl_pwcheck_method: saslauthd
>sasl_mech_list: PLAIN
>autocreatequota: 10000
>createonpost: yes
>autocreateinboxfolders: Sent|Drafts|Trash
>autosubscribeinboxfolders: Sent|Drafts|Trash
>allowusermoves: 1
>unixhierarchysep: yes
>quotawarn: 90
>quotawarnkb: 2048
>username_tolower: 1
>Настройка авторизации и аутентификации
>Авторизацию пользоавтелей делаем через winbind
>/etc/samba/smb.conf
>[global]
>        dos charset = CP866
>
>        unix charset = UTF8
>
>        workgroup = domain
>        realm = DOMAIN
>        server string = Samba
>server (v.%v) on %L
>        security = ADS
>        min passwd length =
>0
>        map to guest =
>Bad Password
>        null passwords = Yes
>
>        log file = /var/log/samba/%m.log
>
>        max log size =
>0
>        announce version = 5.0
>(2195)
>        time server = Yes
>
>        socket options = TCP_NODELAY
>SO_RCVBUF=8192 SO_SNDBUF=8192
>        wins server = 192.168.0.3
>
>        ldap ssl = no
>
>        default service = pub
>
>        idmap uid = 10000-20000
>
>        idmap gid = 10000-20000
>
>        template homedir = /home/%U
>
>        winbind use default domain
>= Yes
>        username = samba
>
>Файл /etc/krb5.conf
>[logging]
> default = FILE:/var/log/krb5libs.log
> kdc = FILE:/var/log/krb5kdc.log
> admin_server = FILE:/var/log/kadmind.log
>
>[libdefaults]
> default_realm = DOMAIN
> dns_lookup_realm = false
> dns_lookup_kdc = false
>
>[realms]
> DOMAIN = {
>  kdc = domain:88
>  admin_server = domain:749
>  default_domain = domain
> }
>
>[domain_realm]
> .domain = DOMAIN
> domain = DOMAIN
>
>[kdc]
> profile = /var/kerberos/krb5kdc/kdc.conf
>
>[appdefaults]
> pam = {
>   debug = false
>   ticket_lifetime = 36000
>   renew_lifetime = 36000
>   forwardable = true
>   krb4_convert = false
> }
>
>Файл /etc/pam.d/system-auth.winbind
>auth        required    
>  /lib/security/$ISA/pam_env.so
>auth        sufficient    
>/lib/security/$ISA/pam_winbind.so
>auth        sufficient    
>/lib/security/$ISA/pam_unix.so use_first_pass likeauth nullok
>auth        required    
>  /lib/security/$ISA/pam_deny.so
>account     sufficient    /lib/security/$ISA/pam_winbind.so
>account     required      /lib/security/$ISA/pam_unix.so
>
>account     sufficient    /lib/security/$ISA/pam_succeed_if.so uid <
>100 quiet
>account     required      /lib/security/$ISA/pam_permit.so
>
>password    requisite     /lib/security/$ISA/pam_cracklib.so retry=3
>password    sufficient    /lib/security/$ISA/pam_unix.so nullok use_authtok md5
>shadow
>password    required      /lib/security/$ISA/pam_deny.so
>session     required      /lib/security/$ISA/pam_limits.so
>
>session     required      /lib/security/$ISA/pam_unix.so
>
>
>Файл /etc/sysconfig/saslauthd
>и пишем там строчку
>MECH=pam
>
>Файл /etc/pam.d/imap
>auth       required    
>pam_stack.so service=system-auth.winbind
>account    required     pam_stack.so service=system-auth.winbind
>Файл /etc/pam.d/sieve
>auth       required    
>pam_stack.so service=system-auth.winbind
>account    required     pam_stack.so service=system-auth.winbind
>Файл /etc/pam.d/pop
>auth       required    
>pam_stack.so service=system-auth.winbind
>account    required     pam_stack.so service=system-auth.winbind
>Файл /etc/pam.d/lmtp
>auth       required    
>pam_stack.so service=system-auth.winbind
>account    required     pam_stack.so service=system-auth.winbind



"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено appc , 20-Сен-05 21:04 
>Slackware 10.1
>postfix+maildrop+courier-imap+ldap+Auth-in-Active_Directory+almost-every-thing-your-want
А ящики courier сам создает или нужно в ручную для каждого пользователя заводить?
Аутентификация в LDAP у курьера своя или это через pam?

"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено ZXVF , 21-Сен-05 12:21 
>>Slackware 10.1
>>postfix+maildrop+courier-imap+ldap+Auth-in-Active_Directory+almost-every-thing-your-want

>А ящики courier сам создает или нужно в ручную для каждого пользователя
>заводить?

maildirmake


>Аутентификация в LDAP у курьера своя или это через pam?

своя. пользователи виртуальные - PAM не нужен.



"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено appc , 21-Сен-05 13:17 
>>>Slackware 10.1
>>>postfix+maildrop+courier-imap+ldap+Auth-in-Active_Directory+almost-every-thing-your-want
>
>>А ящики courier сам создает или нужно в ручную для каждого пользователя
>>заводить?
>
>maildirmake
>
>
>>Аутентификация в LDAP у курьера своя или это через pam?
>
>своя. пользователи виртуальные - PAM не нужен.

Круто :)


"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено ZXVF , 21-Сен-05 12:23 
Сорри.В первом посте ошибка

не authdaemonrc а authldaprc.

>Slackware 10.1
>postfix+maildrop+courier-imap+ldap+Auth-in-Active_Directory+ almost-every-thing-your-want
>
>Без winbind, pam, и пр.
>
>Очень кратко:
>
>
>Postfix:
>
>master.cf
>
>maildrop  unix  -       n
>      n    
>  -       -  
>     pipe
>  flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
>
>main.cf
>
>virtual_gid_maps   static:5000
>virtual_mailbox_base  /var/virtual/mail/virtualdomain.com/
>virtual_mailbox_limit  0
>virtual_mailbox_maps  ldap:ldapvirtual
>virtual_minimum_uid  500
>virtual_transport  maildrop
>virtual_uid_maps  static:5000
>
>ldapvirtual_server_host = 192.168.0.1
>ldapvirtual_server_port = 389
>ldapvirtual_bind = yes
>ldapvirtual_bind_dn = CN=BindName, CN=Users, DC=virtualdomain, DC=com
>ldapvirtual_bind_pw = passwd
>ldapvirtual_search_base = CN=Users, DC=virtualdomain, DC=com
>ldapvirtual_query_filter =  (&(mail=%s)(sAMAccountName=%u))
>ldapvirtual_result_attribute = sAMAccountName
>ldapvirtual_domain = virtualdomain.com
>
>Courier IMAP
>
>authdaemonrc
>
>LDAP_SERVER            
> 192.168.0.1
>LDAP_PORT            
>   389
>LDAP_PROTOCOL_VERSION   3
>LDAP_BASEDN            
> CN=Users,DC=virtualdomain,DC=com
>LDAP_BINDDN            
> CN=Bindname, CN=Users, DC=virtual, DC=com
>LDAP_BINDPW            
> passwd
>LDAP_TIMEOUT            
>5
>LDAP_AUTHBIND           1
>
>LDAP_MAIL            
>   mail
>LDAP_FILTER  (objectClass=user)
>LDAP_DOMAIN            
> virtualdomain.com
>LDAP_GLOB_UID           vmail
>
>LDAP_GLOB_GID           vmail
>
>LDAP_HOMEDIR            
>sAMAccountName
>LDAP_MAILROOT           /var/virtual/mail/virtualdomain.com
>
>LDAP_MAILDIR            
>./Maildir
>LDAP_MAILDIRQUOTA       info
>LDAP_FULLNAME           cn
>
>LDAP_CLEARPW            
>clearPassword
>LDAP_CRYPTPW            
>userPassword
>LDAP_DEREF            
>  never
>LDAP_TLS            
>    0
>
>
>
>>Встала предомной задача, сделать почтовый сервер у себя в конторе для внутреннего
>>испльзования и сделал :).
>>Есть у меня что-то типа опсания моих действий. Хочу выложить его чтобы
>>другие могли в будующем пользоваться. Но в том виде как оно
>>есть выкладывать стыдно, как-то все коряво. Посоветуйте как мне все это
>>формить чтобы этим моим черновиком можно было пользоваться как неким руководством
>>:)
>>
>>Текст привожу ниже:
>>Общие параметры
>>Сервер:
>>ОС: Fedora Core 3
>>FQDN: k1-210.domain
>>Выполняемые функции: Почтовый сервер для внутреннего использования + Веб-интерфейс к почте
>>Требования к почтовому серверу:
>>• Почта пользователей храниться на сервере (так проще делать Backup)
>>• Не создавать пользователей дважды (Сначала в Active Directory потом на почтовом
>>сервере)
>>• Нужно чтобы имя пользователя и пароль на вход в Windows подходил
>>и для почтового сервера, если пользователь сменил пароль в Windows, то
>>пароль на почтовом сервере тоже должен смениться
>>• В именах пользователей в AD присутствуют точки например: a.ivanov (так сложилось
>>исторически)
>>•
>>• Нужно чтобы у пользователей была возможность самостоятельно перенаправить почту на другой
>>ящик.
>>• Вся переписка должна проверяться на вирусы
>>• Хочеться иметь возможность использовать «Группы распространения» в Active Directory как почтовые
>>псевдонимы
>>• Желательно чтобы был WEB интерфейс для пользователей
>>Глядя на выше перечисленные требования я остановил свой выбор на следующих программах:
>>
>>Дистрибутив: FC3
>>• первое что попалось под руку
>>В качестве почтового сервера cyrus-imapd:
>>• Это первое на что я наткнулся  и что отвечало моим
>>требованиям
>>• Есть возможность работать с почтой прямо на сервере (IMAP)
>>• Есть возможность создавать ящики пользователям автоматически при первом входе или поступления
>>письма через lmtp
>>• Можно создавать Sieve скрипты которые позволяют управлять письмами (автоматически сортировать по
>>папкам, перенаправлять на другой ящик и т.д. и т.п.)
>>В качестве MTA postfix:
>>• Мне с ним проще работать чем с каким-либо другим MTA
>>• Можно общаться с AD как с LDAP сервером (проверять наличие пользователя,
>>использовать «Группы распространения» в качестве почтовых псевдонимов.
>>• Можно подключить ClamAv для проверки писем на вирусы
>>В качестве WEB интерфейса Squirrelmail
>>• Нашел в Google список вещей которые могут работать как web интерфейс
>>к почте. SquirrelMail получилось настроить с первого раза
>>Аутентификация через Winbind
>>Параметры установки системы
>>Установка пакетов и дополнительных программ
>>Делаем минимальную установку
>>После установки обновляемся до последних версий с помощью yum –y update
>>Доставляем нужные пакеты и удаляем мешающие
>>/var/log/yum.log:
>>Sep 14 10:49:06 Installed: desktop-file-utils.i386 0.9-2
>>Sep 14 11:43:23 Installed: mc.i386 1:4.6.1-1.FC3
>>Sep 14 12:05:08 Installed: postfix.i386 2:2.1.5-5
>>Sep 14 12:14:28 Installed: samba-common.i386 3.0.10-1.fc3
>>Sep 14 12:14:28 Installed: samba-client.i386 3.0.10-1.fc3
>>Sep 14 12:27:29 Installed: cyrus-imapd.i386 2.2.12-1.1.fc3
>>Sep 14 12:29:16 Installed: perl-Cyrus.i386 2.2.12-1.1.fc3
>>Sep 14 12:29:16 Installed: cyrus-imapd-murder.i386 2.2.12-1.1.fc3
>>Sep 14 12:29:16 Installed: cyrus-imapd-nntp.i386 2.2.12-1.1.fc3
>>Sep 14 12:29:16 Installed: cyrus-imapd-utils.i386 2.2.12-1.1.fc3
>>Sep 14 12:37:10 Installed: apr.i386 0.9.4-24.2
>>Sep 14 12:37:10 Installed: libidn.i386 0.5.6-1
>>Sep 14 12:37:10 Installed: curl.i386 7.12.3-3.fc3
>>Sep 14 12:37:10 Installed: apr-util.i386 0.9.4-17
>>Sep 14 12:37:10 Installed: libc-client.i386 2002e-8
>>Sep 14 12:37:11 Installed: httpd.i386 2.0.53-3.3
>>Sep 14 12:37:12 Installed: php.i386 4.3.11-2.7
>>Sep 14 12:37:12 Installed: php-pear.i386 4.3.11-2.7
>>Sep 14 12:37:12 Installed: httpd-suexec.i386 2.0.53-3.3
>>Sep 14 12:37:14 Installed: squirrelmail.noarch 1.4.6-0.cvs20050812.1.fc3
>>Sep 14 12:37:14 Installed: php-imap.i386 4.3.11-2.7
>>Sep 14 17:35:36 Installed: openldap-clients.i386 2.2.13-2
>>Sep 14 18:16:25 Installed: cyrus-sasl-gssapi.i386 2.1.19-3
>>Sep 16 11:15:05 Installed: rpm-build.i386 4.3.2-21
>>Sep 16 12:16:14 Installed: php-mbstring.i386 4.3.11-2.7
>>Sep 16 19:41:26 Installed: openldap-clients.i386 2.2.13-2
>>Sep 18 10:21:04 Installed: autoconf.noarch 2.59-5
>>Sep 18 10:21:06 Installed: automake.noarch 1.9.2-3
>>Sep 18 10:43:21 Installed: ntp.i386 4.2.0.a.20040617-5.FC3
>>Sep 18 12:18:50 Installed: fetchmail.i386 6.2.5-7.fc3.1
>>Sep 14 12:05:20 Erased: sendmail
>>Вытыскиваем последнии версии, собираем и устанавливаем следующие пограммы:
>>+clamav
>>+clamsmtpd
>>Настройка программ
>>Настройка Почтовой подсистемы
>>Файл /etc/postfix/main.cf (параметры отличающиеся от параметров по умолчанию):
>>alias_maps   hash:/etc/aliases
>>content_filter  scan:127.0.0.1:10025
>>mailbox_transport  cyrus
>>fallback_transport  lmtp:unix:/var/lib/imap/socket/lmtp
>>local_recipient_maps  ldap:/etc/postfix/ldap_local_recipient_maps.conf
>>mydestination  $myhostname, localhost.$mydomain, localhost, $mydomain, mail.$mydomain, k1-210.$mydomain, kant-mail5.$mydomain
>>mynetworks  192.168.0.0/16, 127.0.0.0/8
>>myorigin  $myhostname
>>relayhost  smtp.domain
>>virtual_alias_maps  ldap:/etc/postfix/ldap_aliases.conf
>>
>>/etc/postfix/ldap_local_recipient_maps.conf
>>server_host = domain
>>server_port = 389
>>search_base = dc=domain
>>timeout = 2
>>query_filter = (&(objectClass=user)(samAccountName=%u))
>>result_attribute = samAccountName
>>scope = sub
>>bind = yes
>>bind_dn =cn=postfix,cn=Users,dc=domain
>>bind_pw =secret
>>version = 3
>>
>>/etc/postfix/ldap_aliases.conf
>>server_host = domain
>>server_port = 389
>>search_base = dc= domain
>>timeout = 3
>>query_filter = (&(mail=%s)(sAMAccountType=268435457))
>>result_filter = %u
>>result_attribute = userPrincipalName
>>special_result_attribute = member
>>scope = sub
>>bind = yes
>>bind_dn =cn=postfix,cn=Users,dc= domain
>>bind_pw =secret
>>version = 3
>>
>>В /etc/postfix/master.cf добавлеям строчки
>># AV scan filter (used by content_filter)
>>scan    unix    -    
>>   -       n
>>      -    
>>  16      smtp -o smtp_send_xforward_command=yes
>>
>># For injecting mail back into postfix from the filter
>>127.0.0.1:10026 inet    n      
>>-       n    
>>   -       16
>>     smtpd
>>    -o content_filter=
>>    -o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
>>    -o smtpd_helo_restrictions=
>>    -o smtpd_client_restrictions=
>>    -o smtpd_sender_restrictions=
>>    -o smtpd_recipient_restrictions=permit_mynetworks,reject
>>    -o mynetworks_style=host
>>    -o smtpd_authorized_xforward_hosts=127.0.0.0/8
>>
>>Файл /etc/cyrus.conf
>># standard standalone server implementation
>>
>>START {
>>  # do not delete this entry!
>>  recover       cmd="ctl_cyrusdb -r"
>>
>>  # this is only necessary if using idled for IMAP
>>IDLE
>>  idled         cmd="idled"
>>
>>}
>>
>># UNIX sockets start with a slash and are put into /var/lib/imap/sockets
>>
>>SERVICES {
>>  # add or remove based on preferences
>>  imap          
>>cmd="imapd" listen="imap" prefork=5
>>  imaps         cmd="imapd
>>-s" listen="imaps" prefork=1
>>  pop3          
>>cmd="pop3d" listen="pop3" prefork=3
>>  pop3s         cmd="pop3d
>>-s" listen="pop3s" prefork=1
>>  sieve         cmd="timsieved"
>>listen="sieve" prefork=0
>>
>>  # these are only necessary if receiving/exporting usenet via NNTP
>>
>>#  nntp         cmd="nntpd"
>>listen="nntp" prefork=3
>>#  nntps          
>>      cmd="nntpd -s" listen="nntps" prefork=1
>>
>>  # at least one LMTP is required for delivery
>>#  lmtp         cmd="lmtpd"
>>listen="lmtp" prefork=0
>>  lmtpunix      cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=1
>>
>>  # this is only necessary if using notifications
>>#  notify       cmd="notifyd" listen="/var/lib/imap/socket/notify" proto="udp"
>>prefork=1
>>}
>>
>>EVENTS {
>>  # this is required
>>  checkpoint    cmd="ctl_cyrusdb -c" period=30
>>
>>  # this is only necessary if using duplicate delivery suppression,
>>
>>  # Sieve or NNTP
>>  delprune      cmd="cyr_expire -E 3" at=0400
>>
>>
>>  # this is only necessary if caching TLS sessions
>>  tlsprune      cmd="tls_prune" at=0400
>>}
>>
>>Файл /etc/imapd.conf
>>configdirectory: /var/lib/imap
>>partition-default: /var/spool/imap
>>admins: cyrus root
>>sievedir: /var/lib/imap/sieve
>>sendmail: /usr/sbin/sendmail
>>hashimapspool: true
>>sasl_pwcheck_method: saslauthd
>>sasl_mech_list: PLAIN
>>autocreatequota: 10000
>>createonpost: yes
>>autocreateinboxfolders: Sent|Drafts|Trash
>>autosubscribeinboxfolders: Sent|Drafts|Trash
>>allowusermoves: 1
>>unixhierarchysep: yes
>>quotawarn: 90
>>quotawarnkb: 2048
>>username_tolower: 1
>>Настройка авторизации и аутентификации
>>Авторизацию пользоавтелей делаем через winbind
>>/etc/samba/smb.conf
>>[global]
>>        dos charset = CP866
>>
>>        unix charset = UTF8
>>
>>        workgroup = domain
>>        realm = DOMAIN
>>        server string = Samba
>>server (v.%v) on %L
>>        security = ADS
>>        min passwd length =
>>0
>>        map to guest =
>>Bad Password
>>        null passwords = Yes
>>
>>        log file = /var/log/samba/%m.log
>>
>>        max log size =
>>0
>>        announce version = 5.0
>>(2195)
>>        time server = Yes
>>
>>        socket options = TCP_NODELAY
>>SO_RCVBUF=8192 SO_SNDBUF=8192
>>        wins server = 192.168.0.3
>>
>>        ldap ssl = no
>>
>>        default service = pub
>>
>>        idmap uid = 10000-20000
>>
>>        idmap gid = 10000-20000
>>
>>        template homedir = /home/%U
>>
>>        winbind use default domain
>>= Yes
>>        username = samba
>>
>>Файл /etc/krb5.conf
>>[logging]
>> default = FILE:/var/log/krb5libs.log
>> kdc = FILE:/var/log/krb5kdc.log
>> admin_server = FILE:/var/log/kadmind.log
>>
>>[libdefaults]
>> default_realm = DOMAIN
>> dns_lookup_realm = false
>> dns_lookup_kdc = false
>>
>>[realms]
>> DOMAIN = {
>>  kdc = domain:88
>>  admin_server = domain:749
>>  default_domain = domain
>> }
>>
>>[domain_realm]
>> .domain = DOMAIN
>> domain = DOMAIN
>>
>>[kdc]
>> profile = /var/kerberos/krb5kdc/kdc.conf
>>
>>[appdefaults]
>> pam = {
>>   debug = false
>>   ticket_lifetime = 36000
>>   renew_lifetime = 36000
>>   forwardable = true
>>   krb4_convert = false
>> }
>>
>>Файл /etc/pam.d/system-auth.winbind
>>auth        required    
>>  /lib/security/$ISA/pam_env.so
>>auth        sufficient    
>>/lib/security/$ISA/pam_winbind.so
>>auth        sufficient    
>>/lib/security/$ISA/pam_unix.so use_first_pass likeauth nullok
>>auth        required    
>>  /lib/security/$ISA/pam_deny.so
>>account     sufficient    /lib/security/$ISA/pam_winbind.so
>>account     required      /lib/security/$ISA/pam_unix.so
>>
>>account     sufficient    /lib/security/$ISA/pam_succeed_if.so uid <
>>100 quiet
>>account     required      /lib/security/$ISA/pam_permit.so
>>


>>password    requisite     /lib/security/$ISA/pam_cracklib.so retry=3
>>password    sufficient    /lib/security/$ISA/pam_unix.so nullok use_authtok md5
>>shadow
>>password    required      /lib/security/$ISA/pam_deny.so
>>session     required      /lib/security/$ISA/pam_limits.so
>>
>>session     required      /lib/security/$ISA/pam_unix.so
>>
>>
>>Файл /etc/sysconfig/saslauthd
>>и пишем там строчку
>>MECH=pam
>>
>>Файл /etc/pam.d/imap
>>auth       required    
>>pam_stack.so service=system-auth.winbind
>>account    required     pam_stack.so service=system-auth.winbind
>>Файл /etc/pam.d/sieve
>>auth       required    
>>pam_stack.so service=system-auth.winbind
>>account    required     pam_stack.so service=system-auth.winbind
>>Файл /etc/pam.d/pop
>>auth       required    
>>pam_stack.so service=system-auth.winbind
>>account    required     pam_stack.so service=system-auth.winbind
>>Файл /etc/pam.d/lmtp
>>auth       required    
>>pam_stack.so service=system-auth.winbind
>>account    required     pam_stack.so service=system-auth.winbind



"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено A Clockwork Orange , 22-Сен-05 14:58 
Теперь не увидел как у тебя аутетнификация cyrus завязана на ldap. а та через winbind с active directory

"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено appc , 23-Сен-05 08:40 
>Теперь не увидел как у тебя аутетнификация cyrus завязана на ldap. а
>та через winbind с active directory
cyrus-imapd аутентификацию делает через saslauthd.
а saslauthd уже можно настроить на какой нужно механизм аутентификации.
Сейчас было настроенно через pam.
>> Файл /etc/sysconfig/saslauthd и пишем там строчку
>> MECH=pam
Помоему это хорошаю идея сделать без завязок на winbind.
Переделаю и сообщу.

"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено appc , 23-Сен-05 10:52 
>>Теперь не увидел как у тебя аутетнификация cyrus завязана на ldap. а
>>та через winbind с active directory
>cyrus-imapd аутентификацию делает через saslauthd.
>а saslauthd уже можно настроить на какой нужно механизм аутентификации.
>Сейчас было настроенно через pam.
>>> Файл /etc/sysconfig/saslauthd и пишем там строчку
>>> MECH=pam
>Помоему это хорошаю идея сделать без завязок на winbind.
>Переделаю и сообщу.

переделал :)
Файл /etc/sysconfig/saslauthd и пишем там строчку
MECH=ldap

Создаем файл /usr/local/etc/saslauthd.conf с таким содержимым
ldap_servers: ldap://nagornaya.kant.ru/
ldap_bind_dn: CN=postfix,CN=Users,DC=nagornaya,dc=kant,DC=ru
ldap_bind_pw: ..postfix
ldap_version: 3
ldap_search_base: DC=nagornaya,dc=kant,DC=ru
ldap_filter: (sAMAccountName=%u)

Теперь нет необходимости использовать PAM+Winbind


"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено A Clockwork Orange , 23-Сен-05 11:04 
Это здоров но как это перекликается с AD ?

"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено appc , 23-Сен-05 16:03 
>Это здоров но как это перекликается с AD ?
1. Проверка имени пользователя и пароля доменом
2. В качесвте mail aliases можно использовать "группы распространения"
3. Нет Необходимости в ручную создавать почтовые ящики для пользователей.
4. Нет необходимости вести вести еще одну базу с учетными данными почтовых пользователей
Вот собственно и все.
или еще что-то должно перекликаться?

"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено A Clockwork Orange , 23-Сен-05 16:14 
имел ввиду что как бы из конфигов не видно что сервер LDAP это контролер домена
где то может прояснить этот момент

"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено appc , 25-Сен-05 10:52 
>имел ввиду что как бы из конфигов не видно что сервер LDAP
>это контролер домена
>где то может прояснить этот момент
Я понял :).
Я в тексте напишу следующее: "в качестве адреса LDAP сервера в конфигах используется FQDN домена AD."

"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено A Clockwork Orange , 25-Сен-05 15:47 
можно будет увидеть готовое подробное описание7

"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено appc , 25-Сен-05 16:16 
>можно будет увидеть готовое подробное описание7
Обязательно ... я надюсь меня на днях посетит вдохновение и я доедлаю описание в первом приближении.

"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено ZXVF , 23-Сен-05 12:51 
AD ~ LDAP сервер.
К AD в w2003 srv можно коннектится без Kerberos.
Есть желание - можно через SSL (сертификаты генерить на винде).

>>>Теперь не увидел как у тебя аутетнификация cyrus завязана на ldap. а
>>>та через winbind с active directory
>>cyrus-imapd аутентификацию делает через saslauthd.
>>а saslauthd уже можно настроить на какой нужно механизм аутентификации.
>>Сейчас было настроенно через pam.
>>>> Файл /etc/sysconfig/saslauthd и пишем там строчку
>>>> MECH=pam
>>Помоему это хорошаю идея сделать без завязок на winbind.
>>Переделаю и сообщу.
>
>переделал :)
>Файл /etc/sysconfig/saslauthd и пишем там строчку
>MECH=ldap
>
>Создаем файл /usr/local/etc/saslauthd.conf с таким содержимым
>ldap_servers: ldap://nagornaya.kant.ru/
>ldap_bind_dn: CN=postfix,CN=Users,DC=nagornaya,dc=kant,DC=ru
>ldap_bind_pw: ..postfix
>ldap_version: 3
>ldap_search_base: DC=nagornaya,dc=kant,DC=ru
>ldap_filter: (sAMAccountName=%u)
>
>Теперь нет необходимости использовать PAM+Winbind



"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено Сергей , 22-Сен-05 19:04 
Я быб бы тебе очень признателен, если бы ты выложил подробное описание, как делал web-интерфейс для почты или какой софт использовал.
У меня сейчас стоит задача сделать почтовый сервер типа mail.ru То есть должны быть похможность регистрации почтового логина непосредственно посетителем сайта и, наверное вся входящая почта должна идти в MySQL
Буду признателен, если поможешь советом

"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено appc , 22-Сен-05 20:37 
>Я быб бы тебе очень признателен, если бы ты выложил подробное описание,
>как делал web-интерфейс для почты или какой софт использовал.
>У меня сейчас стоит задача сделать почтовый сервер типа mail.ru То есть
>должны быть похможность регистрации почтового логина непосредственно посетителем сайта и, наверное
>вся входящая почта должна идти в MySQL
>Буду признателен, если поможешь советом

Веб интерфейс для почты делать не нужно, он уже есть готовый (squirrelmail - например)
Что бы пользователи сами себя создавали, честно говоря ни когда такого не делал. У меня чаще всего обратная задача :).


"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено Сергей , 22-Сен-05 23:01 
>>Я быб бы тебе очень признателен, если бы ты выложил подробное описание,
>>как делал web-интерфейс для почты или какой софт использовал.
>>У меня сейчас стоит задача сделать почтовый сервер типа mail.ru То есть
>>должны быть похможность регистрации почтового логина непосредственно посетителем сайта и, наверное
>>вся входящая почта должна идти в MySQL
>>Буду признателен, если поможешь советом
>
>Веб интерфейс для почты делать не нужно, он уже есть готовый (squirrelmail
>- например)
>Что бы пользователи сами себя создавали, честно говоря ни когда такого не
>делал. У меня чаще всего обратная задача :).


Ну, конечная цель сделать второй mail.ru :)Смертельная задача. Наши пока не знают совершенно, как делать регистрацию. С остальным вроде проще все...


"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено BMerlin , 29-Сен-05 21:47 
>>>Я быб бы тебе очень признателен, если бы ты выложил подробное описание,
>>>как делал web-интерфейс для почты или какой софт использовал.
>>>У меня сейчас стоит задача сделать почтовый сервер типа mail.ru То есть
>>>должны быть похможность регистрации почтового логина непосредственно посетителем сайта и, наверное
>>>вся входящая почта должна идти в MySQL
>>>Буду признателен, если поможешь советом
>>
>>Веб интерфейс для почты делать не нужно, он уже есть готовый (squirrelmail
>>- например)
>>Что бы пользователи сами себя создавали, честно говоря ни когда такого не
>>делал. У меня чаще всего обратная задача :).
>
>
>Ну, конечная цель сделать второй mail.ru :)Смертельная задача. Наши пока не знают
>совершенно, как делать регистрацию. С остальным вроде проще все...


У кого-нибудь есть живая почтовая система Postfix & SASL2 & TLS на FreeBSD, прошу поделиться опытом создания! Руководства на opennet.ru на данную тему запутанные или с ошибками...Как в Postfixe просто сделать SMTP авторизацию???? Прошу помочь!


"Postfix+Cyrus-Imapd+ClamAv+Clamsmtp+Аутентификация в Active ..."
Отправлено Alexander Yakimenko , 04-Окт-05 17:11 
Здарова.

Все с портов.

SMTP-авторизация ч-з OpenLDAP:


/usr/local/etc/postfix/mail.cf:

smtpd_sasl_auth_enable = yes
smtpd_sasl_application_name = smtpd
smtpd_sasl_security_options = noanonymous

smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, ...

/usr/local/lib/sasl2/smtpd.conf:

pwcheck_method:saslauthd
mech_list: plain login cram-md5 digest-md5

/usr/local/etc/saslauthd.conf

ldap_servers: ldap://127.0.0.1
ldap_bind_dn: cn=root,dc=local
ldap_password: censored
ldap_search_base: dc=local
ldap_filter: uid=%u

Postfix и SASL2 собран с поддержкой OpenLDAP.

# ldd `which postfix`|grep ldap
        libldap-2.2.so.7 => /usr/local/lib/libldap-2.2.so.7 (0x280ad000)

# ldd `which saslauthd`|grep ldap
        libldap-2.2.so.7 => /usr/local/lib/libldap-2.2.so.7 (0x28220000)

TLS не нужен был.

Удачи.


"Postfix +Cyrus-Imapdi +ClamAvi +Clamsmtpi +Аутентификация в ..."
Отправлено DIman , 05-Окт-05 14:49 
Все, конечно, хорошо. И даже работает. Но вылезла проблема.

Авторизация с русским паролем не проходит. ;-(
Менять пароли не предлагать, 2000 юзеров - застрелиться можно.


"Postfix +Cyrus-Imapdi +ClamAvi +Clamsmtpi +Аутентификация в ..."
Отправлено DIman , 05-Окт-05 14:53 
Все работает через напрямую ldap замечательно, но вот вопрос!

Русские пароли не проходят, а 2Kузеров менять пароли...


"Postfix +Cyrus-Imapdi +ClamAvi +Clamsmtpi +Аутентификация в ..."
Отправлено A Clockwork Orange , 16-Мрт-06 09:11 
Статья готова? где можно почитать?

"Postfix +Cyrus-Imapdi +ClamAvi +Clamsmtpi +Аутентификация в ..."
Отправлено A Clockwork Orange , 16-Мрт-06 09:12 
Статья готова? где можно ознакомиться?

"Postfix +Cyrus-Imapdi +ClamAvi +Clamsmtpi +Аутентификация в ..."
Отправлено AlexR , 22-Апр-08 11:58 
>Статья готова? где можно ознакомиться?

Присоединяюсь к вопросу. Где можно статейку почитать? Стоит точно такая же ситуация...
Требования к почтовому серверу:
•    Почта пользователей храниться на сервере (так проще делать Backup)
•    Не создавать пользователей дважды (Сначала в Active Directory потом на почтовом сервере)
•    Нужно чтобы имя пользователя и пароль на вход в Windows подходил и для почтового сервера, если пользователь сменил пароль в Windows, то пароль на почтовом сервере тоже должен смениться
•    В именах пользователей в AD присутствуют точки например: a.ivanov (так сложилось исторически)
•    
•    Нужно чтобы у пользователей была возможность самостоятельно перенаправить почту на другой ящик.
•    Вся переписка должна проверяться на вирусы
•    Хочеться иметь возможность использовать «Группы распространения» в Active Directory как почтовые псевдонимы
•    Желательно чтобы был WEB интерфейс для пользователей


"Postfix +Cyrus-Imapdi +ClamAvi +Clamsmtpi +Аутентификация в ..."
Отправлено appc , 22-Апр-08 12:29 
>[оверквотинг удален]
>в Windows, то пароль на почтовом сервере тоже должен смениться
>•    В именах пользователей в AD присутствуют точки например:
>a.ivanov (так сложилось исторически)
>•
>•    Нужно чтобы у пользователей была возможность самостоятельно перенаправить
>почту на другой ящик.
>•    Вся переписка должна проверяться на вирусы
>•    Хочеться иметь возможность использовать «Группы распространения» в Active
>Directory как почтовые псевдонимы
>•    Желательно чтобы был WEB интерфейс для пользователей

В Журнале "Системный администратор" была статья про cyrus-imap там очень хорошо про все это рассказали, лучше чем я бы это сделал.

Все конфиги и настройки в этом посте в полне актуальны, и информации достаточно чтобы заставить выше описанную связку работать.

Сам же я, отказался от использования своего почтового сервера внутри компании, и использую бесплатные или платные версии служб Google.