https://blog.csdn.net/qq_39028239/article/details/76254429
xshell无法用password登录服务器,只能用public key的解决办法
如上图只能用public key登录,这是在17年申请的阿里云免费体验半年的服务器上遇到的
那么我们用阿里云后台的远程连接按钮进入服务器,进入后
修改/etc/ssh/sshd_config文件配置,
PasswordAuthentication yes 是否可以密码认证,修改成yes
然后重启sshd服务
service sshd restart
这样就可以登录了,是不是很简单
————————————————
版权声明:本文为CSDN博主「朱俊的博客」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_39028239/article/details/76254429
Xshell连接linux服务器不成功的乌龙问题
一般xshell连接linux服务器不成功有以下几个问题:
linux防火墙拦截,导致Xshell不能访问linux
操作方法:
firewalld(CentOS7):启动 :systemctl start firewalld
关闭:systemctl stop firewalld
查看状态:systemctl status firewalld
开机禁用:systemctl disable firewalld
开机启用:systemctl enable firewalld
iptables防火墙的操作方法与firewalld防火墙相同,只是在不同环境下可能需要将 systemctl 换成service
22端口被占用
查看方法:netstat -tunlp|grep 22 查看端口使用情况
lsof -i:22 查看端口属于哪一个程序
如果不是sshd进程的话 则 kill -9 进程id 杀死进程
修改sshd_config配置文件
用root权限打开 /etc/ssh/sshd_config文件
修改 PermitRootLogin no 改为 PermitRootLogin yes
之后重启服务 service sshd restart
笔者执行完以上三种方式扔仍没有解决问题,最后发现在登录linux虚拟机时输入的密码是按的键盘右侧的数字键。因为当时的数字键是锁定的状态,输入时并不是输入的空,而是其他字符,导致root密码根本就不是自己记录的密码。所以当在xshell里面输入密码时因为密码错误登录不上。
因为这个问题耽误了两天的时间,实在是乌龙,记录在册,希以鞭策。
https://www.cnblogs.com/wawjandcsws/p/10262586.html
#sudo vim /etc/ssh/sshd_config
找到并用#注释掉这行:PermitRootLogin prohibit-password
新建一行 添加:PermitRootLogin yes
重启服务
#sudo service ssh restart
解读一下这两句话吧!
PermitRootLogin yes
允许root登录,设为yes。
PermitRootLogin prohibit-password
允许root登录,但是禁止root用密码登录
很明显这行是需要被注释掉的!!!