Всем доброго времени суток.
Настраиваю сервер, с которого должна происходить отправка электронной почти из программы на С.
В качестве операционной системы используется Debian. В качестве почтового сервера был выбран Exim.Авторизацию в Exim настраивалась по мануалу
https://help.ubuntu.com/lts/serverguide/exim4.html
В программе на C используется libcurl в качестве SMTP клиента, который должен подключиться к серверу и отправить нужное сообщение.
В итоге получается
> AUTH LOGIN c2VydmljZQ==
* SMTP 0x2253df8 state change from EHLO to AUTHPASSWD
< 334 UGFzc3dvcmQ6
> dGhlYmVzdHNlcnZpY2Vpbndob2xld29ybGQ=
* SMTP 0x2253df8 state change from AUTHPASSWD to AUTH
< 535 Incorrect authentication data
* Authentication failed: 535
> QUIT
В логе /var/log/exim4/mainlog написано вот это
login_saslauthd_server authenticator failed for cityboard.info (cityboard) [W.X.Y.Z]: 535 Incorrect authentication data (set_id=service)
Пользователь, с помощью которого программа не может пройти авторизацию на сервере, создавался с помощью команды /usr/share/doc/exim4-base/examples/exim-adduser, которая успешно записала в /etc/exim4/passwd вот такую строчку
service:$1$iOUE$B1ITsJwNgcAXKNBwDdrHC/:dsadasdsadsadas
Разрешения у файла /etc/exim4/passwd прописаны вот такие
-rw-r----- 1 root Debian-exim 67 Дек 15 18:39 passwd
При этом даже если не использовать libcurl а просто подключиться с помощью
openssl s_client -debug -starttls smtp -crlf -connect W.X.Y.Z:25
и написать ehlo, а потом auth login происходит то же самое
В какую сторону копать?
Лёд тронулся, господа присяжные заседатели!
Авторизация прошла, письмо отправилось, НО только когда пользователь с такими учетными данными был добавлен в систему с помощью adduser.
Как теперь сделать, чтобы пользователи электронной почты были отдельно от пользователей системных. Чтобы exim использоватл свой passwd?