陈德馨

SSH能ping通但是连接不上的解决方法

2169人参与 |分类: 运维时间|时间:2013年01月28日 16:28

今天遇到一个很有意思的问题,自己的一台 Linux 服务器能够 ping 的通,但是却无法用 SSH 登录连接,于是在网上查询了一些资料,说的也是五花八门,什么都有,最终还是自己摸索才解决了问题。于是在这里分享一下。

一、开启SSH

以 root 用户登录 Linux,打开终端,运行:

/etc/init.d/sshd restrat

二、关闭防火墙

1、在终端运行 setup

2、选择 firewall 回车

3、按 tab 键切换到 disablede 项,然后按空格键选择,然后再按tab键切换到ok,按空格件选择

4、按 tab 键切换到 quit ,按空格件选择

然后用客户端 ssh 登录 Linux ,成功登录,呵呵 ^_^

三、关闭防火墙的另一种方式

/etc/init.d/iptables stop

补充一个,红旗 linux 的某些版本,不允许 root 用户远程登陆的,需要修改设置 #vi /etc/ssh/sshd_config 中

PermitRootLogin no

#这就不允许 root 用户远程登录,要修改成 PermitRootLogin yes 并重启sshd服务才行的

#service sshd restart

四、对第一个问题的详细例子

刚刚在虚拟上装了一个 redhat AS5 ,从本地的 FC9 中 ssh 登录,发现连结失败:

ssh: connect to host 192.168.206.11 port 22: Connection refused
lost connection

以为是虚拟机上的防火墙和 selinux 的问题,将这两个都关闭后,登录还是有问题,后来想想看看有没有sshd进程在运行,果然不出所料:

#ps -ef|grep ssh
root 2774 2613 0 Dec09 ? 00:00:00 /usr/bin/ssh-agent /bin/sh -c exec -l /bin/bash -c “gnome-session”
root 15899 11276 0 11:47 pts/1 00:00:00 grep ssh

发现只有 ssh agent 进程在运行,ssh server 进程 sshd 根本就没有运行,晕倒,怎么刚装的系统,怎么会就禁用了 sshd 服务了。呵呵,具体问题还得再研究。

启动sshd进程

#services sshd start
Starting sshd: [ OK ]

重新登录OK。

来源:陈德馨博客(微信/QQ号:35435164),转载请保留出处和链接!

地址:

必填

选填

选填

◎已有 0 人评论,请发表您的观点。