SMTP without encryption

Describe the problem/error/question

On password recovery I fet an error-Message to log and no mail send:

2026-08-31T14:37:46.001168023Z Failed to send email
2026-08-31T14:37:46.005698745Z Unexpected error in forgot password endpoint
2026-08-31T14:37:46.005724112Z Error: Unexpected error in forgot password endpoint
2026-08-31T14:37:46.005733359Z     at PasswordResetController.forgotPassword (/usr/local/lib/node_modules/n8n/src/controllers/password-reset.controller.ts:161:5)
2026-08-31T14:37:46.005742056Z     at processTicksAndRejections (node:internal/process/task_queues:104:5)
2026-08-31T14:37:46.005750632Z     at handler (/usr/local/lib/node_modules/n8n/src/controller.registry.ts:115:12)
2026-08-31T14:37:46.005759127Z     at /usr/local/lib/node_modules/n8n/src/response-helper.ts:119:17

Information on your n8n setup

Docker based setup, started with

docker run \
        --detach \
        --restart=always \
        --name n8n \
        -p 5678:5678 \
        -v n8n_data:/home/node/.n8n \
        --env N8N_SECURE_COOKIE=false \
        --env N8N_RUNNERS_ENABLED=true \
        --env TZ="Europe/Berlin" \
        --env N8N_EMAIL_MODE=smtp \
        --env N8N_SMTP_HOST=192.168.1.247 \
        --env N8N_SMTP_PORT=25 \
        --env N8N_SMTP_SSL=false \
        --env N8N_SMTP_SENDER=service@haneke.de \
        docker.n8n.io/n8nio/n8n
  • n8n version: 2.36.9
  • Running n8n via (Docker, npm, n8n cloud, desktop app): Docker
  • Operating system:: Debian/trixie

Hey @elmar69, while you wait for a response, here are some things that might help:

Suggested resources

Automatically matched to your question.

Docs:

Forum:

@hachi, @erwanbail, @mechanizedgrowth - you’ve helped with similar issues before, can you take a look?

Automatically suggested by n8n’s community bot. It’s a pilot - please share feedback here.

Hey @elmar69 Welcome to the n8n community. !

N8N_SMTP_STARTTLS defaults to true, and it’s the setting that takes over once SSL is off, so n8n is still trying to upgrade the connection on port 25 and your relay isn’t playing along. Add N8N_SMTP_STARTTLS=false to the docker run and recreate the container. Internally that flips nodemailer’s ignoreTLS, which is the actual no encryption you’re after.

Leave the user and pass out while you’re there. n8n only attaches SMTP auth when both are set, so an open internal relay works fine without them and adding empty ones changes nothing.

Hi @elmar69 Welcome!
The reason is in that log call, just not in your output. n8n attaches the underlying SMTP failure to the “Failed to send email” line as metadata, and the default text format prints the message on its own and discards the metadata, so the part naming the cause never reaches the console. The lines after it are the generic wrapper the controller adds.
Add this to your docker run and trigger the reset again:

--env N8N_LOG_FORMAT=json

The same line comes back as a single JSON object with the nodemailer error inside it, which is what tells you what your relay actually rejected.