prefixkit Ask an engineerAsk RU

Port 5000 UPnP / Synology DSM / Flask

Synology DSM web UI, UPnP control, Flask and Docker registry default.

Protocol
TCP
Service
UPnP / Synology DSM / Flask
Exposing to the internet
Expose with care

Check if port 5000 is open

Is it safe to open

Public websites are fine to expose, but admin panels on alternative ports are better hidden behind a VPN or an IP allow-list. Use HTTPS with a valid certificate.

How to open port 5000

Open to everyone

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

Only for your addresses

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

Related ports