prefixkit Ask an engineerAsk RU

Port 5938 TeamViewer

TeamViewer connections (outbound from the client).

Protocol
TCP/UDP
Service
TeamViewer
Exposing to the internet
Expose with care

Check if port 5938 is open

Is it safe to open

Never leave remote access open to the whole internet: bots try passwords around the clock. Put it behind a VPN (WireGuard, IPsec), or allow only your own addresses, use keys or long passwords, and enable brute-force protection (fail2ban, account lockout).

How to open port 5938

Open to everyone

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

Only for your addresses

# allow only one address or network (replace 203.0.113.0/24)
iptables -A INPUT -p tcp --dport 5938 -s 203.0.113.0/24 -j ACCEPT
iptables -A INPUT -p udp --dport 5938 -s 203.0.113.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 5938 -j DROP
iptables -A INPUT -p udp --dport 5938 -j DROP
ufw allow from 203.0.113.0/24 to any port 5938 proto tcp
ufw allow from 203.0.113.0/24 to any port 5938 proto udp
/ip firewall filter add chain=input protocol=tcp dst-port=5938 src-address=203.0.113.0/24 action=accept
/ip firewall filter add chain=input protocol=udp dst-port=5938 src-address=203.0.113.0/24 action=accept
/ip firewall filter add chain=input protocol=tcp dst-port=5938 action=drop
/ip firewall filter add chain=input protocol=udp dst-port=5938 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 ':5938 '
netstat -ano | findstr :5938   # Windows
lsof -i :5938   # macOS
# test from another machine
nc -vz example.com 5938

Related ports