一、检查用户权限配置
当SSH登录出现权限拒绝时,首先需确认用户是否被允许登录。检查以下配置项:
- 查看用户是否在允许登录名单中:执行
grep AllowUsers /etc/ssh/sshd_config
,确认目标用户未被排除 - 验证用户账户状态:使用
id [username]
命令确认账户存在且未锁定 - 检查root登录权限:确认
PermitRootLogin
参数是否设置为 yes 或 prohibit-password
二、验证SSH配置文件权限
SSH服务对配置文件及关联文件的权限有严格要求:
- 执行
sudo grep PasswordAuthentication /etc/ssh/sshd_config
确认密码登录是否开启 - 检查
PubkeyAuthentication
参数是否设置为 yes 以启用密钥认证 - 确保
StrictModes
设置为 yes 时,相关文件权限必须符合要求
三、排查文件系统权限问题
使用以下命令修复关键文件的权限设置:
- 用户主目录权限:
chmod 700 /home/[username]
- .ssh目录权限:
chmod 700 ~/.ssh
- 授权密钥文件权限:
chmod 600 ~/.ssh/authorized_keys
四、安全模块与登录策略
特殊安全策略可能影响SSH登录权限:
- 检查SELinux状态:执行
sestatus
并临时禁用测试setenforce 0
- 查看PAM认证模块:检查
/var/log/auth.log
中的会话关闭记录 - 验证IP白名单设置:确认未启用过度的访问限制策略
SSH登录权限问题需从账户权限、配置文件、文件系统权限、安全策略四个维度进行系统排查。建议优先检查用户登录权限与文件权限配置,再逐步排查安全模块限制。所有配置修改后需执行 systemctl restart sshd
使变更生效。
本文由阿里云优惠网发布。发布者:编辑员。禁止采集与转载行为,违者必究。出处:https://aliyunyh.com/548910.html
其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。