免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1788 | 回复: 0
打印 上一主题 下一主题

CO限制ROOT用户远程登录的几种方法 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-02-15 13:44 |只看该作者 |倒序浏览
SCO限制ROOT用户远程登录的几种方法
               
              
第一种方法:
                  
     屏蔽telnet功能。
     telnet功能被屏蔽掉后,任何用户都无法登录,当然ROOT也无法登录。但这种方法太过极端。故不可取。
  
     第二方法:
  
     在/etc/default/login中增加一行命令
     CONSOLE=tty01
     经过这样设置后,用户只能在第一个控制台上以ROOT登录。任何其他控制台和所有远程用户均无法登录。
  
     第三种方法:
              
  只允许指定的用户以ROOT用户远程登录
     若
服务器
的地址为134.33.86.13;允许地址为134.33.86.17和134.33.86.18的机器以ROOT登录。
              
1. 首先编辑/etc/hosts文件,内容如下:
              
  127.0.0.1 local
     134.33.86.13 jnzy.jndx.com
     134.33.86.17 root2
     134.33.86.18 root3
              
2. 写一段程序放入文件/.profile中
              
   :
     # @(#) root.profile 68.1 98/01/20
     #
     # Copyright (C) 1989-1998 The Santa Cruz Operation, Inc.
     # All Rights Reserved.
     # The information in this file is provided for the exclusive use of
     # the licensees of The Santa Cruz Operation, Inc. Such users have the
     # right to use, modify, and incorporate this code into other products
     # for purposes authorized by the license agreement provided they include
     # this notice and the associated copyright notice with any such product.
     # The information in this file is provided "AS IS" without warranty.
     #
     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
     trap 1 2 3 9 15
     if [ "$WH" = "local" -o "$WH" = "root2" ]
     then
  
     SHELL=/bin/sh
     HOME=/
     PATH=/bin:/etc:/usr/bin:/tcb/bin:/zy
              
  # set terminal type
     eval `tset -m scoansi:${TERM:-scoansi} -m :\?${TERM:-scoansi} -e -r -s -Q`
     export TERM PATH SHELL HOME
              
  [ -x /bin/mesg ] && mesg n # if mesg is installed...
     date
     else
     echo "you can not telnet by root:\07\07" #拒绝登录并响铃告警
     echo "press any key to exit"#按任意键退出
     read sad
       exit
     fi
              
  这样只有在IP地址为134.33.8.17和134.33.86.18两台机器上能以ROOT用户登录,其他地址不可以用ROOT登录。
  从而保证系统安全。
              or
                                
Unix
中限制root远程登录的方法                  
              
  
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。
                     
  方法五:在上述方法中,虽限制了普通用户执行su 命令,但“精明”的用户可以用 ftp 命令上载一个用户可以执行的 su命令,从而实现 root 远程登录。为了防止这一点,需要在路由器上设立
防火墙
,限制用户执行ftp协议,这里不再赘述。
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/19843/showart_478725.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP