prefixkit Ask an engineerAsk RU

Port 25 SMTP

Mail transfer between servers. Most ISPs and clouds block outbound 25 to fight spam.

Protocol
TCP
Service
SMTP
Category
Email
Exposing to the internet
Expose with care

Check if port 25 is open

Is it safe to open

Mail servers must accept connections, but require TLS and authentication for submission, limit login attempts and monitor blacklists.

How to open port 25

Open to everyone

# Linux iptables
iptables -A INPUT -p tcp --dport 25 -j ACCEPT
# Ubuntu ufw
ufw allow 25/tcp
# firewalld
firewall-cmd --permanent --add-port=25/tcp && firewall-cmd --reload
# MikroTik
/ip firewall filter add chain=input protocol=tcp dst-port=25 action=accept place-before=0 comment="port 25"
# Windows (PowerShell)
New-NetFirewallRule -DisplayName "Port 25 TCP" -Direction Inbound -Protocol TCP -LocalPort 25 -Action Allow

Only for your addresses

# allow only one address or network (replace 203.0.113.0/24)
iptables -A INPUT -p tcp --dport 25 -s 203.0.113.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 25 -j DROP
ufw allow from 203.0.113.0/24 to any port 25 proto tcp
/ip firewall filter add chain=input protocol=tcp dst-port=25 src-address=203.0.113.0/24 action=accept
/ip firewall filter add chain=input protocol=tcp dst-port=25 action=drop

If the server is behind a router, you also need a port forward (dst-nat). Behind ISP CGNAT (100.64.0.0/10 on the WAN) forwarding will not help: you need a public IP or a VPN.

What is listening

Check on the server

# what listens on the port
ss -lntup | grep ':25 '
netstat -ano | findstr :25   # Windows
lsof -i :25   # macOS
# test from another machine
nc -vz example.com 25

Related ports