# GPN relay daemon — systemd unit # # 1. Upload the whole project to the server, e.g. /opt/gpn # (so /opt/gpn/web and /opt/gpn/relay both exist). # 2. sudo cp /opt/gpn/relay/gpn-relay.service /etc/systemd/system/ # 3. Adjust the paths / User below if needed. # 4. sudo systemctl daemon-reload && sudo systemctl enable --now gpn-relay # 5. Open the relay UDP port range in the firewall: # sudo ufw allow 30000:30500/udp # # The daemon reads web/data/relays.json + web/data/proxies.json and forwards # each player's UDP through the chosen SOCKS5 proxy. It picks up new routes # automatically — no restart needed when players choose a proxy. [Unit] Description=GPN relay (SOCKS5 UDP game forwarder) After=network.target [Service] WorkingDirectory=/opt/gpn/relay ExecStart=/usr/bin/php /opt/gpn/relay/relay.php Restart=always RestartSec=3 User=www-data NoNewPrivileges=true [Install] WantedBy=multi-user.target