Firewall

June 23, 2026 ยท View on GitHub

We are using a Digital Ocean Firewall.

Firewall Rules

Inbound Rules

TypeProtocolPort RangeSources
SSHTCP22All IPv4, All IPv6
HTTPTCP80All IPv4, All IPv6
HTTPSTCP443All IPv4, All IPv6
CustomTCP1212All IPv4, All IPv6
CustomTCP3100All IPv4, All IPv6
CustomTCP7070All IPv4, All IPv6
CustomUDP6868All IPv4, All IPv6
CustomUDP6969All IPv4, All IPv6

Port Reference

PortServiceProtocolPurpose
22SSHTCPSecure shell access
80HTTPTCPHTTP (redirects to HTTPS)
443HTTPSTCPHTTPS (main web traffic)
1212Tracker APITCPTracker admin API
3100GrafanaTCPMonitoring dashboard
7070HTTP TrackerTCPHTTP tracker announces
6868UDP TrackerUDPUDP tracker announces
6969UDP TrackerUDPUDP tracker announces (main)

Warning: Port 80 is not permanently enabled in the firewall. It needs to be temporarily opened when renewing Let's Encrypt certificates.

Outbound Rules

TypeProtocolPort RangeDestinations
ICMPICMPAll IPv4, All IPv6
All TCPTCPAll PortsAll IPv4, All IPv6
All UDPUDPAll PortsAll IPv4, All IPv6

Security Notes

This is especially important for Prometheus service because it does not have authentication. This should not be exposed:

http://grafana.torrust-demo.com:9090