服务器能ping通但是无法ssh

少于 1 分钟读完

服务器能ping通但是无法ssh

原因:

网上有很多情况是防火墙、权限等问题,都无法解决

  1. 首先在本地输入ssh host@ip -v查看报错信息
    • 提示:ssh: connect to host xxx.xxx.xxx.xxx port 22: Connection refused
  2. 好在jupyter服务开着,在jupyter中启动终端,输入sudo service sshd status
    • 发现服务被关闭
  3. 输入sudo service ssh restart,发现启动失败
  4. 输入journalctl -xe查看报错信息
    • 发现/usr/sbin/sshd: error while loading shared libraries: libz.so.1:

这就找到原因了,我们的sshd服务找不到这个共享的库;突然想起我昨天为了配置LD_LIBRARY_PATH的时候有把shared lib搞乱

解决方法:

  • 输入sudo find / -name libz.so*
    • 发现我们的libz.so库在/usr/lib下面
  • vi /etc/ld.so.confinclude ld.so.conf.d/*.conf 下方添加/usr/lib
  • 保存后执行:sudo /sbin/ldconfig -v可能会有读写权限的问题,所以要用sudo,另外-v可以看到log输出

另外一个办法是在**LD_LIBRARY_PATH**变量中添加这个路径,对于其他的.so库文件采用这个方法比较好。

分类: ,

更新时间: