centos和ubuntu关于Ubuntu远程ssh连接失败的问题
在做机器⼈项⽬的时候,⽤的是Ubuntu的linux,跟之前的CentOS的操作命令有⼀点差别,就⽐如防⽕墙的名字,在Ubuntu系统中叫什么ufw,真是有点不好接受。
为了能模拟环境,我⼜弄了⼀台电脑,但是⽼在两个电脑之间切换很费劲。于是想利⽤PieTTY这个软件进⾏远程的SSH连接。但是怎么都连接不上,⽼是denied。两个OS能相互的ping通,防⽕墙什么的都关闭了,怎么还能连不上呢?于是Google了⼀下。
⾸先我的这台机器是已经关闭了防⽕墙,甚⾄直接卸载了防⽕墙的:
ufw disable
apt-get remove iptables
⽹上有很多介绍在Ubuntu下开启SSH服务的⽂章,但⼤多数介绍的⽅法测试后都不太理想,均不能实现远程登录到Ubuntu上,最后分析原因是都没有真正开启ssh-server服务。最终成功的⽅法如下:
sudo apt-get install openssh-server
Ubuntu缺省安装了openssh-client,所以在这⾥就不安装了,如果你的系统没有安装的话,再⽤apt-get安装上即可。linux是由哪个人开发的
然后确认sshserver是否启动了:
ps -ef | grep ssh
如果只有ssh-agent那ssh-server还没有启动,需要/etc/init.d/ssh start,如果看到sshd那说明ssh-server已经启动了。
ssh-server配置⽂件位于/ etc/ssh/sshd_config,在这⾥可以定义SSH的服务端⼝,默认端⼝是22,你可以⾃⼰定义成其他端⼝号,如222。然后重启SSH服务:使用变量的前提是什么
小孩学编程的学费一般是多少>unicode码值图如果ssh-server没有启动成功,那么可以重启系统,这样ssh的服务器就打开了。
在实际的使⽤中还发⽣⼀些例外,那就是利⽤其它的user是可以登陆ssh的,但是利⽤root⽤户不能登陆ssh,问题的原因就是ssh的配置出现了问题,需要额外的配置⼀下ssh的服务器。
1.Ubuntu的root⽤户默认是没有密码的,所以要为root⽤户增加新的密码,或者修改root密码:
sudo passwd root
2.切换到root⽤户,修改 /etc/ssh/sshd_config:
xxx@ubuntu14:~$ su - root
Password:
root@ubuntu14:~# vi /etc/ssh/sshd_config
3.注释掉 #PermitRootLogin without-password,添加 PermitRootLogin ye
# Authentication:
LoginGraceTime 120
#PermitRootLogin without-password PermitRootLogin yes
StrictModes yes
4.重启 ssh  服务
java在线编辑excelroot@ubuntu14:~# sudo service ssh restart ssh stop/waiting
ssh start/running, process 1499
root@ubuntu14:~#

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。