Hello. Szeretnék beállítani egy vestacp alatt található exim4 szervert, hogy az Office 365 alatt található exhange szerverrel továbbítsa a leveleket autentikált smtpn keresztül. Jelenleg az alábbi konfigurációt használom, valakinek van ötlete, hogy hol van benne a hiba? Esetleg az exchangeben kell beállítani valamit, hogy alapból bármilyen tartományból érkező levelet átengedjen? Köszönöm a segítséget.
/etc/exim4/exim4.conf.template
begin authenticators
# Office365 login
office365_login:
driver = plaintext
public_name = LOGIN
client_send = ":anya@csavar.onmicrosoft.com:fa312312dasdnla1EE"
begin routers
# Office365 smarthost
office365_relay:
driver = manualroute
domains = ! +local_domains
transport = office365_smtp
route_list = * smtp.office365.com::587;
host_find_failed = defer
no_more
begin transports
# Office365 smtp
office365_smtp:
driver = smtp
port = 587
hosts_require_auth = $host_address
hosts_require_tls = $host_address
/etc/exim4/passwd.client
*.office365.com:anya@csavar.onmicrosoft.com:fa312312dasdnla1EE
A jelenlegi error:
2020-04-09 19:02:37 1jMgBx-0006n5-NF <= test@vodor.hu U=admin P=local S=585 id=991c59282ae0322d7ecc6d568a9e67fb@vodor.hu
2020-04-09 19:02:43 1jMgBx-0006n5-NF H=LHR-efz.ms-acdc.office.com [40.100.174.226] TLS error on connection (recv): The TLS connection was non-properly terminated.
2020-04-09 19:02:43 1jMgBx-0006n5-NF H=LHR-efz.ms-acdc.office.com [40.100.174.226] TLS error on connection (send): The specified session has been invalidated for some reason.
2020-04-09 19:02:43 1jMgBx-0006n5-NF ** szivarozo@pingvin.com R=office365_relay T=office365_smtp H=LHR-efz.ms-acdc.office.com [40.100.174.226] X=TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256 CV=no: SMTP error from remote mail server after pipelined MAIL FROM:<test@vodor.hu> SIZE=1626: 530 5.7.57 SMTP; Client was not authenticated to send anonymous mail during MAIL FROM [LO2P265CA0007.GBRP265.PROD.OUTLOOK.COM]
2020-04-09 19:02:43 1jMgC3-0006nI-6M <= <> R=1jMgBx-0006n5-NF U=Debian-exim P=local S=2286
2020-04-09 19:02:43 1jMgBx-0006n5-NF Completed
2020-04-09 19:02:43 1jMgC3-0006nI-6M => test <test@vodor.hu> R=localuser T=local_delivery
2020-04-09 19:02:43 1jMgC3-0006nI-6M Completed
- 520 megtekintés
Hozzászólások
Az authenticatorból hiányzik a client_condition, anélkül nem veszi figyelembe.
A hosts_require_auth/hosts_require_tls megszívathat, ha több IP címe van a másik gépnek, és mivel a route-tal már kiválasztottad, hogy miket akarsz ide küldeni, és a cél SMTP szerverek listája amúgy fix, így ha az office365_smtp transporta kerültél, akkor már biztosan akarsz tls-t és authentikációt is. Ergó mind a két változóba tehetsz *-ot.
https://www.exim.org/exim-html-current/doc/html/spec_html/ch-smtp_authentication.html
A javasolt minta szerintem tök jó:
client_condition = ${if !eq{$tls_out_cipher}{}}
További probléma, hogy szerintem nem jó a client_send formátuma:
https://www.exim.org/exim-html-current/doc/html/spec_html/ch-the_plaintext_authenticator.html
A kettőspontos a LOGIN típusúhoz jó, a PLAIN-hez ^ kell.
- A hozzászóláshoz be kell jelentkezni
Hello. Köszönöm a segítséget, így most már kimennek a levelek, egy dologba belefutottam még, a sender name nek meg kell egyeznie az autentikációnál használt Office 365 fiók nevével. Azt kell még kitalálni, hogy felül lehet e bírálni valahogy, hogy a címzetteknek más néven jelenjen meg a feladó nál és az Exchange Online is elfogadja.
A módosított konfig, ha esetleg másnak is kell majd:
/etc/exim4/exim4.conf.template
begin authenticators
# Office365 login
office365_login:
driver = plaintext
public_name = LOGIN
client_condition = ${if !eq{$tls_out_cipher}{}}
client_send = :anya@csavar.onmicrosoft.com:fa312312dasdnla1EE
begin routers
# Office365 smarthost
office365_relay:
driver = manualroute
domains = ! +local_domains
transport = office365_smtp
route_list = * smtp.office365.com::587;
host_find_failed = defer
no_more
begin transports
# Office365 smtp
office365_smtp:
driver = smtp
port = 587
hosts_require_auth = *
hosts_require_tls = *
/etc/exim4/passwd.client
*.office365.com:anya@csavar.onmicrosoft.com:fa312312dasdnla1EE
- A hozzászóláshoz be kell jelentkezni
Nem hiszem hogy segít, de nálam egy olyan email címet használok az autentikációhoz, amiről leveleket sosem, küldünk. Persze én nem a nagy m$ -el állok szemben.
* Én egy indián vagyok. Minden indián hazudik.
- A hozzászóláshoz be kell jelentkezni