温馨提示×

怎样禁止debian ssh root

小樊
40
2026-10-28 21:52:04
栏目: 智能运维

在 Debian 系统中,禁止 root 用户通过 SSH 登录是一个非常常见且推荐的安全加固操作。下面按“最常用 → 备选方案”给你说明。


方法一(推荐):修改 SSH 配置

1. 编辑 SSH 配置文件

sudo nano /etc/ssh/sshd_config

2. 找到或添加以下配置

PermitRootLogin no

如果原来有:

PermitRootLogin prohibit-password

或

PermitRootLogin yes

统一改为 no

3. 重启 SSH 服务

sudo systemctl restart ssh

注意:Debian 中服务名通常是 ssh(不是 sshd)

4. 验证(不要断开当前连接)

新开一个终端测试:

ssh root@服务器IP

应提示 Permission denied


方法二:只允许普通用户登录(配合 sudo)

推荐做法:

  • 禁止 root SSH
  • 用普通用户登录
  • 需要时用 sudo
adduser deploy
usermod -aG sudo deploy

方法三(可选):用密钥 + 禁止密码登录

PasswordAuthentication no
PubkeyAuthentication yes

⚠️ 操作前请确保:

  • 已配置好 SSH 公钥
  • 能正常登录,否则会把自己锁外面

方法四(不推荐但可用):PAM 限制

sudo nano /etc/security/access.conf

添加:

- : root : ALL

这种方式影响范围更大,一般不建议仅用于 SSH。


检查当前 SSH 状态

sshd -T | grep permitrootlogin

如果你愿意,我可以:

  • 帮你写一份 Debian 安全基线配置
  • 或检查你当前的 sshd_config 是否安全

0 踩