如何配置仅允许单个用户使用SSH登录
如何配置仅允许单个用户使用SSH登录
没问题,我来给你一步步拆解怎么实现这个需求——只让admin用户能通过SSH登录服务器,其他所有用户都被禁止访问。
第一步:备份SSH配置文件(重要)
先给原配置文件做个备份,万一改出问题能快速恢复:sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak第二步:编辑SSH配置文件
用你习惯的编辑器打开SSH的主配置文件(这里以nano为例,新手友好):sudo nano /etc/ssh/sshd_config在文件里找
AllowUsers这一行:- 如果已经存在,把它修改成:
AllowUsers admin - 如果不存在,直接在文件末尾新增这一行
注意:如果配置里有
DenyUsers或DenyGroups这类规则,要确保它们和AllowUsers不冲突。比如如果之前有DenyUsers all,记得把这行注释掉(前面加#),不然会覆盖AllowUsers的设置。- 如果已经存在,把它修改成:
第三步:重启SSH服务使配置生效
根据你的操作系统选择对应的命令:- Ubuntu/Debian 系列:
sudo systemctl restart sshd - CentOS/RHEL 系列:
sudo service sshd restart
- Ubuntu/Debian 系列:
第四步:测试配置是否生效
别在当前SSH会话里直接测试!新开一个终端窗口:- 用
admin用户登录,应该能正常连接; - 用其他任意用户尝试登录,会收到“Permission denied”的提示,说明配置生效了。
- 用
额外小技巧:如果想让admin只能从特定IP段登录(比如公司内网),可以把AllowUsers改成这样:
AllowUsers admin@192.168.1.*
这样能进一步提升服务器安全性~
备注:内容来源于stack exchange,提问作者assaabriiii




