VNC
What is Port 5900?
Port 5900 is the default port for VNC (Virtual Network Computing), a graphical desktop sharing system that allows remote control of another computer. VNC uses the RFB (Remote Frame Buffer) protocol to transmit screen updates from the server and keyboard/mouse input from the client. Originally developed at AT&T Cambridge Labs, VNC has spawned many implementations including TightVNC, RealVNC, TigerVNC, and UltraVNC. VNC is cross-platform and can connect different operating systems — for example, controlling a Linux desktop from a Windows machine. Additional VNC sessions on the same server typically use incrementing ports (5901, 5902, etc.). macOS includes a built-in VNC server (Screen Sharing) and client.
Common Uses
- Remote desktop access for Linux servers
- Cross-platform remote desktop control
- Server administration via graphical interface
- Remote technical support and assistance
Technical Details
Copy-paste commands to check port 5900 (VNC) from your terminal
Test connectivity
nc -zv example.com 5900
curl -v --max-time 5 http://example.com:5900/
telnet example.com 5900
nmap -p 5900 -sV example.com
(echo > /dev/tcp/example.com/5900) 2>/dev/null && echo "open" || echo "closed"
Open port in firewall
sudo ufw allow 5900/tcp
sudo iptables -A INPUT -p tcp --dport 5900 -j ACCEPT
sudo firewall-cmd --permanent --add-port=5900/tcp && sudo firewall-cmd --reload
Security Considerations
VNC traffic is not encrypted by default in most implementations. Always tunnel VNC through SSH or use VNC implementations with built-in TLS support. VNC passwords are limited to 8 characters in the original protocol, making them vulnerable to brute force. Use SSH tunneling, VPN, or a tool like Apache Guacamole for secure remote access. Never expose VNC directly to the internet.
Popular Ports Reference
The most commonly used and referenced network ports