Tôi cố gắng định cấu hình chuyển tiếp postfix trong kubernetes trên Alpine bằng saslauthd.
Dockerfile:
TỪ núi cao:3,15
CHẠY bản cập nhật apk && \
apk thêm --no-cache postfix \
libsasl \
cyrus-sasl \
cyrus-sasl-đăng nhập \
cyrus-sasl-đồng bằng \
openssl \
bóng tối \
chứng chỉ ca \
bash \
rsyslog\
người giám sát && \
/usr/bin/newaliases && \
cp /etc/passwd /etc/passwd_orig && \
# Dọn dẹp
(rm "/tmp/"* 2>/dev/null || true) && (rm -rf /var/cache/apk/* 2>/dev/null || true)
TIẾP XÚC 25
SAO CHÉP ./configs/supervisord.conf /etc/supervisor/supervisord.conf
giám sát.conf:
[giám sát]
gật đầu = đúng
logfile=/var/log/supervisord.log
logfile_maxbytes=0
[chương trình:rsyslog]
lệnh =/usr/sbin/rsyslogd -n
[chương trình:postfix]
lệnh=/usr/libexec/postfix/master -c /etc/postfix -d
[chương trình: saslauthd]
lệnh=/usr/sbin/saslauthd -a bóng tối
startsecs=0
cài đặt cấu hình máy chủ là:
con mèo/etc/mặc định/saslauthd
CƠ CHẾ="bóng tối"
con mèo /etc/postfix/sasl/smtpd.conf
pwcheck_method: saslauthd
mech_list: ĐĂNG NHẬP MẠCH
con mèo /etc/postfix/mail.cf
mức độ tương thích = 2
queue_directory = /var/spool/postfix
thư mục lệnh = /usr/sbin
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
mail_owner = hậu tố
Unknown_local_recipient_reject_code = 550
debug_peer_level = 2
debugger_command =
ĐƯỜNG=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
ddd $daemon_directory/$ process_name $ process_id & ngủ 5
sendmail_path = /usr/sbin/sendmail
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
setgid_group = postdrop
html_directory = không
manpage_directory = /usr/share/man
sample_directory = /etc/postfix
readme_directory = /usr/share/doc/postfix/readme
inet_protocols = ipv4
meta_directory = /etc/postfix
shlib_directory = /usr/lib/postfix
biff = không
append_dot_mydomain = không
bị hỏng_sasl_auth_clients = có
inet_interfaces = tất cả
hộp thư_size_limit = 0
mydestination = máy chủ cục bộ
tên miền của tôi = ví dụ.com
myhostname = server.example.com
myorigin = server.example.com
máy chủ chuyển tiếp = relayhostDNS
smtp_fallback_relay = relayhostDNS
smtp_sasl_auth_enable = có
smtp_sasl_password_maps = lmdb:/etc/postfix/sasl_passwd
smtp_sasl_security_options = vô danh
smtpd_recipient_restrictions=
allow_mynetworks,
permit_sasl_authenticated,
check_relay_domains
smtpd_sasl_auth_enable = có
smtpd_sasl_local_domain = server.example.com
cyrus_sasl_config_path = /etc/postfix/sasl
smtpd_sasl_path = smtpd
smtpd_sasl_security_options = vô danh
con mèo /etc/postfix/sasl_passwd
relayhostDNS relayNgười dùng: relayPassword
Sau khi chỉ định dạng \0username\0password được mã hóa base64, tôi sử dụng telnet để kiểm tra kết nối và xác thực.
Xác thực AUTH LOGIN hoạt động chính xác nhưng AUTH PLATN thì không. Tôi gặp lỗi từ ứng dụng khách telnet của mình:
535 5.7.8 Lỗi: xác thực không thành công: giao thức xấu / hủy
và các bản ghi tiếp theo từ phía máy chủ:
2022-03-04T08:07:49.626134+00:00 mailrelay-0 postfix/smtpd[56]:
cảnh báo: Lỗi xác thực SASL: Chỉ có thể tìm thấy tác giả/vi (không
mật khẩu) 2022-03-04T08:07:49.626159+00:00 mailrelay-0
postfix/smtpd[56]: cảnh báo:
10-244-20-10.openvpn.openvpn.svc.cluster.local[10.244.20.10]: SASL
Xác thực PLAIN không thành công: giao thức xấu/hủy
Xin vui lòng bạn có thể cho tôi biết vấn đề có thể là gì?
Cảm ơn bạn.