python -m smtpd -n -c DebuggingServer localhost:25
Эта одностроковая команда запускает сервер SMTP на порту 1025. Здесь используется стандартная библиотека
smtpd для языка Python (задается при помощи
-m smtpd) и передаются три аргумента:
-n, -c DebuggingServer и
localhost:1025.
Аргумент -n указывает Python-у не устанавливать для setuid (позволяет изменять пользователя) значение "nobody" — код будет работать под вашим пользователем.
Аргумент -c DebuggingServer указывает Python-у использовать класс
DebuggingServer в качестве реализации SMTP, которая печатает каждое получаемое сообщение в выходной поток stdout.
Аргумент localhost:1025 указывает Python-у запускать SMTP сервер как locahost на порту1025.
Однако, если вы захотите запустить сервер на стандартном порту 25, вам нужно будет использовать команду
sudo, поскольку только пользователь с правами root может запускать сервисы на портах 1 — 1024. Они также известны как привилегированные порты.