Toolman 100% local

Port 993 — IMAPS

TCP well-known

What runs on port 993

IMAP over TLS — the standard for mail clients.

IMAP with TLS from the first byte, and the port essentially every mail client uses today. The difference from 143 is not the protocol but when encryption starts: 993 negotiates TLS before any IMAP command, while 143 begins in the clear and upgrades with STARTTLS, which can be stripped by an attacker on the path. If you have a choice, this is the one to configure.

Security considerations

Use this rather than 143.

Checking whether something is listening

# Linux / macOS — what is bound to the port
sudo lsof -i :993
sudo ss -lntp | grep :993

# Windows
netstat -ano | findstr :993
Get-NetTCPConnection -LocalPort 993

# is it reachable from outside?
nc -zv example.com 993
curl -v telnet://example.com:993

Freeing the port

# find the process, then stop it
sudo lsof -ti :993 | xargs kill        # Linux / macOS
netstat -ano | findstr :993            # note the PID, then:
taskkill /PID <pid> /F                    # Windows

Should this port be open to the internet?

Only on a mail server. If this port is open on something that is not intentionally handling mail, you may be running an open relay — which will get the IP blacklisted quickly.

Opening or blocking port 993

Finding the port is usually the first half of the job. Start narrow — the second rule is there for services that genuinely serve the public, and most do not:

# ufw — Debian, Ubuntu
sudo ufw allow from 10.0.0.0/8 to any port 993 proto tcp
sudo ufw allow 993/tcp                   # only if it genuinely serves the public

# firewalld — RHEL, Fedora, CentOS
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=10.0.0.0/8 port port=993 protocol=tcp accept'
sudo firewall-cmd --reload

# iptables, if you are still there
sudo iptables -A INPUT -p tcp --dport 993 -s 10.0.0.0/8 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 993 -j DROP

# Windows
New-NetFirewallRule -DisplayName "IMAPS 993" -Direction Inbound -Protocol TCP -LocalPort 993 -RemoteAddress 10.0.0.0/8 -Action Allow

10.0.0.0/8 stands in for a private range — substitute your own. Note that a firewall rule does not undo a service bound to 0.0.0.0; it only stops packets reaching it, and a misconfigured or disabled firewall then exposes it immediately.

Quick reference

Port993
ProtocolTCP
ServiceIMAPS
RangeWell-known (0–1023) — binding requires root on Unix

Frequently asked questions

What is port 993 used for?

IMAP over TLS — the standard for mail clients.

Is it safe to open port 993?

Use this rather than 143.

How do I check if port 993 is open?

Locally, sudo lsof -i :993 on macOS or Linux, or netstat -ano | findstr :993 on Windows. From outside, nc -zv host 993 tells you whether anything answers.

Why do I get "address already in use" on port 993?

Another process is bound to it — often a previous run of your own program that did not exit cleanly. Find it with lsof -ti :993 and stop it, or configure your application to use a different port.

Can I change the port this service uses?

Almost always yes, in the service's configuration. Moving off a default port reduces automated scan noise, but it is obfuscation rather than security — a real attacker scans all 65,535.

Other common ports

All port numbers