Войти

Показать полную графическую версию : FreeBSD & Postfix & CyrusSASL(saslauthd)


tarasov.evgeny
10-04-2012, 16:58
FreeBSD 9.0 release
Postfix 2.8.7,1
CyrusSASL 2.1.25
Cyrus-sasl-saslauthd 2.1.25
Popa3d


Почтовый сервер может отправлять данные наружу и получать почту с мира, но не может отдавать письма клиентам.
Пользователи почты = локальные пользователи FreeBSD
Настройки выполнялись по статье:
http://www.sergeysl.ru/freebsd-postfix-mail-system/
Конфигурационные файл:
/usr/local/etc/postfix/main.cf
...
smtpd_sasl_auth_enable=yes
smtpd_sasl_security_options=noanonymous
smtpd_sasl_local_domain=$mydomain
broken_sasl_auth_client=yes

#TLS
smtp_use_tls=yes
smtpd_use_tls=yes
smtpd_tls_auth_only=yes
smtp_tls_note_starttls_offer=yes
smtpd_tls_key_file=/usr/local/etc/postfix/smtpd.pem
smtpd_tls_cert_file=/usr/iocal/etc/postfix/smtpd.pem
smtpd_tls_CAfile=/usr/iocal/etc/postfix/smtpd.pem
smtpd_tls_loglevel=1
smtpd_tls_received_header=yes
smtpd_tls_session_cache_timeout=3600s
tls_random_source=dev:/dev/urandom

...

Не могу выполнить тест работы saslauthd.
saslauthd -v
authentication mechanisms: sasldb getpwent kerberos5 pam rimap

При выполнение команды (Пользователь test с паролем pass - создан)
testsaslauthd -u test -p pass
connect(): No such file or directory
[Примечание]. Расскоментировал строчку в /usr/local/etc/postfix/master.cf:
cyrus unix - n n - - pipe
Ответ:
0: OK "Success"

Но при выполнение
telnet localhost 25
...
EHLO localhost
250-mail.example.ru
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-DSN
дальше зависает.

В журнале я вижу только:
Apr 10 15:41:11 mail postfix/smtpd[1111]: connect from localhost [127.0.0.1]
После сбрасывания вручную через quit вижу точно такую же запись только disonnect

Папка установки saslauthd: /var/run/saslauthd
В папке saslauthd.pid
К папке выполнял команды:
chown root:wheel /var/run/saslauthd
chmod 750 /var/run/saslauthd

gf100
13-04-2012, 11:42
Из упомянутой статьи:простейший POP3/POP3S-сервер на базе popa3d и stunnel заменен POP3/POP3S/IMAP4/IMAP4S-сервером Courier-IMAP
Что-то из этого настроено?

tarasov.evgeny
24-04-2012, 09:24
Добрый день,

Разобрался. Почта работает. Авторизация проходит.
Если устанавливаю ограничения, то почта работает только в пределах домена.
Подскажите, что из этого блокирует мир?
Если я отключаю вот это (ниже), то я принимаю почту.

strict_rfc821_envelopes = yes
disable_vrfy_command = yes
smtpd_helo_required = yes

smtpd_client_restrictions =
smtpd_helo_restrictions =
smtpd_sender_restrictions =
smtpd_recipient_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination,
reject_unauth_pipelining,
check_client_access hash:/usr/local/etc/postfix/access_client,
check_client_access pcre:/usr/local/etc/postfix/access_client.pcre,
reject_unknown_client_hostname,
check_helo_access hash:/usr/local/etc/postfix/access_helo,
reject_invalid_helo_hostname,
reject_non_fqdn_helo_hostname,
reject_unknown_helo_hostname,
check_sender_access hash:/usr/local/etc/postfix/access_sender,
reject_non_fqdn_sender,
reject_unknown_sender_domain,
reject_unverified_sender,
reject_non_fqdn_recipient,
reject_unknown_recipient_domain,
reject_unverified_recipient,
reject_rbl_client cbl.abuseat.org,
reject_rbl_client combined.njabl.org,
reject_rbl_client dnsbl.njabl.org,
reject_rbl_client dul.ru,
reject_rbl_client dynablock.njabl.org,
reject_rbl_client opm.blitzed.org,
reject_rhsbl_client blackhole.securitysage.com,
reject_rhsbl_client rhsbl.sorbs.net,
reject_rhsbl_sender blackhole.securitysage.com,
reject_rhsbl_sender rhsbl.sorbs.net,
permit


Но почему-то не отправляется почта, даже если отключить фильтры.
Вот основная часть main.cf
myhostname = mail.example.com
mydomain = example.com
myorigin = $mydomain
# 192.168.1.1 - внешняя сеть интернет
# 192.168.0.1 - внутрення сеть (локальная сеть)
inet_interfaces = 192.168.1.1, 192.168.0.1
mydestination = $mydomain
mynetworks = 127.0.0.0/8, 192.168.0.1/24
alias_database = hash:/etc/aliases

smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $mydomain
broken_sasl_auth_clients = yes

mailbox_size_limit = 52428800
message_size_limit = 10485760

invalid_hostname_reject_code = 550
non_fqdn_reject_code = 550
unknown_address_reject_code = 550
unknown_client_reject_code = 550
unknown_hostname_reject_code = 550
unverified_recipient_reject_code = 550
unverified_sender_reject_code = 550

strict_rfc821_envelopes = yes
disable_vrfy_command = yes
smtpd_helo_required = yes

smtpd_client_restrictions =
smtpd_helo_restrictions =
smtpd_sender_restrictions =
smtpd_recipient_restrictions =
permit_mynetworks,
....


При отправке в журнале вижу
maps_find: recipient_canonical_maps: ev@yandex.ru : not found
mail_addr_find: ev@yandex.ru -> not found
maps_find: canonical_maps: : not found
mail_addr_find: : not found
maps_find: virtual_alias_maps: : not found
mail_addr_find: : not found

Host or domain name not found. Name service error fo name=yandex.ru Host not found. Name service error for name=yandex.ru type=MX: Host not found, try again



Евгений

tarasov.evgeny
24-04-2012, 10:09
Я так понял нужно изменить параметр
ignore_mx_lookup_error = no
на yes?

gf100
24-04-2012, 13:42
check_helo_access hash:/usr/local/etc/postfix/access_helo,
reject_invalid_helo_hostname,
reject_non_fqdn_helo_hostname,
reject_unknown_helo_hostname, »
Проверка приветствия - если кривое или не соответствует серверу отправителя - на выброс.
check_sender_access hash:/usr/local/etc/postfix/access_sender,
reject_non_fqdn_sender,
reject_unknown_sender_domain,
reject_unverified_sender, »
Проверка отправителей по базе access_sender - от неизвестных не принимаем.
reject_rbl_client cbl.abuseat.org,
reject_rbl_client combined.njabl.org,
reject_rbl_client dnsbl.njabl.org,
reject_rbl_client dul.ru,
reject_rbl_client dynablock.njabl.org,
reject_rbl_client opm.blitzed.org,
reject_rhsbl_client blackhole.securitysage.com,
reject_rhsbl_client rhsbl.sorbs.net,
reject_rhsbl_sender blackhole.securitysage.com,
reject_rhsbl_sender rhsbl.sorbs.net »
Похоже на проверку отправителей в "чёрных списках".
Но почему-то не отправляется почта, даже если отключить фильтры. »
А DNS в норме?

tarasov.evgeny
24-04-2012, 14:45
Проверка приветствия - если кривое или не соответствует серверу отправителя - на выброс.
не думаю, что google или yandex не правильно, что то у себя настроил в плане приветствия. Это что-то у меня.

А DNS в норме?
вроде да. В том смысле, что для компьютеров данный сервер является шлюзом и dns и они нормально работают с интернетом.

\etc\rc.conf

named_enable = "YES"

/etc/nameddb - скопировал файлы со старого компьютера.


Загрузил лог-файл


Похоже дело в DNS. Как проверить настроить? Дело в том, что настройки были переписаны со старого сервера, на котором также была почта. Она и сейчас есть и в данный момент работает. DNS настройки я скопировал, а почту новую прикручиваю...

leonty
24-04-2012, 23:46
\etc\rc.conf »
в другую сторону наклон :)
named_enable = "YES" »
пробелы уберите
/etc/nameddb»
кто это? Configuration files for named currently reside in /etc/namedb directory
... (http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/network-dns.html)
Как проверить настроить? »
2 инфинитива подряд.... Проверить можно утилитами dig & host

tarasov.evgeny
25-04-2012, 09:19
в другую сторону наклон
пробелы уберите
С этим всё нормально (опечатка). В том смысле, что почта заработала. Я снова скопировал данные со старого на новый сервер.
Нашел команду
dig -t MX gmail.com
Вот ответ, он явно не верный:
; <<>> DiG 9.8.1-P1 <<>> -t MX gmail.com ;; global options: +cmd ;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 17263 ;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0 ;; WARNING: recursion requested but not available

;; QUESTION SECTION:
;gmail.com. IN MX

;; Query time: 78 msec
;; SERVER: 194.190.195.66#53(194.190.195.66) ;; WHEN: Wed Apr 25 09:16:49 2012 ;; MSG SIZE rcvd: 27


Но при этом почта забегала.

Иногда почта не доходит до клиента (outlook). То есть я вижу письмо на сервере - оно есть, но клиент его не забирает. В чем может быть проблема? Что искать в логах? Только что отправил команду:
less /usr/local/etc/postfix/main.cf | mail mail@example.com
Outlook не получил письмо.
На сервере он есть
Я настроил клиент в опера - сообщение появилось.
Вот конфиг фильтров:

mailbox_size_limit = 52428800
message_size_limit = 10485760

invalid_hostname_reject_code = 550
non_fqdn_reject_code = 550
unknown_address_reject_code = 550
unknown_client_reject_code = 550
unknown_hostname_reject_code = 550
unverified_recipient_reject_code = 550
unverified_sender_reject_code = 550

strict_rfc821_envelopes = yes
disable_vrfy_command = yes
smtpd_helo_required = yes

smtpd_delay_reject = yes

smtpd_recipient_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination,
reject_unauth_pipelining,
reject_non_fqdn_helo_hostname,
reject_unknown_helo_hostname,
check_sender_access hash:/usr/local/etc/postfix/access_sender,
reject_non_fqdn_sender,
reject_unknown_sender_domain,
reject_unverified_sender,
reject_non_fqdn_recipient,
reject_unknown_recipient_domain,
reject_unverified_recipient,
permit

header_checks = regexp:/usr/local/etc/postfix/header_checks
mime_header_checks = regexp:/usr/local/etc/postfix/mime_header_checks


Многие первоначальные элементы пришлось убрать, поскольку с ними почта не доставлялась...

Появляется сообщение:
mail inetd[1038]: pop3 from IP exceeded counts/min (limit 60/min)
где IP внутренний адрес компа из локальной сети.

gf100
25-04-2012, 11:17
Outlook не получил письмо.
На сервере он есть
Я настроил клиент в опера - сообщение появилось. »
Крути Outlook... pop3 и авторизация.

tarasov.evgeny
26-04-2012, 16:05
Крути Outlook... pop3 и авторизация. »
Так проблема в том, что такое происходит не всегда. То Outlook забирает, то не забирает...




© OSzone.net 2001-2012