如何禁止root用户远程登录

 我来答
day忘不掉的痛
2017-04-16 · 知道合伙人数码行家
day忘不掉的痛
知道合伙人数码行家
采纳数:62646 获赞数:223932
本人担任公司网络部总经理多年,有充足的网络经验、互联网相关知识和资讯。

向TA提问 私信TA
展开全部
Linux系统下怎样限制Root用户远程登陆,下面介绍4种方法,在不同的linux系统,可能配置略有差异:

方法1:可以在/etc/default/login文件,增加一行设置命令:CONSOLE=/dev/tty01
这样设置后立即生效,无需重新引导,不过,这样做的同时也限制了局域网用户root登录,给管理员的日常维护工作带来诸多不便。

方法2:为了达到限制root远程登录,我们首先要分清哪些用户是远程用户(即是否通过另一台Windows系统或UNIX系统进行telnet登录),哪些用户是局域网用户。通过以下shell程序能达到此目的:
TY=`tty|cut-b9-12`
WH=`finger|cut-b32-79|grep"$TY"|cut-b29-39`
KK=`tty|cut-b6-9`
If["$KK"="ttyp"]
then
WH=$WH
else
WH="local"
fi
以上Shell命令程序中,WH为登录用户的主机IP地址,但如果在/etc/hosts文件中,定义了IP地址和机器名之间的对应关系,则WH为用户登录的主机名。假设连接到局域网中的终端服务器的IP地址为:
99.57.32.18,那么应在/etc/hosts文件中加入一行:
99.57.32.18terminal_server
所有通过99.57.32.18终端服务器登录到主机的终端中,WH是同一个值,即为终端服务器名terminal_server。
可以在root的.profile文件中,根据WH值进行不同的处理,从而实现限制root远程登录。
Trap123915
If["$WH"="local"-o"$WH"="terminal_server"]
then
echo"Welcome......"
else
exit
fi

方法3:有时也要允许局域网中部分电脑root登录,如允许局域网中IP地址为99.57.32.58的电脑root登录,实现的话需要在上述方法中,作两点补充:
1.在/etc/hosts文件中,加入一行:99.57.32.58xmh。
2.在上述Shell程序段中,将If["$WH"="local"-o"$WH"="terminal_server"]修改为If["$WH"="local"-o"$WH"="terminal_server"-o"$WH"="xmh"]

方法4:如果经过以上处理后,仍存在普通用户登录后用su命令变成root用户的可能,从而达到root远程登录的目的。
这样,为了防止用这种方法实现root远程登录,需要限制普通用户不能执行su命令:将su命令属主改为root或者将su命令的权限改为700
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式