约束用户 root 长途登录,对确保计算机体系的安全,具有实际意义。本文向我们介绍一些办法,能到达约束 root 长途登录的意图。
办法一:在/etc/default/login 文件,添加一行设置指令。
CONSOLE = /dev/tty01
设置后当即收效,无需从头引导。今后,用户只能在控制台(/dev/tty01)root登录,然后到达约束root长途登录,不过,一起也约束了局域网用户root登录,给管理员的日常保护作业带来诸多不便。
办法二:1.为了到达约束root长途登录,首先要辨明哪些用户是长途用户(即是否通过另一台 Windows 体系或 UNIX 体系进行 telnet 登录),哪些用户是局域网用户。通过以下shell程序能到达此意图。
TY=`tty | cut -b 9-12`
WH=`finger | cut -b 32-79 | grep $TY | cut -b 29-39`
KK=` tty | cut -b 6-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.18 terminal_server
一切通过99.57.32.18终端服务器登录到主机的终端中,WH 是同一个值,即为终端服务器名terminal_server。
2.在root的.profile文件中,依据 WH 值进行不同的处理,然后完成约束root长途登录。
Trap 1 2 3 9 15
If [ $WH = local -o $WH = terminal_server ]
then
echo Welcome……
else
exit
fi
办法三:有时为了作业的便利,答应局域网中部分电脑root登录,例如,答应局域网中IP 地址为 99.57.32.58 的电脑root登录,要完成这一点,需求在前述办法中,作两点弥补:
1.在 /etc/hosts 文件中,参加一行:99.57.32.58 xmh。
2.在上述 Shell 程序段中,将下述内容:
If [ $WH = local -o $WH = terminal_server ]
修改为:
If [ $WH = local -o $WH = terminal_server -o $WH= xmh ]
办法四:通过以上处理后,仍存在普通用户登录后用su指令变成 root 用户的或许,然后到达 root 长途登录的意图。为了避免用这种办法完成 root 长途登录,需求约束普通用户不能履行 su 指令:
1.将su指令属主改为 root;
2.将su指令的权限改为 700