У меня довольно странная проблема, которая сохраняется при разных переустановках VPS и даже при переключении дистрибутивов (я переключился с Ubuntu 18 на 16, а затем на CentOs 7. У всех были одинаковые или схожие проблемы, однако я только подтвердил все детали, о которых я собираюсь рассказать о CentOS, а также о том, что сервер работает прямо сейчас).
Мой сервер в настоящее время работает под управлением CentOS 7, и на нем есть стандартный веб-сервер и игровой сервер Garrys Mod.
Каждый раз, когда человек пытался подключить игровую консоль, использовался соответствующий ip и команда.
Порты однозначно открыты и работают. Я проверил внешние инструменты, и сервер распознает их как открытые.
Эта проблема:
Чтобы подтвердить специфику проблемы, у меня было несколько друзей, которые провели эксперимент на ней. Вот результаты.
ПРИМЕЧАНИЕ. Попытка повторного подключения НЕ решает проблему. Я проверял это несколько раз, и единственный способ, которым люди смогли соединиться, был после выполнения вещей, которые я упомянул ниже.
Человек А: Человек А это я. Я смог подключиться сразу после настройки сервера с помощью ssh.
Человек B: Человек B - мой друг. Он не мог соединиться, и я не проводил никаких дальнейших экспериментов из-за временных ограничений, которые у него были.
Человек C: у меня был Человек C, пытающийся соединиться без успеха. Однако он запросил доступ к ssh и после того, как предоставил его, и он возился на сервере, но, в конце концов, ничего не изменив, кроме перезапуска сервера, как только он попытался снова и смог присоединиться. После этого он всегда мог присоединиться, не обращаясь к ssh.
Человек D: С Человеком C, который теперь разблокирован, я хотел узнать, что случилось. Единственная общая черта между мной и человеком C, казалось, что мы оба получили доступ к серверу, используя ssh. У меня был Персона D, попытавшаяся снова подключиться к gmod без какого-либо успеха. После этого я проинструктировал его, как загрузить putty и ssh на мой сервер. Я попросил его немедленно покинуть SSH, а затем попросил его попытаться подключиться к серверу. Работал.
Человек E: Это где я все еще был в замешательстве. Я думал, что, возможно, подключение к ssh внесет в белый список IP-адрес от подключения. Если это правда, однако, следующие WOUDLNT сработали. Чтобы проверить проблему дальше, я подумал о какой-то другой службе, к которой я мог бы подключить людей. Я подумал, что самым простым будет веб-сервер, но я никогда не ожидал, что он будет работать. Установив нормальный веб-сервис в CentOS 7, я попросил человека E помочь мне. Опять же, убедившись, что он не мог подключиться раньше, я попросил его посетить веб-сайт, размещенный на моем сервере. По какой-то причине он не смог загрузить сайт, но после попытки присоединиться к gmod он сразу пропустил его.
Человек F: Я пытался сделать то же самое, что и с Человеком E, однако Человек F смог загрузить веб-сайт и после этого присоединиться к серверу. Снова перед загрузкой веб-сайта он не смог присоединиться, даже после 2-3 попыток перезапустить игру и перезапустить сервер.
Консоль сервера также не реагировала ни на какие попытки подключения, прежде чем пытаться подключиться через ssh или веб-сервер и пытаться снова. Другие игровые серверы работают нормально, но требуется дополнительное тестирование.
Это привело меня к заключению следующего: Люди могут подключаться к игровому серверу только тогда, когда они получают доступ к какой-либо другой службе, расположенной на той же машине.
Я думаю, что это может быть Может быть, у поставщика сервера есть какая-то функция безопасности, которая позволяет работать только определенным приложениям. Если это так, он также, кажется, помещает в белый список любые ip(ы), которые соединяются через "доверенную службу". это чистое предположение, и мой провайдер не ответил ни на один из моих запросов.
Это, похоже, не является проблемой, специфичной для игрового сервера, поскольку поддержка игр также полностью поставлена в тупик, и я не смог полностью подтвердить работу любых других игровых серверов, поскольку у меня не было времени и людей, чтобы протестировать его в других играх.
Даже если это не может быть решено, это все равно кажется интересной загадкой.