Есть ли в любом случае, чтобы скрыть IP моего сервера и перечислить сервер с доменом?
Нет . Доменное имя - это простой псевдоним для IP-адреса. Попробуйте ввести в командной строке:
nslookup superuser.com
Использование доменного имени позволяет вам не предоставлять точный IP своим пользователям, но ничего не скрывает. Даже если вы выберете сервер из экрана выбора сервера в игре, не видя его IP или доменного имени, вы можете получить IP, анализируя пакеты с помощью инструмента, такого как Wireshark.
Есть ли возможность использовать CDN на игровом сервере?
Там опять нет . CDN предназначен для статического содержимого, такого как HTML-страницы или исходные файлы JavaScript. Что вы можете сделать, так это распределить нагрузку, но вам понадобится несколько игровых серверов, и в зависимости от вашей игры нет никакой гарантии, что они все равно будут работать вместе.
Что еще я могу сделать, чтобы сделать мой сервер более защищенным?
Выберите поставщика сервера, который предлагает защиту от DDoS. Я арендую сервер в Kimsufi , они предлагают бесплатную защиту от DDoS для всех своих серверов (я не работаю на них, я лишь один из их клиентов).
Если серверное программное обеспечение имеет защиту от DDoS-атак, убедитесь, что они включены (я сомневаюсь, что у игрового сервера есть такие, но, например, у OpenVPN есть некоторые).
Вы можете разместить свой игровой сервер в собственной виртуальной частной сети, но это только переместит проблему в сторону VPN-сервера (который все еще может иметь больше средств защиты от DDoS-атак).
Убедитесь, что SSH вашего сервера защищен. Отключите аутентификацию по паролю (по крайней мере, для root
) и установите анти-брутфорс программу вроде fail2ban
. Отключите SSH1 и убедитесь, что ключи RSA (если они есть) имеют длину не менее 2048 бит.
Убедитесь, что ваш сервер обновлен. Регулярно запускайте apt-get update
и apt-get upgrade
(или соответствующий эквивалент для вашей ОС).
Заблокируйте порт FTP, если у вас нет специального приложения, которому абсолютно необходим FTP, вы можете использовать SFTP для передачи файлов, который работает через порт SSH.
Убедитесь, что с тем, что вы делаете iptables
, вы также делаете это с ip6tables
. Также убедитесь, что после этого вы действительно сохраняете правила:
iptables-save> /etc/iptables/rules.v4
ip6tables-save> /etc/iptables/rules.v6
(возможно, потребуется адаптировать к вашему дистрибутиву)