14

В моем пароле Gmail есть символы + и = . Как я могу настроить ssmtp чтобы избежать ошибки авторизации?

Мой /etc/ssmtp/ssmtp.conf:

root=username@gmail.com
mailhub=smtp.gmail.com:465
rewriteDomain=gmail.com
AuthUser=username
AuthPass=1234+=5678
FromLineOverride=YES
UseTLS=YES
hostname=skynet

Как мне запустить ssmtp:

$ echo "email content" | mail -s "email subject" otherMail@gmail.com
send-mail: Authorization failed (535 5.7.1
http://support.google.com/mail/bin/answer.py?answer=14257
hz16sm4385885lab.6)

3 ответа3

4

Есть еще ряд нерешенных ошибок , связанных со специальными символами на линии AuthPass в файле /etc/ssmtp/ssmtp.conf

https://bugs.debian.org/cgi-bin/pkgreport.cgi?repeatmerged=no&src=ssmtp#_0_3_4

Эти сообщения об ошибках предназначены специально для страницы ssmtp в Debian, но, вероятно, применимы к другим.

  • Журналы отчетов об ошибках Debian - # 463196: ssmtp не может проанализировать AuthPass с '=' или ':' в нем
  • Журналы отчетов об ошибках Debian - # 768129: ssmtp: Та же проблема с "#"

Согласно этим журналам отчетов, строки, содержащие символы = ,: или #, либо пропускаются полностью, либо обрабатываются таким образом, чтобы удалить часть пароля справа от этих символов.

Другими словами, в настоящее время нет способа "экранировать" эти специальные символы в строке AuthPass .


Как примечание, есть ряд устройств, таких как беспроводные домашние принтеры, которые требуют ввода паролей на цифровой клавиатуре, аналогично тем, которые используются на телефонах. Некоторые специальные символы доступны на этих устройствах, но многие не могут быть выбраны.

В подобных ситуациях вы (к сожалению) вынуждены изменить свой пароль для устройства.

Более длинный пароль, состоящий из букв и цифр, предпочтительнее, чем более короткий, с большим количеством знаков препинания.


Этот вопрос также очень хорошо задавался и отвечался на следующей странице:

Какие символы недопустимы в пароле в файле ssmtp.conf?

-1

Ответ сильно зависит от контекста, в котором вы вводите или отправляете пароль. В некоторых форматах вы можете заключить свой пароль в "" ", в других вам нужно будет экранировать оскорбительные символы. Этот escape-символ отличается в разных программах, оболочках, операционных системах и т.д. В пакетных сценариях Windows escape - это ^ а в определенных Linux или терминальных ситуациях escape - \ .

-1

Попробуйте избежать второго знака равенства:

AuthPass=1234+\=5678

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .