Base de conocimientos

1 000 FAQ, 500 tutoriales y vídeos explicativos. ¡Aquí sólo hay soluciones!

Solucionar un error de correo electrónico ($ en la contraseña)

Actualización 01/09/2026

Esta guía detalla las reglas específicas que se deben respetar al utilizar una contraseña que contenga el carácter “dólar” $ para enviar un correo electrónico a través del SMTP de Infomaniak en un script (PowerShell, Python, etc.).

 

Introducción

  • Si al enviar un correo electrónico a través de SMTP recibe un error de autenticación (por ejemplo, fallo de autenticación, nombre de usuario o contraseña no válidos), aunque la contraseña sea correcta y funcione en un programa como Outlook, el problema podría estar relacionado con el tratamiento del carácter $ en su script o archivo de configuración.
  • Para garantizar el correcto funcionamiento de sus scripts SMTP, se recomienda encarecidamente evitar cualquier carácter especial que tenga un significado sintáctico, en particular $, en las contraseñas utilizadas en los scripts y archivos de configuración.
  • El problema también puede surgir al conectar con las bases de datos.

 

Reglas a respetar

El carácter $ es un símbolo especial en muchos lenguajes y entornos. Cuando se utiliza en una contraseña dentro de un script o un archivo de configuración, puede interpretarse erróneamente como una variable o un carácter de control.

A continuación, se indican algunos casos frecuentes en los que no se debe utilizar el carácter $ en una contraseña:

  • PowerShell: $ se utiliza para declarar variables. Una contraseña que contenga $ puede provocar errores de sintaxis o ser truncada.
  • Bash / Shell (Linux): $ también es un prefijo de variable. Puede provocar sustituciones inesperadas.
  • Archivos YAML (por ejemplo, Home Assistant, GitHub Actions, Docker Compose): $ puede interpretarse como una variable de entorno.
  • Archivos .env, .ini u otros archivos de configuración: las herramientas que leen estos archivos pueden intentar interpretar las variables.
  • Comandos o URL con autenticación: una contraseña que contenga el carácter $ puede codificarse incorrectamente o generar un error durante el análisis.

 

Para corregir o evitar este tipo de error:

  • Evite utilizar el carácter $ en las contraseñas destinadas a ser utilizadas en scripts o sistemas automatizados.
  • Si absolutamente tiene que utilizarlo, encierre siempre la cadena de contraseña correctamente según el lenguaje:
    • En PowerShell: utilice comillas simples 'password$Test' si es posible.
    • En Python: asegúrese de que la cadena esté correctamente entre comillas simples o dobles, sin interpretación.
    • En Bash: escape el $ con una barra invertida \$.

¿Le ha sido útil esta FAQ?