在 CentOS 中“限制 SSH 用户”通常有几个常见场景,下面按最常见需求给你说明,你可以按需使用。
编辑 SSH 配置文件:
vi /etc/ssh/sshd_config
添加或修改以下内容:
AllowUsers user1 user2
或限制某个用户不能登录:
DenyUsers user3
注意:
AllowUsers和DenyUsers不要混用太多,容易出错- 修改后必须重启 SSH
systemctl restart sshd
PermitRootLogin no
重启:
systemctl restart sshd
useradd -m sftpuser
passwd sftpuser
vi /etc/ssh/sshd_config
添加:
Match User sftpuser
ChrootDirectory /home/sftpuser
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
chown root:root /home/sftpuser
chmod 755 /home/sftpuser
mkdir /home/sftpuser/upload
chown sftpuser:sftpuser /home/sftpuser/upload
重启 SSH:
systemctl restart sshd
AllowUsers user1@192.168.1.100
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="22" accept'
firewall-cmd --reload
usermod -L username
解锁:
usermod -U username
who
w
last
✅ 禁止 root 登录
✅ 使用普通用户 + sudo
✅ 只允许指定用户 SSH
✅ 必要时使用 SFTP 隔离
如果你能具体说:
我可以给你更精确的配置示例。