# smtp

Published articles for smtp.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Use of PQC in SMTP STARTTLS

DevFeed: [Use of PQC in SMTP STARTTLS](<https://devfeed.tech/articles/use-of-pqc-in-smtp-starttls-30255.md>)

Original publisher: [Read original article](<https://www.netmeister.org/blog/smtp-pqc.html>)

Published: 2026-01-23T19:54:53Z

Content type: article

Language: en

Sources: [Signs of Triviality](<https://devfeed.tech/sources/signs-of-triviality.md>)

Topics: [Post-quantum cryptography](<https://devfeed.tech/topics/post-quantum-cryptography.md>), [Post-Quantum](<https://devfeed.tech/topics/post-quantum.md>), [servers](<https://devfeed.tech/topics/servers.md>)

Tags: [cryptography](<https://devfeed.tech/tags/cryptography.md>), [post-quantum](<https://devfeed.tech/tags/post-quantum.md>), [post-quantum-cryptography](<https://devfeed.tech/tags/post-quantum-cryptography.md>), [servers](<https://devfeed.tech/tags/servers.md>), [smtp](<https://devfeed.tech/tags/smtp.md>)

### AI overview

A quick summary of which SMTP servers among the Top 1M domains use post-quantum cryptography for STARTTLS.

### Source excerpt

A quick summary of which SMTP servers amongst the Top1M domains uses post-quantum cryptography for STARTTLS.

## Secure email delivery with XOAUTH2

DevFeed: [Secure email delivery with XOAUTH2](<https://devfeed.tech/articles/secure-email-delivery-with-xoauth2-31710.md>)

Original publisher: [Read original article](<https://www.keycloak.org/2025/05/send-mails-xoauth-26-2>)

Author: Sebastian Rose

Published: 2025-05-18T00:00:00Z

Content type: tutorial

Language: en

Sources: [Keycloak Blog](<https://devfeed.tech/sources/keycloak-blog.md>)

Topics: [Keycloak](<https://devfeed.tech/topics/keycloak.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Azure](<https://devfeed.tech/topics/azure.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>), [notifications](<https://devfeed.tech/topics/notifications.md>), [passwords](<https://devfeed.tech/topics/passwords.md>), [password reset](<https://devfeed.tech/topics/password-reset.md>)

Tags: [authentication](<https://devfeed.tech/tags/authentication.md>), [azure](<https://devfeed.tech/tags/azure.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [credentials](<https://devfeed.tech/tags/credentials.md>), [email-delivery](<https://devfeed.tech/tags/email-delivery.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [idm](<https://devfeed.tech/tags/idm.md>), [kerberos](<https://devfeed.tech/tags/kerberos.md>), [keycloak](<https://devfeed.tech/tags/keycloak.md>), [ldap](<https://devfeed.tech/tags/ldap.md>), [notifications](<https://devfeed.tech/tags/notifications.md>), [openid-connect](<https://devfeed.tech/tags/openid-connect.md>), [password](<https://devfeed.tech/tags/password.md>), [passwords](<https://devfeed.tech/tags/passwords.md>), [saml](<https://devfeed.tech/tags/saml.md>), [smtp](<https://devfeed.tech/tags/smtp.md>), [sso](<https://devfeed.tech/tags/sso.md>), [using](<https://devfeed.tech/tags/using.md>)

### AI overview

Keycloak 26.2 adds XOAUTH2 support to SMTP authentication, allowing token-based email delivery with client credentials. The article explains how to configure and test the feature, including Microsoft Azure, and notes that Google requires additional functionality and is not yet supported.

### Source excerpt

Keycloak relies on email functionality for tasks like password resets, user verifications, and notifications. A common setup is for Keycloak to authenticate to the SMTP server with a username and password. With issue #17432, the Keycloak community raised the need for token-based authentication with XOAUTH2, as some providers deprecated the authentication for SMTP with passwords. With Keycloak 26.2, the SMTP AUTH configuration now supports XOAUTH2. As Keycloak's role is that of an application, it uses the client credentials grant to fetch the token. The SMTP AUTH configuration in Keycloak now supports all required fields to fetch such a token with client id and client secret. When implementing this functionality, I found that while it works with Microsoft Azure and Office365, it would need a different mechanism for providers like Google. So let's follow through this example, and then discuss if we need something different from SMTP altogether. Configuring Keycloak to send emails with XOAUTH2 The following assumes that you are working with Keycloak 26.2. In a realm, navigate to Realm Settings -> Email and fill in the fields. To see the new XOAUTH2 feature, enable Authentication via the radio-button and switch the Authentication Type from Password to Token. You can find further details in the documentation on sending emails. ' ' '

## Implementing an SMTP server in Rust

DevFeed: [Implementing an SMTP server in Rust](<https://devfeed.tech/articles/implementing-an-smtp-server-in-rust-30722.md>)

Original publisher: [Read original article](<https://www.windmill.dev/blog/smtp-server>)

Author: Hugo Casademont

Published: 2024-10-07T00:00:00Z

Content type: tutorial

Language: en

Sources: [Windmill Blog](<https://devfeed.tech/sources/windmill-blog.md>)

Topics: [Rust](<https://devfeed.tech/topics/rust.md>), [Code](<https://devfeed.tech/topics/code.md>), [Protocol (disambiguation)](<https://devfeed.tech/topics/protocol.md>), [Developer Platform](<https://devfeed.tech/topics/developer-platform.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [code](<https://devfeed.tech/tags/code.md>), [email](<https://devfeed.tech/tags/email.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [protocol](<https://devfeed.tech/tags/protocol.md>), [rust](<https://devfeed.tech/tags/rust.md>), [server](<https://devfeed.tech/tags/server.md>), [smtp](<https://devfeed.tech/tags/smtp.md>), [smtp-email-rust-tcp-tls](<https://devfeed.tech/tags/smtp-email-rust-tcp-tls.md>), [tcp](<https://devfeed.tech/tags/tcp.md>), [tls](<https://devfeed.tech/tags/tls.md>)

### AI overview

This tutorial explains how to implement a simple SMTP server in Rust for receiving emails. It covers SMTP message flow, incoming TCP connections, command handling, and STARTTLS for encrypting connections. In Windmill, received emails can trigger scripts or flows with the email content as an argument.

### Source excerpt

In this article, we will implement a simple SMTP server in Rust for receiving emails.

## Email DNS Records Cheatsheet

DevFeed: [Email DNS Records Cheatsheet](<https://devfeed.tech/articles/email-dns-records-cheatsheet-30180.md>)

Original publisher: [Read original article](<https://www.netmeister.org/blog/email-dns-records.html>)

Published: 2024-04-12T20:02:49Z

Content type: article

Language: en

Sources: [Signs of Triviality](<https://devfeed.tech/sources/signs-of-triviality.md>)

Topics: [Cheat sheet](<https://devfeed.tech/topics/cheatsheet.md>), [email](<https://devfeed.tech/topics/email.md>)

Tags: [cheatsheet](<https://devfeed.tech/tags/cheatsheet.md>), [email](<https://devfeed.tech/tags/email.md>), [examples](<https://devfeed.tech/tags/examples.md>), [smtp](<https://devfeed.tech/tags/smtp.md>), [summary](<https://devfeed.tech/tags/summary.md>)

### AI overview

A quick summary of SMTP-related DNS records with brief examples.

### Source excerpt

A quick summary of the SMTP related DNS records together with brief examples.

## MX Record Diversity and SMTP Concentration Across gTLDs and the Top 1M Domains

DevFeed: [MX Record Diversity and SMTP Concentration Across gTLDs and the Top 1M Domains](<https://devfeed.tech/articles/who-reads-your-email-30217.md>)

Original publisher: [Read original article](<https://www.netmeister.org/blog/mx-diversity.html>)

Published: 2023-03-10T04:08:19Z

Content type: article

Language: en

Sources: [Signs of Triviality](<https://devfeed.tech/sources/signs-of-triviality.md>)

Topics: [email](<https://devfeed.tech/topics/email.md>)

Tags: [email](<https://devfeed.tech/tags/email.md>), [smtp](<https://devfeed.tech/tags/smtp.md>)

### AI overview

The article examines the diversity of MX records across all gTLDs and the Top 1M domains, focusing on where SMTP is concentrated and which organizations might have broad access to email.

### Source excerpt

A look at diversity of MX records across all gTLDs and the Top 1M domains, indicating where SMTP is concentrated and what organizations might have broad access to the world's emails.

## Free Transactional Email Services - The Best Alternatives to Mandrill & Co.

DevFeed: [Free Transactional Email Services - The Best Alternatives to Mandrill & Co.](<https://devfeed.tech/articles/free-transactional-email-services-the-best-alternatives-to-mandrill-co-31835.md>)

Original publisher: [Read original article](<https://www.metachris.dev/2016/03/free-transactional-email-services-the-best-alternatives-to-mandrill/>)

Author: Chris Hager

Published: 2016-03-08T00:00:00Z

Content type: comparison

Language: en

Sources: [Chris Hager](<https://devfeed.tech/sources/chris-hager.md>)

Topics: [email](<https://devfeed.tech/topics/email.md>), [backends](<https://devfeed.tech/topics/backends.md>), [amazon](<https://devfeed.tech/topics/amazon.md>), [stripe](<https://devfeed.tech/topics/stripe.md>), [FIRST](<https://devfeed.tech/topics/first.md>), [Heroku](<https://devfeed.tech/topics/heroku.md>), [Server](<https://devfeed.tech/topics/server.md>)

Tags: [alternatives](<https://devfeed.tech/tags/alternatives.md>), [api](<https://devfeed.tech/tags/api.md>), [email](<https://devfeed.tech/tags/email.md>), [free](<https://devfeed.tech/tags/free.md>), [migration](<https://devfeed.tech/tags/migration.md>), [providers](<https://devfeed.tech/tags/providers.md>), [rest-api](<https://devfeed.tech/tags/rest-api.md>), [servers](<https://devfeed.tech/tags/servers.md>), [services](<https://devfeed.tech/tags/services.md>), [smtp](<https://devfeed.tech/tags/smtp.md>)

### AI overview

This article compares free-tier transactional email providers presented as alternatives to Mandrill after Mandrill announced a move to a paid-only model under MailChimp. It covers providers including Mailgun, Amazon SES, SparkPost, Mailjet, Elastic Email, SendinBlue, Google SMTP, and Postage App, describing pricing limits, delivery methods, and selected features.

### Source excerpt

Mandrill, the beloved-by-many transactional email service, recently announced that it will switch to a paid-only model under the MailChimp umbrella. This came as a surprise to many developers who used them for sending emails for free from various servers and backends. This post provides a round-up of some of the more popular Mandrill alternatives. Free Transactional Email Providers This section covers a number of popular transactional email providers with a free tier.

## Postfix: ciekawy problem z smtpd\_delay\_reject i permit\_sasl\_authenticated

DevFeed: [Postfix: ciekawy problem z smtpd\_delay\_reject i permit\_sasl\_authenticated](<https://devfeed.tech/articles/postfix-ciekawy-problem-z-smtpd-delay-reject-i-permit-sasl-authenticated-27584.md>)

Original publisher: [Read original article](<https://gagor.pro/2013/10/postfix-ciekawy-problem-z-smtpd_delay_reject-i-permit_sasl_authenticated/>)

Author: Tom

Published: 2013-10-08T00:00:00Z

Content type: tutorial

Language: pl

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [SSL](<https://devfeed.tech/topics/ssl.md>), [client](<https://devfeed.tech/topics/client.md>)

Tags: [debug](<https://devfeed.tech/tags/debug.md>), [linux](<https://devfeed.tech/tags/linux.md>), [postfix](<https://devfeed.tech/tags/postfix.md>), [sasl](<https://devfeed.tech/tags/sasl.md>), [smtp](<https://devfeed.tech/tags/smtp.md>), [ssl](<https://devfeed.tech/tags/ssl.md>)

### AI overview

A troubleshooting article about a Postfix configuration problem involving smtpd_delay_reject and permit_sasl_authenticated. Changing the restriction ordering resolved authentication failures for SSL SMTP submissions, and the author also addressed a user-spoofing issue.

### Source excerpt

Trafił mi się ostatnio ciekawy problem - otóż standardowo przed końcem roku poprawiałem filtry antyspamowe i optymalizowałem konfigurację Postfix'a. Chciałem zmienić domyślną wartość smtpd_delay_reject=yes na smtpd_delay_reject=no by odrzucać spamerów najwcześniej jak to możliwe. I ciekawe kuku, które sobie zrobiłem polegało na tym że sam nie mogłem wysyłać poczty po logowaniu SSL'em... Dostawałem przy tym bardzo wymowną odpowiedź: Oct 8 16:30:39 tyr postfix/smtpd[21039]: NOQUEUE: reject: CONNECT from unknown[67.x.x.x]: 554 5.7.1 <unknown [67.x.x.x]>: Client host rejected: Access denied; proto=SMTP</unknown> Więc wrzuciłem debug_peer_list = 67.x.x.x do main.cf by zobaczyć dokładniej o co biega:

## Python - wysyłanie maili w unicode

DevFeed: [Python - wysyłanie maili w unicode](<https://devfeed.tech/articles/python-wysy-anie-maili-w-unicode-27562.md>)

Original publisher: [Read original article](<https://gagor.pro/2012/12/python-wysylanie-maili-w-unicode/>)

Author: Tom

Published: 2012-12-10T00:00:00Z

Content type: tutorial

Language: pl

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [Python](<https://devfeed.tech/topics/python.md>), [email](<https://devfeed.tech/topics/email.md>), [coding](<https://devfeed.tech/topics/coding.md>)

Tags: [email](<https://devfeed.tech/tags/email.md>), [encoding](<https://devfeed.tech/tags/encoding.md>), [import](<https://devfeed.tech/tags/import.md>), [python](<https://devfeed.tech/tags/python.md>), [smtp](<https://devfeed.tech/tags/smtp.md>)

### AI overview

A Python code example for sending emails containing Unicode characters. It explains MIME header encoding, selecting a compatible body charset, formatting sender and recipient fields, and delivering the message through SMTP to localhost.

### Source excerpt

Chciałem wysłać z Python'a maila z krzakami tab by ładnie się wyświetlały i okazało się to całkiem nietrywialne. Na szczęście googiel podpowiedział mi doskonałego gotowca, którego zamierzam zapisać by mi nie zginął: #!/usr/bin/env python # -*- coding: utf-8 -*- import smtplib from email.mime.text import MIMEText from email.Header import Header from email.Utils import parseaddr, formataddr def send_email(sender, recipient, subject, body): """Send an email. All arguments should be Unicode strings (plain ASCII works as well). Only the real name part of sender and recipient addresses may contain non-ASCII characters. The email will be properly MIME encoded and delivered though SMTP to localhost port 25. This is easy to change if you want something different. The charset of the email will be the first one out of US-ASCII, ISO-8859-1 and UTF-8 that can represent all the characters occurring in the email. """ # Header class is smart enough to try US-ASCII, then the charset we # provide, then fall back to UTF-8. header_charset = 'ISO-8859-2' # We must choose the body charset manually for body_charset in 'US-ASCII', 'UTF-8', 'ISO-8859-2': try: body.encode(body_charset) except UnicodeError: pass else: break # Split real name (which is optional) and email address parts sender_name, sender_addr = parseaddr(sender) recipient_name, recipient_addr = parseaddr(recipient) # We must always pass Unicode strings to Header, otherwise it will # use RFC 2047 encoding even on plain ASCII strings. sender_name = str(Header(unicode(sender_name), header_charset)) recipient_name = str(Header(unicode(recipient_name), header_charset)) # Make sure email addresses do not contain non-ASCII characters sender_addr = sender_addr.encode('ascii') recipient_addr = recipient_addr.encode('ascii') # Create the message ('plain' stands for Content-Type: text/plain) msg = MIMEText(body.encode(body_charset), 'plain', body_charset) msg['From'] = formataddr((sender_name, sender_addr)) msg['To'] = formataddr((recip

## Scratch that itch: M-x mailq

DevFeed: [Scratch that itch: M-x mailq](<https://devfeed.tech/articles/scratch-that-itch-m-x-mailq-34390.md>)

Original publisher: [Read original article](<https://tapoueh.org/blog/2010/09/scratch-that-itch-m-x-mailq/>)

Author: Dimitri Fontaine PostgreSQL Major Contributor; Author

Published: 2010-09-23T07:30:00Z

Content type: tutorial

Language: en

Sources: [Dimitri Fontaine](<https://devfeed.tech/sources/dimitri-fontaine.md>)

Topics: [email](<https://devfeed.tech/topics/email.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Unix](<https://devfeed.tech/topics/unix.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>)

Tags: [authentication](<https://devfeed.tech/tags/authentication.md>), [command](<https://devfeed.tech/tags/command.md>), [email](<https://devfeed.tech/tags/email.md>), [postfix](<https://devfeed.tech/tags/postfix.md>), [queue](<https://devfeed.tech/tags/queue.md>), [shell](<https://devfeed.tech/tags/shell.md>), [smtp](<https://devfeed.tech/tags/smtp.md>), [systems](<https://devfeed.tech/tags/systems.md>), [terminal](<https://devfeed.tech/tags/terminal.md>)

### AI overview

The article introduces M-x mailq, an Emacs command for viewing and flushing the Postfix mail queue. It addresses mail queued during unavailable relay tunnels and describes inspecting or selectively managing queued messages.

### Source excerpt

Nowadays, most people would think that email is something simple, you just setup your preferred client (that's called a MUA) with some information such as the smtp host you want it to talk to (that's call a MTA and this one is your relayhost). Then there's all the receiving mails part, and that's smtp again on the server side. Then there's how to get those mail, read them, flag them, manage them, and that's better served by IMAP. Let's talk about sending mails in smtp for this entry.