当前位置:  首页  >  服务器技术  >  Linux/unix  >  Linux教程

分析UNIX系统远程登陆和安全防御办法

让一个普通的用户转换成为管理员:如果要让一个普通的系统用户成为系统管理员,可以在UNIX环境下用SU命令。这个命令的意思是代替用户(Subsitituteuser)但是在以前常被一些黑客用来转换成为管理员(ROOT)身份,因此这个命令也被成为超级用户(SUQERUSER)。S

让一个普通的用户转换成为管理员:


  如果要让一个普通的系统用户成为系统管理员,可以在UNIX环境下用SU命令。这个命令的意思是代替用户(Subsititute user)但是在以前常被一些黑客用来转换成为管理员(ROOT)身份,因此这个命令也被成为超级用户(SUQER USER)。
 

  SU命令的参数是要转换成为的用户名,如果不带任何参数使用SU命令。系统认为用户要转换成ROOT身份,因此回显示提示信息,要求拥护提供正确的ROOT口令。比如DAVID要获得BDSK的身份,则在命令中输入:

  S su bdsk

  要获得新用户的系统设置,要在SU命令和用户命中见用“—”连子符号这个连子符号告诉SU程序不但成为这个用户,而且还要获得哪个用户身份登陆时该用户的环境。

 

  防御办法:

  UNIX系统中,计算机安全系统建立在身份验证机制上。如果root口令失密,系统将会受到侵害,尤其在网络环境中,后果更不堪设想。因此限制用户 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

  有点麻烦,冒昧问一下,我用tcp wrapper禁止外部telnet连接是否足够了?

  对方可以用FTP只要不管用什么方法登陆 他们的手段一般都是破解ROOT的密码得到ROOT的权限。或者把一个普通的用户权限提升。给自己留个后路不过SU命令现在一般都行不动。

吐了个 "CAO" !
扫码关注 PHP1 官方微信号
PHP1.CN | 中国最专业的PHP中文社区 | PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | PHP问答
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有