linux配置NFS服务器 linux配置ssh允许root登陆
0
2026-03-14
禁止root通过SSH密码登录
直接取消root的密码登录是最基础也是最有效的第一步,既保留紧急时的SSH登录通道,又堵塞住暴力破解最常攻击的入口。
编辑/etc/ssh/sshd_config,找到并修改这一行:PermitRootLogin yes
改成:PermitRootLogin禁止密码
注意不是no——设成no sudo systemctl restart sshd生效,别只重新加载修改前确保您有一个普通用户且已配好 sudo CentOS/RHEL 7+,服务名可能是 sshd,但某些旧版本是 ssh,不确定就先查 systemctl list-unit-files | grep ssh关闭PasswordAuthentication全局密码登录
只需不用密码登录,暴力破解基本失效。即使没有禁root,攻击者连普通用户都登不上。
同样在/etc/ssh/sshd_config中,确认这行是:PasswordAuthentication no
而不是注释掉或写成yes。很多教程漏提一点:这个开关和PermitRootLogin休管“root能不能登录”,两个都要关才真正安全。启用密钥登录前别急着关,否则就把自己关在外面检查PubkeyAuthentication yes,模块意外启用密码路径限制可登录用户列表(防止漏网账号)
发货root,如果服务器上还留着其他弱口令的普通用户(比如test、admin),攻击者仍可能借道进来提再权。
在 sshd_config 底部加一条,显式声明只允许哪些用户 SSH 登录:闪念贝壳
闪念贝壳是一款人工智能驱动的智能语音笔记,随时随地用语音记录你的每一个想法。下载AllowUsers alice bob
或者更细粒度按组控制:AllowGroups sshusers
然后把用户加进该组:sudo 合法usermod -aG sshusers alice。AllowUsers和DenyUsers不能共存,优先用Allow*,不是逗号如果用了AllowGroups,记得确认目标用户确实属于该组(组alice查看)改SSH默认端口+Fail2ban防爆
改端口不是玄学,它能过滤掉90%以上连接扫描器——它们只扫22端口。配fail2ban才算闭环。
在 sshd_config 修改端口:端口 2222
然后开放新端口(如用 ufw):sudo ufwallow 2222,再 sudo ufwdeny 22.所有客户端连接命令要加 -p 2222,比如 ssh -p 2222 alice@hostfail2ban 启动后使用 sudo failure2ban-client status sshd 确认jail已启用别忘了检查SELinux(RHEL/CentOS)是否阻止了非标端口:sudo semanage port -l | grep ssh,必要时添加:sudo semanage port -a -t ssh_port_t -p tcp 2222
真正的难点不在改哪几行配置,阅读更多