`
hyongbai
  • 浏览: 15269 次
文章分类
社区版块
存档分类
最新评论

sh error port 22: Connection refused

 
阅读更多

from:http://hi.ba<wbr>idu.com/tuna<wbr>isen/blog/it<wbr>em/85e0a4180<wbr>5ed9fb24bedb<wbr>cf3.html</wbr></wbr></wbr></wbr></wbr>

如果出现ssh: connect to host XX.XX.XX.XX port 22: Connection refused

请按如下步骤检查:

1、目标主机的ssh server端程序是否安装、服务是否启动,是否在侦听22端口;

检查方法:

june@ubuntu:~$ ps -ef|grep sshd

root28591020:29 ?00:00:00 /usr/sbin/sshd -D

root29012859020:31 ?00:00:00 sshd: june[priv]

june29712901020:31 ?00:00:00 sshd:june@pts/1

june@ubuntu:~$

其中/usr/sbin/sshd为ssh clinet/server中server端的守护进程,如果上述结果中没有sshd出现,那么可能就是你的server端程序没有安装(Ubuntu 11.04 默认没有安装ssh server,只安装了ssh client),或者sshd服务没有启动,这两者的解决办法请见下文详述。
2、是否允许该用户登录;
3、本机是否设置了iptables规则,禁止了ssh的连入/连出;

检查方法:

june@ubuntu:~$sudoiptables -L

[sudo] password for june:

Chain INPUT (policy ACCEPT)

targetprot opt sourcedestination

ACCEPTtcp--anywhereanywheretcp dpt:ssh

Chain FORWARD (policy ACCEPT)

targetprot opt sourcedestination

Chain OUTPUT (policy ACCEPT)

targetprot opt sourcedestination

june@ubuntu:~$
4、查查ssh的配置文件

ls -lrt /etc/ssh

针对第一点没有安装ssh server或者没开启sshd的用户,可以参考这篇:

Ubuntu如何开启SSH服务

SSH分客户端openssh-client和openssh-server
如果你只是想登陆别的机器的SSH只需要安装openssh-client(ubuntu有默认安装,如果没有则sudo apt-get install openssh-client),如果要使本机开放SSH服务就需要安装openssh-server:sudo apt-get install openssh-server然后确认sshserver是否启动了:
ps -e |grep ssh
如果看到sshd那说明ssh-server已经启动了。
如果没有则可以这样启动:sudo /etc/init.d/ssh start
ssh-server配置文件位于/etc/ssh/sshd_config,在这里可以定义SSH的服务端口,默认端口是22,你可以自己定义成其他端口号,如222。
然后重启SSH服务:
sudo /etc/init.d/ssh stop
sudo /etc/init.d/ssh start
然后使用以下方式登陆SSH:
ssh tuns@192.168.0.100 tuns为192.168.0.100机器上的用户名,需要输入密码。
断开连接:exit

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics