Я изо всех сил старался не создавать новую тему по этому поводу, но я попробовал все возможное. Я запускаю игровые серверы со своего ПК на Windows, но больше не могу, потому что переехал и теперь у меня IP-закодированный CGN. Я купил VPS с Ubuntu у Ionos как публичный “шлюз” (Reddit сказал, что это лучше, чем платить за статический IP), и установил Wireguard на него и мой ПК. Я пробовал СОТНИ руководств, включая использование Tailscale (близко к работе), но ни одно из них не работает. Следующие шаги — мои последние (с помощью ChatGPT) попытки заставить это работать, некоторые команды вероятно лишние, потому что я полностью не понимаю, что они делают. ping между ними не работает, и сервер Ark запускается только в LAN, хотя он все равно имеет доступ к интернету и показывает свой собственный IP CGN онлайн.
- apt-update/upgrade
- ufw allow OpenSSH
- ufw enable
- /etc/ssh/sshd_config
- LoginGraceTime 2m
- PermitRootLogin no
- MaxAuthTries 3
- MaxSessions 2
- ChallengeResponseAuthentication no
- PermitEmptyPasswords no
- KerberosAuthentication no
- GSSAPIAuthentication no
- AllowAgentForwarding yes
- AllowTcpForwarding yes
- X11Forwarding no
- PermitUserEnvironment no
- sudo service sshd reload
- /etc/sysctl.conf
- net.ipv4.ip_forward=1
- sudo sysctl -p
- sudo sysctl -w net.ipv4.ip_forward=1
- echo “net.ipv4.ip_forward=1” | sudo tee -a /etc/sysctl.conf
- Установка Nginx на VPS (я использовал его для обратного прокси, но GPT сказал, что можно использовать iptables и оставить Nginx, потому что)
- sudo apt install nginx
- sudo systemctl start nginx
- sudo systemctl enable nginx
- sudo ufw allow ‘Nginx HTTP’
- sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/
- sudo systemctl reload nginx
- Установка Wireguard на VPS
- sudo apt install wireguard
- umask 077 && printf "[Interface]\nPrivateKey = " | sudo tee /etc/wireguard/wg0.conf > /dev/null
- sudo wg genkey | sudo tee -a /etc/wireguard/wg0.conf | wg pubkey | sudo tee /etc/wireguard/publickey
- sudo nano /etc/wireguard/wg0.conf (VPS)
- [Interface]
- PrivateKey =
(личный ключ VPS)
- Address = 10.0.0.1/24
- ListenPort = 51820
- [Peer]
- PublicKey =
(публичный ключ ПК)
- AllowedIPs = 10.0.0.2/32
- Endpoint =
(публичный IP VPS)
:51820 - PersistentKeepalive = 25
- Установка Wireguard на ПК
- Добавьте пустой туннель
- [Interface]
- PrivateKey =
(личный ключ ПК)
- ListenPort = 51820
- Address = 10.0.0.2/24
- [Peer]
- PublicKey =
(публичный ключ VPS)
- AllowedIPs = 10.0.0.1/32
- Endpoint =
(публичный IP VPS)
:51820 - PersistentKeepalive = 25
- iptables на VPS: (пробросил все, кроме порта 22, потому что это мой личный компьютер)
- sudo iptables -t nat -A PREROUTING -p tcp --dport 22 -j ACCEPT
- sudo iptables -t nat -A PREROUTING -p tcp -j DNAT --to-destination 10.0.0.2
- sudo iptables -A FORWARD -p tcp -d 10.0.0.2 -j ACCEPT
- sudo iptables -t nat -A PREROUTING -p udp -j DNAT --to-destination 10.0.0.2
- sudo iptables -A FORWARD -p udp -d 10.0.0.2 -j ACCEPT
- sudo apt install iptables-persistent
- sudo netfilter-persistent save
- sudo wg-quick up wg0
- sudo sysctl -w net.ipv4.ip_forward=1
- echo “net.ipv4.ip_forward=1” | sudo tee -a /etc/sysctl.conf
- Активировать интерфейс VPS на ПК
Пожалуйста, скажите, если я что-то упустил или делаю неправильно, но и не говорите, что мне нужно тратить больше денег на что-то еще, я очень хочу, чтобы это заработало. Мозг у меня выжжен, я просто хочу играть в Ark с друзьями снова.