树莓派4 Ubuntu Server 22.04.2 LTS禁用密码认证与root登录求助
解决Ubuntu服务器禁用root登录和密码认证的问题
先搞定root权限的问题
Ubuntu默认是锁定root账号的,没法直接用su root登录,你可以这么操作:
- 直接用普通用户提权编辑配置文件:输入
sudo nano /etc/ssh/sshd_config,然后输入你当前普通用户的密码(不是空密码,是你给这个账号设置的密码),就能编辑了。 - 要是想切换到root shell环境,输入
sudo -i,同样输入普通用户密码就行。
配置禁用密码认证和root登录
编辑/etc/ssh/sshd_config时,找或者添加以下配置:
- 禁用密码登录:找到
PasswordAuthentication这行,把前面的#注释符去掉,改成PasswordAuthentication no;如果找不到这行,直接在文件合适位置加一行。另外再加一行ChallengeResponseAuthentication no,确保所有密码相关的认证都关闭。 - 禁用root登录:找
PermitRootLogin这行,改成PermitRootLogin no;没有的话就加一行。
改完后按Ctrl+O保存,Ctrl+X退出编辑器,然后重启SSH服务让配置生效:
sudo systemctl restart sshd
⚠️ 重要提醒:一定要先确认自己的公钥登录完全能用,再重启SSH,不然会把自己锁在服务器外面!
为啥之前修改没生效?
大概率是这两个原因:
- 修改完配置没重启SSH服务,新配置不会自动生效
- 配置文件里可能有重复的选项,比如后面还有一行
PasswordAuthentication yes,把你改的设置覆盖了,建议搜一下整个文件里的相关配置。
内容的提问来源于stack exchange,提问作者Jordan H
相关产品推荐
相关产品推荐

