Znaki specjalne w haśle ssmtp


14

Mam +i =znaki w haśle Gmaila. Jak mogę skonfigurować, ssmtpaby uniknąć błędu autoryzacji?

Mój /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

Jak uruchomić 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)

1
W jakim programie występuje błąd? Podaj nam kontekst. Zwięzłość jest dobra, ale nie ma nad czym pracować.
— użytkownik 99572 ma się dobrze

Do pytania dołączam więcej informacji.
— Jofsey

Czy próbowałeś pojedynczych cytatów, które powinny Ci
— pomóc

Błąd znajduje się na github.com/ajwans/sSMTP/blob/master/ssmtp.c#L913 , pamiętam, że przesłałem łatkę w 2010 roku ... nikogo to nie obchodzi. Myślę, że to funkcja, a nie błąd!
— David S.

Odpowiedzi:


5

Istnieje jeszcze szereg nierozwiązanych błędów dotyczących znaków specjalnych na AuthPasslinii w /etc/ssmtp/ssmtp.confpliku:

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

Te raporty błędów dotyczą konkretnie ssmtpstrony w Debianie, ale prawdopodobnie dotyczą innych.

Zgodnie z tymi dziennikami raportów wiersze zawierające znaki =, :albo #są całkowicie pomijane, albo przetwarzane w sposób, który usuwa część hasła po prawej stronie tych znaków.

Innymi słowy, obecnie nie ma możliwości „ucieczki” z tych znaków specjalnych w AuthPasslinii.


Na marginesie, istnieje wiele urządzeń, takich jak bezprzewodowe drukarki domowe, które wymagają wprowadzenia hasła na klawiaturze numerycznej, podobnie jak w telefonach. Niektóre znaki specjalne są dostępne na tych urządzeniach, ale wielu nie można wybrać.

W takich sytuacjach jesteś (niestety) zmuszony do dostosowania hasła do urządzenia.

Dłuższe hasło składające się z liter i cyfr jest lepsze niż krótsze z większą liczbą znaków interpunkcyjnych.


To pytanie zostało również zadane i udzielono bardzo dobrej odpowiedzi na następującej stronie:

Jakie znaki w haśle ssmtp.conf są nielegalne?


@ Hugo To może być dobry temat na inne pytanie: superuser.com/help/how-to-ask Jeśli coś znajdziesz lub opublikujesz własne, możesz zostawić tutaj kolejny komentarz do tego linku.
— JonathanDavidArndt

Opiekunowie powinni rozważyć potraktowanie wpisu pliku konfiguracyjnego jako Urlencoded, jak w niektórych innych pakietach.
— Old Geezer

1

Możesz użyć następującego obejścia:

feed the password directly in the command line argument

ssmtp -ap "Hash # Password" ...

alternatively put the password in an environment variable.

ssmtp -ap $ PASSWD ...

Mam nadzieję, że to pomogło.


-1

Odpowiedź w dużym stopniu zależy od kontekstu, w którym wpisujesz lub podajesz hasło. W niektórych formatach możesz otoczyć hasło hasłem "", w innych będziesz musiał uciec od złych znaków. Ten znak zmiany znaczenia różni się między programami, powłokami, systemami operacyjnymi itp. W skryptach wsadowych systemu Windows wyjściem jest ucieczka, ^podczas gdy w niektórych sytuacjach w Linuksie lub terminalu jest to wyjście ucieczki \.


1
Próbowałem zapisać hasło w 1234\+\=5678formie, ale wystąpił ten sam błąd.
— Jofsey

1
Kontekstem jest ssmtppakiet, a nie SMTP w ogóle.
— Kenny Evitt,

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.