Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программное обеспечение Linux и FreeBSD (http://forum.oszone.net/forumdisplay.php?f=11)
-   -   FreeBSD & Postfix & CyrusSASL(saslauthd) (http://forum.oszone.net/showthread.php?t=232505)

tarasov.evgeny 10-04-2012 16:58 1897079

FreeBSD & Postfix & CyrusSASL(saslauthd)
 
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 1898769

Из упомянутой статьи:
Цитата:

простейший POP3/POP3S-сервер на базе popa3d и stunnel заменен POP3/POP3S/IMAP4/IMAP4S-сервером Courier-IMAP
Что-то из этого настроено?

tarasov.evgeny 24-04-2012 09:24 1904866

Добрый день,

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

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 1904900

Я так понял нужно изменить параметр
ignore_mx_lookup_error = no
на yes?

gf100 24-04-2012 13:42 1905004

Цитата:

Цитата tarasov.evgeny
check_helo_access hash:/usr/local/etc/postfix/access_helo,
reject_invalid_helo_hostname,
reject_non_fqdn_helo_hostname,
reject_unknown_helo_hostname, »

Проверка приветствия - если кривое или не соответствует серверу отправителя - на выброс.
Цитата:

Цитата tarasov.evgeny
check_sender_access hash:/usr/local/etc/postfix/access_sender,
reject_non_fqdn_sender,
reject_unknown_sender_domain,
reject_unverified_sender, »

Проверка отправителей по базе access_sender - от неизвестных не принимаем.
Цитата:

Цитата tarasov.evgeny
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 »

Похоже на проверку отправителей в "чёрных списках".
Цитата:

Цитата tarasov.evgeny
Но почему-то не отправляется почта, даже если отключить фильтры. »

А DNS в норме?

tarasov.evgeny 24-04-2012 14:45 1905058

Вложений: 1
Цитата:

Проверка приветствия - если кривое или не соответствует серверу отправителя - на выброс.
не думаю, что google или yandex не правильно, что то у себя настроил в плане приветствия. Это что-то у меня.

Цитата:

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

\etc\rc.conf

named_enable = "YES"

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


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


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

leonty 24-04-2012 23:46 1905369

Цитата:

Цитата tarasov.evgeny
\etc\rc.conf »

в другую сторону наклон :)
Цитата:

Цитата tarasov.evgeny
named_enable = "YES" »

пробелы уберите
Цитата:

Цитата tarasov.evgeny
/etc/nameddb»

кто это? Configuration files for named currently reside in /etc/namedb directory
...
Цитата:

Цитата tarasov.evgeny
Как проверить настроить? »

2 инфинитива подряд.... Проверить можно утилитами dig & host

tarasov.evgeny 25-04-2012 09:19 1905488

Код:

в другую сторону наклон
пробелы уберите

С этим всё нормально (опечатка). В том смысле, что почта заработала. Я снова скопировал данные со старого на новый сервер.
Нашел команду
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 1905556

Цитата:

Цитата tarasov.evgeny
Outlook не получил письмо.
На сервере он есть
Я настроил клиент в опера - сообщение появилось. »

Крути Outlook... pop3 и авторизация.

tarasov.evgeny 26-04-2012 16:05 1906236

Цитата:

Цитата gf100
Крути Outlook... pop3 и авторизация. »

Так проблема в том, что такое происходит не всегда. То Outlook забирает, то не забирает...


Время: 06:19.

Время: 06:19.
© OSzone.net 2001-