отправка почты через Java - PullRequest
1 голос
/ 29 марта 2011

Я столкнулся с проблемой на сервере centOS при отправке писем Java.Получение следующего исключения.

javax.mail.MessagingException: Не удалось подключиться к узлу SMTP: localhost, порт: 25, ответ: -1


Iиспользовал следующую команду из командной строки, и я получил сообщение, как и ожидалось.

echo "testing" | mail -s"test subject" shantanu.oa@gmail.com

Соответствующая запись из maillog выглядит следующим образом ...

Mar 28 20:13:16 postfix/smtpd[10120]: fatal: no SASL authentication mechanisms
Mar 28 20:13:17 postfix/master[28163]: warning: process /usr/libexec/postfix/smtpd pid 10120 exit status 1
Mar 28 20:13:17 postfix/master[28163]: warning: /usr/libexec/postfix/smtpd: bad command startup -- throttling
Mar 28 20:26:22 postfix/smtpd[11001]: warning: SASL: Connect to private/auth failed: Connection refused

Как сделатьЯ исправляю проблему?

Ответы [ 3 ]

0 голосов
/ 29 марта 2011

нуждается ли ваш smtp-сервер в аутентификации? Вроде так, потому что вызов cmd с почтой работает. В конфигурации постфикса по умолчанию локальный пользователь может отправлять почту без аутентификации. И ваше Java-приложение может не быть зарегистрированным системным пользователем на этом компьютере.

Попробуйте ввести имя пользователя и пароль в своем коде для входа на сервер SMTP.

0 голосов
/ 29 марта 2011

Из записи в журнале

Mar 28 20:13:16 postfix/smtpd[10120]: fatal: no SASL authentication mechanisms

Я подозреваю, что проблема в Postfix, из которых я не эксперт.Поиск в Google «фатальный: нет механизмов аутентификации SASL» дает множество интересных ссылок: возможно, посмотрите здесь или здесь .

0 голосов
/ 29 марта 2011

Исключение составляет невозможность подключения к хосту.

Вы пробовали телнет?

Еще одна вещь, которую нужно проверить, это то, правильно ли выполняется разрешение имени на IP. Если вы не можете использовать IP непосредственно вместо хоста, чтобы увидеть, что происходит.

...