Check if TCP ports are open or closed on any host or IP. Test SSH, HTTP, MySQL, FTP and any custom port instantly.
Common Port Reference
| Port | Protocol | Service | Description |
| 21 | TCP | FTP | File Transfer Protocol |
| 22 | TCP | SSH | Secure Shell remote access |
| 25 | TCP | SMTP | Email sending |
| 53 | TCP/UDP | DNS | Domain Name System |
| 80 | TCP | HTTP | Unencrypted web traffic |
| 110 | TCP | POP3 | Email receiving (legacy) |
| 143 | TCP | IMAP | Email receiving (modern) |
| 443 | TCP | HTTPS | Encrypted web traffic |
| 3306 | TCP | MySQL | MySQL database |
| 3389 | TCP | RDP | Remote Desktop Protocol |
| 5432 | TCP | PostgreSQL | PostgreSQL database |
| 6379 | TCP | Redis | Redis cache server |
| 8080 | TCP | HTTP Alt | Alternate web / dev server |
| 27017 | TCP | MongoDB | MongoDB database |
What is a Port Checker?
A port checker tests whether a specific TCP port on a server is accepting connections. When a port is "open" it means a service is actively listening on that port. When "closed" or "filtered", either no service is running or a firewall is blocking access.
Why check if a port is open?
- Verify your web server is running on port 80 or 443
- Confirm SSH access is available before attempting to connect
- Debug firewall rules blocking database connections
- Check if a game server or application port is reachable
- Verify your hosting provider has opened required ports
Frequently Asked Questions
What's the difference between open, closed and filtered? +
Open: A service is actively listening and accepting connections. Closed: The port is reachable but no service is listening. Filtered/Timeout: A firewall is silently dropping packets — the port may be open but protected by a firewall rule.
How do I open a port on my server? +
On Ubuntu/Debian with UFW: sudo ufw allow 3306/tcp. On CentOS with firewalld: sudo firewall-cmd --add-port=3306/tcp --permanent && sudo firewall-cmd --reload. On cPanel, use Security > Firewall in WHM. AWS/cloud servers also need security group rules updated.
Why is my MySQL port 3306 closed? +
MySQL binds to 127.0.0.1 (localhost only) by default for security. To allow remote connections: edit /etc/mysql/mysql.conf.d/mysqld.cnf and set bind-address = 0.0.0.0, then open port 3306 in your firewall and grant the user remote access in MySQL.
Is it safe to have port 22 (SSH) open? +
Yes, but best practice is to: (1) disable password authentication and use SSH keys only, (2) consider moving SSH to a non-standard port, (3) use fail2ban to block brute force attempts, (4) restrict SSH access to specific IP addresses via firewall rules.