У меня CentOS 7 работает на компьютере с VPS, и после перезагрузки компьютера я больше не могу подключиться к нему по SSH.

$ ssh -v <IP>
OpenSSH_6.6.1, OpenSSL 1.0.1e 11 Feb 2013
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to <IP> [<IP>] port 22.
debug1: connect to address <IP> port 22: Connection timed out
ssh: connect to host <IP> port 22: Connection timed out

Я пытался пинговать, но ничего.

$ ping <IP>
PING sidious (<IP>): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1

TraceRoute выводит что-то, но оно никогда не заканчивается, оно заканчивается

$ traceroute sidious
traceroute to sidious (37.205.11.241), 64 hops max, 52 byte packets
1  192.168.1.254 (192.168.1.254)  0.664 ms  0.457 ms  0.457 ms
...
9  * * *
10  * * *
11  * * *
12  * * *

Дело в том, что на сайте администратора VPS я мог войти в консоль. Я пытался убедиться, что SSH работает, и я верю, что это так.

Я временно отключил iptables.

$ iptables -L -n                                           
Chain INPUT (policy ACCEPT)                                                   
target     prot opt source               destination                          

Chain FORWARD (policy ACCEPT)                                                 
target     prot opt source               destination                          

Chain OUTPUT (policy ACCEPT)                                                  
target     prot opt source               destination        

Наконец, я также связался с администратором сервера моего VPS, если они могут помочь с их стороны. Но я все равно пишу, если кто-то может помочь здесь.

Я думаю, что это может быть проблема с сетью. Может быть, я случайно повлиял на это.

$ ss -tulpn                                                
Netid  State      Recv-Q Send-Q     Local Address:Port       Peer Address:Port

tcp    LISTEN     0      0                      *:22                    *:*   
users:(("sshd",420,3))                                                     
...                                               
tcp    LISTEN     0      0              127.0.0.1:25                    *:*   
users:(("master",1367,13))                                                 
...                                              
tcp    LISTEN     0      0                     :::22                   :::*   
users:(("sshd",420,4))                                                     
...

Любые другие мысли, как решить эту проблему?

1 ответ1

1

Так что, в конце концов, это была проблема с сетью. Видимо, из-за того, что я случайно запустил yum update , система обновилась до CentOS 7.1. Этот экземпляр сервера работает в OpenVZ, в котором есть известная ошибка, связанная с сетью https://bugzilla.redhat.com/show_bug.cgi?id=1207975

Ссылка также документирует исправление:

--- ifup-aliases.orig   2015-04-01 08:46:08.179879018 +0200
+++ ifup-aliases    2015-04-01 08:46:52.558427785 +0200
@@ -261,7 +261,8 @@
            is_available ${parent_device} && \
            ( grep -qswi "up" /sys/class/net/${parent_device}/operstate || grep -qswi "1" /sys/class/net/${parent_device}/carrier ) ; then
                echo $"Determining if ip address ${IPADDR} is already in use for device ${parent_device}..."
-                  if ! /sbin/arping -q -c 2 -w ${ARPING_WAIT:-3} -D -I ${parent_device} ${IPADDR} ; then
+                  /sbin/arping -q -c 2 -w ${ARPING_WAIT:-3} -D -I ${parent_device} ${IPADDR}
+                  if [ $? = 1 ]; then
                   net_log $"Error, some other host already uses address ${IPADDR}."
                   return 1
               fi

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .