1

У меня есть Virpus VPS под управлением Ubuntu 18.04. С тех пор, как я получил его пару недель назад, у меня были проблемы с подключением через SSH. Я могу подключиться просто отлично, но, казалось бы, случайно отключить (через разные промежутки времени). После отключения я обычно должен подождать минуту, пока он не вернется. Я использовал экран, чтобы сохранить мой экранный сеанс, и, как только я войду, я могу присоединиться к экрану без проблем.

Я проверил его в трех разных сетях на трех разных машинах, двух под Windows 10 и одной под CentOS. В Windows я пытался использовать PuTTY, WinSCP, библиотеку Python SSH под названием paramiko и Git Bash для Windows. В CentOS я просто использовал команду CLI ssh. Все с одинаковыми результатами. Я пробовал SSH-в разные учетные записи пользователей, но проблема остается. Я даже пытался на моем телефоне (Android 6) с помощью ConnectBot. Неудачно.

PuTTY говорит: «Ошибка сети: программное обеспечение вызвало прерывание соединения»

CLI CentOS говорит: packet_write_wait: Connection to 198.167.140.11 port 22: Broken pipe

Я пытался установить Keepalive в PuTTY, но это не имеет никакого эффекта. После потери соединения я не могу пропинговать сервер, даже с другого хоста. То есть, если я подключаюсь по SSH к серверу с компьютера A, то я отключаюсь, затем я немедленно перехожу на компьютер B и пытаюсь пропинговать сервер, но не получаю ответа. Мне кажется, что это вина сервера. С другой стороны, если я отключаю вручную (чисто), я могу пропинговать его.

Служба поддержки Virpus говорит, что с моими настройками SSH все в порядке и что они смогли без проблем поддерживать соединение (на Linux-машине) в течение как минимум часа, после чего они отключались вручную. Другими словами, они не могут повторить проблему.

В попытке решить проблему они изменили публичный IP-адрес сервера, но это не помогло. Их следующим шагом было повторное развертывание на другом узле, который, казалось, работал немного, но теперь у меня все еще та же проблема. Они сказали мне, что все, что они могли сделать сейчас, это переместить их в другой узел. Так как они уже сделали это, я думаю, что это не исправит.

У кого-нибудь есть предложения? Я могу опубликовать любую информацию о конфигурации, которую вы просите, я просто не знаю, что размещать.

ОБНОВЛЕНИЕ:

Как и было запрошено, вот вывод состояния ufw status:

Status: active

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere
22                         ALLOW       Anywhere
80/tcp                     ALLOW       Anywhere
443/tcp                    ALLOW       Anywhere
443                        ALLOW       Anywhere
80                         ALLOW       Anywhere
80,443/tcp                 ALLOW       Anywhere
22/tcp (v6)                ALLOW       Anywhere (v6)
22 (v6)                    ALLOW       Anywhere (v6)
80/tcp (v6)                ALLOW       Anywhere (v6)
443/tcp (v6)               ALLOW       Anywhere (v6)
443 (v6)                   ALLOW       Anywhere (v6)
80 (v6)                    ALLOW       Anywhere (v6)
80,443/tcp (v6)            ALLOW       Anywhere (v6)

И для хорошей меры, вот вывод iptables -L:https://pastebin.com/GdScv2rv

ОБНОВИТЬ:

Я просмотрел auth.log и обнаружил, что последовательно получаю следующие сообщения:

Nov 10 03:47:04 <hostname> sshd[17618]: Failed password for root from <ip_address> port 44738 ssh2
Nov 10 03:47:05 <hostname> sshd[17618]: Received disconnect from <ip_address> port 44738:11:  [preauth]

Это пока я ssh'd как другой пользователь (не root), но выполняю команды sudo. <ip_address> не соответствует моему хосту или удаленному серверу.

Также кажется, что кто-то пытается меня грубо заставить, потому что я получаю кучу сообщений подряд, например:

Nov 12 12:21:12 <hostname> sshd[20367]: Invalid user demo from <ip_address> port 49709
Nov 12 12:21:15 <hostname> sshd[20367]: pam_unix(sshd:auth): check pass; user unknown
Nov 12 12:21:15 <hostname>sshd[20367]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=<ip_address>
Nov 12 12:21:17 <hostname> sshd[20367]: Failed password for invalid user demo from 193.105.134.97 port 49709 ssh2
Nov 12 12:21:17 <hostname> sshd[20367]: Disconnecting invalid user demo <ip_address> port 49709: Change of username or service not allowed: (demo,ssh-connection) -> (root,ssh-connection) [preauth]

Их около 1500, и все они используют разные имена пользователей. Я заблокировал IP-адреса в ufw .

Существует также ряд Failed password for root from IP-адресов, которые не соответствуют ни одному из моих.

0