Я установил psad в своей системе Ubuntu 13, и я настроил его для отправки электронных писем (у меня есть постфикс, установленный как почтовый сервер с smtp реле к серверам Мандрила) на некоторый адрес электронной почты, но походит на то, что это отправляет, это не совместимо с фильтрами мандрила.
Это было бы вызовом API, который достигает мандрила:
{
"from_email": null,
"from_name": null,
"send_at": null,
"async": false,
"raw_message": "Received: from pulsr.io (unknown [95.85.35.223])\n\t(Authenticated sender: MY_MANDRILL_API_KEY@gmail.com)\n\tby ip-10-75-135-250 (Postfix) with ESMTPSA id C030E3C0CF4\n\tfor <rolandjitsu@gmail.com>; Mon, 14 Apr 2014 15:10:27 +0000 (UTC)\nReceived: by pulsr.io (Postfix, from userid 0)\n\tid 7E42B61753; Mon, 14 Apr 2014 11:10:27 -0400 (EDT)\nSubject: [psad-status] firewall setup warning on pulsr!\nTo: <rolandjitsu@gmail.com>\nX-Mailer: mail (GNU Mailutils 2.99.98)\nMessage-Id: <20140414151027.7E42B61753@pulsr.io>\nDate: Mon, 14 Apr 2014 11:10:27 -0400 (EDT)\nFrom: root@pulsr (root)\n\n[-] You may just need to add a default logging rule to the /sbin/ip6tables\n 'filter' 'INPUT' chain on pulsr. For more information,\n see the file \"FW_HELP\" in the psad sources directory or visit:\n\n http://www.cipherdyne.org/psad/docs/fwconfig.html\n",
"ip_pool": null,
"to": [
"rolandjitsu@gmail.com"
],
"return_path_domain": null,
"key": "MY_MANDRILL_API_KEY"
}
И они ответили бы:
[
{
"email": "rolandjitsu@gmail.com",
"status": "rejected",
"_id": "a8c60b80ad3745e48398516bea7ca768",
"reject_reason": "invalid-sender"
}
]
Это должно быть что-то с raw_message
строка, начиная с других электронных писем, которые успешно выполняются, имеет то же null
значения на свойствах, но с другим raw_message
.
Пример рабочей электронной почты был бы:
{
"async": false,
"send_at": null,
"ip_pool": null,
"from_name": null,
"to": [
"rolandjitsu@gmail.com"
],
"return_path_domain": null,
"raw_message": "Received: from pulsr.io (unknown [95.85.35.223])\n\t(Authenticated sender: MY_MANDRILL_API_KEY@gmail.com)\n\tby ip-10-33-35-82 (Postfix) with ESMTPSA id 894FE2031D\n\tfor <rolandjitsu@gmail.com>; Mon, 14 Apr 2014 12:52:04 +0000 (UTC)\nReceived: by pulsr.io (Postfix, from userid 0)\n\tid 51038608D5; Mon, 14 Apr 2014 08:52:04 -0400 (EDT)\nFrom: Pulsr <root@pulsr.io>\nSubject: RKHunter\nTo: <rolandjitsu@gmail.com>\nX-Mailer: mail (GNU Mailutils 2.99.98)\nMessage-Id: <20140414125204.51038608D5@pulsr.io>\nDate: Mon, 14 Apr 2014 08:52:04 -0400 (EDT)\n\nPlease inspect this machine, because it may be infected.",
"from_email": null,
"key": "MY_MANDRILL_API_KEY"
}
С ответом:
[
{
"email": "rolandjitsu@gmail.com",
"status": "sent",
"_id": "ab8df939be544023a8afb77be5a1e7a8",
"reject_reason": null
}
]
Я пытался в течение двух дней теперь выяснить то, что продолжается, но у меня нет подсказки. Немного справки было бы большим, если бы кто-либо встретился с той же проблемой прежде (возможно, с SMTP Google как реле).
Править: Мой постфикс /etc/postfix/main.conf
файл:
# RFC requirement
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
# Local user mail notification off
biff = yes
# appending .domain is the MUA's job.
append_dot_mydomain = no
readme_directory = no
# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
# Hostname
myhostname = pulsr.io
# Domain
mydomain = pulsr.io
#virtual_alias_maps = hash:/etc/postfix/virtual
#virtual_alias_domains = /etc/postfix/vhosts.txt
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mydestination = pulsr localhost.pulsr.io localhost
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
# Mandrill
relayhost = [smtp.mandrillapp.com]
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_use_tls = yes
# Add Missing Headers
always_add_missing_headers = yes
Я зафиксировал его путем изменения моего имени узла машины на допустимое имя узла FQDN в /etc/hostname
.
Прежде:
pulsr
Теперь:
pulsr.io
кажется, что постфикс не был ответственен вообще для этого, psad или mta, который использует psad, использует имя узла машины. Я ожидал бы быть обработанным постфиксом в любом случае.
Мандрил требует, чтобы Ваш От адреса электронной почты имел полностью определенный домен . Так, root@mydomain.com принят, но root@myhost или просто базируется без домена, не. Вы могли бы быть в состоянии иметь постфикс, автоматически фиксируют Вашу почту путем изменения myhostname или myorigin main.cf значения для включения полного домена.