prefixkit Ask an engineerAsk RU

Port 2376 Docker API TLS

Docker daemon API with TLS client certificates.

Protocol
TCP
Service
Docker API TLS
Exposing to the internet
Do not expose

Check if port 2376 is open

Is it safe to open

Management interfaces give full control of the system. Make them reachable only from an admin network or VPN, change default credentials and keep the software patched.

How to open port 2376

Open to everyone

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

Only for your addresses

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

Related ports