Created
April 4, 2021 15:23
-
-
Save cotin18/719b8938bfed3c70af8c0d9357bf302f to your computer and use it in GitHub Desktop.
Build a backend instance for Minecraft packet forwarding
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| export EXPOSED_PORT=25565 | |
| export BACKEND_HOST=10.10.10.10:25565 | |
| cat <<END | sudo tee /etc/sysctl.d/55-enable-ip-forward.conf | |
| # `/sbin/sysctl net.ipv4.ip_forward` | |
| net.ipv4.ip_forward = 1 | |
| END | |
| sudo sysctl -p /etc/sysctl.d/55-enable-ip-forward.conf | |
| curl -L git.io/deploy-google-bbr.sh | sudo bash | |
| curl -L git.io/deploy-iptables.sh.dev | sudo bash | |
| cat <<END | sudo tee -a /etc/iptables/rules.v4 | |
| *nat | |
| :PREROUTING ACCEPT [0:0] | |
| :INPUT ACCEPT [0:0] | |
| :OUTPUT ACCEPT [0:0] | |
| :POSTROUTING ACCEPT [0:0] | |
| # Port Forwarding | |
| -A PREROUTING -p tcp -m tcp --dport 25565 -j DNAT --to-destination 10.10.10.10 | |
| -A POSTROUTING -j MASQUERADE | |
| COMMIT | |
| END | |
| sudo sed -i "s/20\/s/1\/s/" /etc/iptables/rules.v4 | |
| sudo sed -i "s/25565/${EXPOSED_PORT}/" /etc/iptables/rules.v4 | |
| sudo sed -i "s/10.10.10.10/${BACKEND_HOST}/" /etc/iptables/rules.v4 | |
| sudo sed -ri "s/(-A .+ connlimit)/#\1/" /etc/iptables/rules.v4 | |
| sudo systemctl restart netfilter-persistent |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment