POSTFIX gây tử vong: không có cơ chế xác thực SASL


22

Tôi đang vật lộn với lỗi trên hơn 5 giờ. Tôi đã cố gắng loại bỏ hoàn toàn Postfix và tôi đã làm theo hướng dẫn của hướng dẫn tiếp theohướng dẫn sử dụng SASL để cài đặt lại nó.

Khi tôi đang cố gắng đăng nhập bằng telnet, máy chủ sẽ chặn đăng nhập và tôi nhận được điều này: (với smtpd -v để biết thêm chi tiết):

postfix / smtpd [26301]: xsasl_cyrus_server_create: dịch vụ SASL = smtp, realm = (null)  
postfix / smtpd [26301]: name_mask: noanonymous  
postfix / smtpd [26301]: cảnh báo: xsasl_cyrus_server_get_mechanism_list: không có cơ chế SASL áp dụng  
postfix / smtpd [26301]: gây tử vong: không có cơ chế xác thực SASL  

đây là kết quả của postconf -n:

alias_database = hàm băm: / etc / bí danh
alias_maps = hash: / etc / bí danh
allow_percent_hack = không
append_dot_mydomain = không
biff = không
broken_sasl_auth_clents = có
config_directory = / etc / postfix
home_mailbox = Maildir /
inet_interfaces = tất cả
hộp thư_command = / usr / bin / procmail-Wrapper -o -a $ DOMAIN -d $ LOGNAME
hộp thư_size_limit = 0
mydestination = theflipapp.com, localhost.com ,, localhost
myhostname = theflipapp.com
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0THER/104 [:: 1] / 128
myorigin = / etc / tên thư
readme_directory = không
receive_d Friiter = +
chuyển tiếp =
sender_bcc_maps = hash: / etc / postfix / bcc
smtp_tls_session_cache_database = btree: $ {data_directory} / smtp_scache
smtpd_banner = $ myhostname ESMTP $ mail_name (Debian / GNU)
smtpd_recipient_restrictions = allow_mynetworks allow_sasl_authenticated từ chối_unauth_destination
smtpd_sasl_auth_enable = có
smtpd_sasl_security_options = noanonymous
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_session_cache_database = btree: $ {data_directory} / smtpd_scache
smtpd_use_tls = có
virtual_alias_maps = hash: / etc / postfix / virtual

cấu hình chính postfix:

tên miền gốc: / # cat /etc/postfix/master.cf | g ^ ^ smtp
smtp inet n - - - - smtpd -v -o smtpd_sasl_auth_enable = có
smtp unix - - - - - smtp

Hy vọng dữ liệu này sẽ giúp bạn giúp tôi ..


Đối với trường hợp của tôi, trên Ubuntu Server 16.04 , dovecot daemon không chạy, gõ dovecot đã thực hiện thủ thuật. Tuy nhiên, điều này nhấn mạnh một vấn đề tiềm ẩn là nó không chạy trong bootup. Bạn có thể đọc cách thêm nó vào đây: help.ubfox.com/community/UbfoxBootupHowto
Omar Alshaker

Câu trả lời:


27

Bạn có thể cài đặt saslauthd nhưng không cài đặt bất kỳ cơ chế nào. IMO khá bực bội và chống lỗi kém, IMO.

"Không có cơ chế SASL áp dụng" theo nghĩa đen có nghĩa là nó không thể tìm thấy bất kỳ cơ chế nào của nó. Trên hệ thống dựa trên Fedora, bạn cần cài đặt gói cyrus-sasl-plain nếu bạn muốn sử dụng các cơ chế xác thực 'PLAIN' (ví dụ: SMTP / STARTTLS).

yum install cyrus-sasl-plain

hoặc là

apt-get install libsasl2-modules

Cảm ơn nhiều! Thật sự rất khó để tìm ra nguyên nhân của những vấn đề như vậy và các thông điệp trong nhật ký không giúp ích gì - chỉ là từ khóa trong tìm kiếm để tìm câu trả lời tuyệt vời như vậy. Bạn đã cứu ngày của tôi.
hgoebl

Sau khi apt install libsasl2-devnó hoạt động trên máy của tôi.
Markus Zeller

5

giải pháp rất đơn giản, trình nền của SASL đã ngừng hoạt động. /etc/init.d/saslauthd start

Một số hacker đã cố gắng tắt nó hết lần này đến lần khác vì vậy cuối cùng tôi đã đóng nó hoàn toàn.


2

Đầu tiên, hãy thử thay đổi các dấu phân cách của smtpd_recipient_restrictions thành dấu phẩy. Không gian là IIRC không chính xác ở đây.

Sau đó: Cố gắng vô hiệu hóa tạm thời "smtpd_sasl_security_options = noanonymous". Bạn đang cố gắng xác thực với máy chủ imap CYRUS?


Theo trang man main.cf linux.die.net/man/5/main.cf trong smtpd_recipient_restrictions nó sais: 'Chỉ định danh sách các hạn chế, được phân tách bằng dấu phẩy và / hoặc khoảng trắng.' Vì vậy, chỉ cần khoảng trắng như một dấu phân cách là tốt.
Pete
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.