ssh 使用 root 账户无法登录

问题

使用 buildroot 编译了一个树莓派镜像,启动后发现没有 sshd 功能,于是 make menuconfig 添加 openssh,重新编译烧录启动,然而发现树莓派拒绝 ssh 连接请求,下面是 ssh 客户端报错信息:

[email protected]'s password:
Permission denied, please try again.
[email protected]'s password:

改密码

首先想到的是:root 账户目前没密码,或者我输入的密码有误。不管是哪一种,先把密码改了再试一下

# passwd
Changing password for root
New password:
Bad password: too weak
Retype password:
passwd: password for root changed by root

再次连接,失败。重启后再连接,还是失败。

改 sshd 配置文件

后来查阅资料,了解到修改 sshd 的配置文件可以解决这个问题

 #LoginGraceTime 2m
-#PermitRootLogin prohibit-password
+PermitRootLogin yes
 #StrictModes yes
 #MaxAuthTries 6
 #MaxSessions 10

因为 sshd 默认禁止 root 账户登录,所以需要使能 PermitRootLogin 选项,PermitRootLogin prohibit-password 表示允许 root 账户登录,但是不能以密码的方式登录,所以只能以公私钥的方式登录,为了简便,我们不采用这种方式,而是采用 PermitRootLogin yes,这样,直接使用密码就可以登录了。

验证

重启 sshd 服务,这里我直接关机重启。
连接,输入密码,登录成功。

你可能感兴趣的:(嵌入式,Linux,#,ARM,sshd,root)