Caracteres especiales en la contraseña ssmtp

14

Tengo +y =caracteres en mi contraseña de gmail. ¿Cómo puedo configurar ssmtppara evitar errores de autorización?

Mi /etc/ssmtp/ssmtp.conf:

[email protected]
mailhub=smtp.gmail.com:465
rewriteDomain=gmail.com
AuthUser=username
AuthPass=1234+=5678
FromLineOverride=YES
UseTLS=YES
hostname=skynet

¿Cómo ejecuto ssmtp?

$ echo "email content" | mail -s "email subject" [email protected]
send-mail: Authorization failed (535 5.7.1
http://support.google.com/mail/bin/answer.py?answer=14257
hz16sm4385885lab.6)
Jofsey
fuente
1
¿En qué programa se produce el error? Por favor, danos un poco de contexto. La brevedad es buena, pero esto es poco para trabajar.
usuario 99572 está bien el
Adjunto más información a la pregunta.
Jofsey
¿Usted intentó comillas simples, eso debería funcionar para usted
Suyash Jain
El error está en github.com/ajwans/sSMTP/blob/master/ssmtp.c#L913 , recuerdo que envié un parche en 2010 ... a nadie le importa. ¡Supongo que es una característica, en lugar de un error!
David S.

Respuestas:

5

Todavía hay una serie de errores pendientes relacionados con caracteres especiales en la AuthPasslínea del /etc/ssmtp/ssmtp.confarchivo:

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

Estos informes de errores son específicamente para la ssmtppágina en Debian, pero probablemente se apliquen a otros.

De acuerdo con estos registros de informes, las líneas que contienen los caracteres =, :o #se omiten por completo o se procesan de una manera que elimina la parte de la contraseña en el lado derecho de estos caracteres.

En otras palabras, actualmente no hay forma de "escapar" de estos caracteres especiales en la AuthPasslínea.


Como nota al margen, hay una serie de dispositivos, como las impresoras domésticas inalámbricas, que requieren que se ingresen las contraseñas en un teclado numérico, similar a las que se usan en los teléfonos. Algunos caracteres especiales están disponibles en estos dispositivos, pero muchos no se pueden seleccionar.

Para situaciones como esta, (desafortunadamente) se ve obligado a ajustar su contraseña para el dispositivo.

Se prefiere una contraseña más larga que conste de letras y números a una más corta con más caracteres de puntuación.


Esta pregunta también se ha formulado y respondido muy bien en la siguiente página:

¿Qué caracteres son ilegales en la contraseña en ssmtp.conf?

JonathanDavidArndt
fuente
@Hugo Ese puede ser un buen tema para otra pregunta: superuser.com/help/how-to-ask Si encuentra algo o publica el suyo, no dude en dejar otro comentario aquí que lo vincule.
JonathanDavidArndt
Los mantenedores deberían considerar tratar la entrada del archivo de configuración como Urlencoded como en algunos otros paquetes.
Old Geezer
1

Puede usar la siguiente solución alternativa:

feed the password directly in the command line argument

ssmtp -ap "Hash # Contraseña" ...

alternatively put the password in an environment variable.

ssmtp -ap $ PASSWD ...

Espero que haya ayudado.

Hugo Trentesaux
fuente
-1

La respuesta depende en gran medida del contexto en el que ingrese o envíe la contraseña. En algunos formatos, puede rodear su contraseña en ""'s, en otros necesitaría escapar de los caracteres ofensivos. Este carácter de escape , difiere entre programas, shells, sistemas operativos, etc. En las secuencias de comandos por lotes de Windows, el escape es ^mientras que en ciertas situaciones de Linux o terminal, el escape es \.

PenguinCoder
fuente
1
Intenté almacenar mi contraseña en el 1234\+\=5678formulario, pero obtuve el mismo error.
Jofsey
1
El contexto es el ssmtppaquete, no SMTP en general.
Kenny Evitt
-1

Intenta escapar del segundo signo igual:

AuthPass=1234+\=5678
Malcolm Boekhoff
fuente