linux禁止root用户通过ssh登录
禁止root用户通过ssh登录,是通过操作sshd_config配置文件来实现。
1、打开ssh配置文件
vim /etc/ssh/sshd_config
2、找到文件中下面一行文字
#PermitRootLogin no也有可能是#PermitRootLogin yes
3、去掉该行前面的#号,使其成为下面这样:
PermitRootLogin no
4、重启ssh服务
/etc/init.d/sshd restart
接下来试着用root账号再登陆发现拒绝登陆,然后在用普通用户登录即可。如果通过普通用户登录了需要root权限进行相关操作,可以通过su -命令切换到root账号。
如果机器里有很多普通用户,而我们又不希望所有的用户都能通过shh登录,也可以通过sshd_config配置来实现。
打开sshd_config文件,然后在文件的末尾加上下面一行文字,其中aaa、bbb即为允许通过ssh登录的用户
AllowUsers aaa bbb
Centos禁止root的ssh登录脚本
今天有时间又整理了个脚本
#!/bin/bash
SSH_ROOT_NO=`awk '/PermitRootLogin/' /etc/ssh/sshd_config|awk
'{if($1=="'PermitRootLogin'") print $1,$2}'`
SSH_ROOT_YES=`awk '/PermitRootLogin/' /etc/ssh/sshd_config|awk
'{if($1=="#PermitRootLogin") print $1,$2}'`
if
[ "$SSH_ROOT_YES" == "#PermitRootLogin yes" ]
then
sed -i "s/#PermitRootLogin yes/PermitRootLogin no/g" /etc/ssh/sshd_config &&
echo "set deny root to ssh ......" &&
service sshd restart
elif
[ "$SSH_ROOT_NO" == "PermitRootLogin no" ]
then
echo "ssh for root is already deny,nothing to do......"
fi