始创于2000年 股票代码:831685
咨询热线:0371-60135900 注册有礼 登录
  • 挂牌上市企业
  • 60秒人工响应
  • 99.99%连通率
  • 7*24h人工
  • 故障100倍补偿
您的位置: 网站首页 > 帮助中心>文章内容

Linux(RHEL5)系统安全常规优化 (1)

发布时间:  2012/8/7 17:51:14

  基本安全措施
  1.       删除或禁用系统中不使用的用户和组
  #  passwd  -l  wang   //禁用账户wang
  #  passwd  -u  wang  //解锁账户wang
  或
  #  vi  /etc/shadow    //保存时为  :wq!  因为文件为只读
  在密码字符前加两个叹号!
  2.       确认程序或服务的登录shell不可用
  #  vi  /etc/passwd   //将用户的登录shell改为/sbin/nologin
  或
  #  usermod   -s   /sbin/nologin   wang
  3.       限制用户的密码有效期(最大天数)
  #  vi  /etc/login.defs     //只对新建立的用户有效
  PASS_MAX_DAYS    30
  或
  #  chage  -M  30  wang  //只对已经存在的wang用户有效
  4.       指定用户下次登录时必须更改密码
  #  chage   -d  0  wang
  或
  #  vi  /etc/shadow
  //将shadow文件中wang用户LAST  DAY 域(冒号 :分割的第三列)的值设为0
  5.       限制用户密码的最小长度
  #  vi  /etc/pam.d/system-auth
  password   requisite   pam_cracklib.so   try_first_pass  retry=3   minlen=12
  retry  重试时间      minlen   安全级别
  6.       限制记录命令历史的条数
  #  vi  /etc/profile
  HISTSIZE=50   (默认为1000)
  #  echo  “history  -c  “  >>  ~/.bash_logout  //注销时清除命令历史记录
  7.       设置闲置超时自动注销终端
  #  vi   /etc /profile
  export   TMOUT=600    //添加此行使用SU切换用户身份
  su  [-]  用户名
  [-] 区别 :
  使用:相当于 - -login,表示使用目标用户的登录shell环境,工作目录,PATH变量等
  不使用: 保持原有的用过环境不便
  案例说明su的使用方法
  允许wang用户可以通过su命令切换为root身份,以便执行管理任务
  禁止其他用户使用su命令切换用过身份
  (1)       将允许用户加入wheel组
  #  gpasswd  -a  wang  wheel
  #  id  wang  //查看wang用户的附加组
  (2)       修改PAM设置,添加pam_wheel认证
  #  vi  /etc/pam.d/su
  auth   required  pam_wheel.so  use_uid   //去掉该行的#号
  (3)       验证su权限
  ?  使用sudo提升执行权限
  1./etc/sudoers配置文件---------visudo
  sudo命令提供一种机制,只需要预先在/etc/sudoers配置文件中进行授权,即可以允许特定用户以超级用户(或其他普通用户)的身份执行命令,而该用户不需知道root用户的密码(或其他用户)的密码。常见语法格式如下:
  user   MACHINE=COMMANDS
  user:  授权指定用户
  MACHINE主机:  授权用户可以在哪些主机上使用
  COMMANDS命令:授权用户通过sudo调用的命令,多个命令用 , 分隔
  /etc/sudoers文件配置中的用户、主机、命令三个部分均为可以自定义别名进行代替,格式如下
  User_Alias                 OPERATORS=jerry, tom, tsengyia
  Host_Alias                 MAILSERVERS=smtp , pop
  Cmnd_Alias               SOFTWARE=/bin/rpm , /usr/bin/yum
  2.使用sudo执行命令
  sudo  -l  :查看当前用过被授权使用的sudo命令
  sudo  -k  :清除timestamp时间戳标记,再次使用sudo命令时需要重新验证密码
  sudo  -v  :重新更新时间戳(必要时系统会再次询问用户密码)
  案例说明:
  因系统管理工作繁重,需要将用户账号管理工作交给专门管理组成员负责
  设立组账号 managers ,授权组内的各个成员用户可以添加、删除、更改用户账号
  (1)       建立管理组账户  managers
  #  groupadd  managers
  (2)       将管理员账号,如wang加入managers组
  #  gpasswd  -M  wang.nan  managers
  (3)       配置sudo文件,针对managers组开放useradd  、 userdel 等用户管理命令的权限
  #  visudo
  Cmns_Alias      USERADM  =  /usr/sbin/useradd , /usr/sbin/userdel , /usr/sbin/usermod
  %managers  localhost = USERADM
  (4)       使用wang账号登录,验证是否可以删除他、添加用户
  #  su  -  wang
  #  whoami
  #  sudo  -l
  #  sudo  /usr/sbin/useradd  user1
  #  sudo  /usr/sbin/usermod  -p  “ “  user1
  #  sudo  /usr/sbin/userdel  -r  user1
  文件和文件系统安全优化文件系统层次的安全优化
  1.       合理规划系统分区
  建议划分为独立分区的目录
  /boot   :大小建议在200M以上。
  /home  :该目录是用户默认宿主目录所在的上一级文件夹,若服务器用户数量较多,通常无法预知每个用户所使用的磁盘空间大小
  /var    : 该目录用于保存系统日志、运行状态、用户邮箱目录等,文件读写频繁。占用空间可能会较多
  /opt    : 用于安装服务器的附加应用程序及其他可选工具,方便扩展使用
  2.       通过挂载选项禁止执行set位程序、二进制程序
  使/var分区中程序文件的执行(x)权限失效,禁止直接执行该分区中二进制程序
  #  vi  /etc/fstab
  /dev/sdc1   /var    ext3    defaults,noexec   1  2
  #  mount  -o  remount   /var
  如果想要从文件系统层面禁止文件的suid 或 sgid位权限,将上边的noexec改为nosuid即可
  3.       锁定不希望更改的系统文件
  使用 +i 属性锁定service 、passwd、grub.conf 文件(将不能正常添加系统用户)
  #  chattr   +i  /etc/service  /etc/passd  /boot/grub.conf
  解除/etc/passwd文件的 +i 锁定属性
  #  lsattr   /etc/passwd   //查看文件的属性状态
  #  chattr   -i   /etc/passwd
  ?  应用程序和服务
  1.       关闭不必要的系统服务
  2.       禁止普通用户执行init.d目录中的脚本
  #  chmod  -R  o-rwx  /etc/init.d
  或
  #  chmod  -R  750   /etc/init.d
  3.       禁止普通用户执行控制台程序
  /etc/security/console.apps/目录下每一文件对应一个系统程序,如果不希望普通用户调用这些控制台程序,可以将对应的配置文件移除
  #  cd  /etc/security/console.apps/
  #  tar  jcpvf  /etc/conhlp.pw.tar.bz2  poweroff   halt   reboot  - - remove
  4.       去除程序文件中非必需的set-uid 或 set-gid 附加权限
  查找系统中设置了set-uid或set-gid权限的文件,并结合 –exec 选项显示这些文件的详细权限属性
  #  find  /  -type  f   perm  +6000   -exec  ls  -lh  { }  \  ;
  去掉程序文件的suid/sgid位权限
  #  chmod  a-s  /tmp/back.vim
  编写shell脚本,检查系统中新增加的带有suid或者sgid位权限的程序文件
  (1)     在系统处于干净状态时,建立合法suid/sgid文件的列表,作为是否有新增可疑suid文件的比较依据
  #  find  /  -type  f   -prem  +6000   >  /etc/sfilelist
  #  chmod  600  /etc/sfilelist
  (2)     建立chksfile脚本文件,与sfilelist比较,输出新增的带suid/sgid属性的文件
  #  vi  /usr/sbin/chksfile
  #!/bin/bash
  OLD_LIST=/etc/sfilelist
  for  i  in  ` find  /  -type  -prem  +6000 `
  do
  grep   -F   “$i”  $OLD_LIST  >  /dev/null
  [  $?  -ne  0 ]  &&  ls  -lh  $i
  done
  #  chmod  700  /usr/bin/chkfile
  (3)     执行chkfile脚本,检查是否有新增suid/sgid文件
  #  cp   /bin/touch  /bin/mytouch   //建立测试用程序文件
  #  chmod  4755  /bin/mytouch
  #  chksfile                    //执行程序脚本,输出检查结果
  系统引导和登录安全优化文件系统层次的安全优化
  1.       合理规划系统分区
  建议划分为独立分区的目录
  /boot   :大小建议在200M以上。
  /home  :该目录是用户默认宿主目录所在的上一级文件夹,若服务器用户数量较多,通常无法预知每个用户所使用的磁盘空间大小
  /var    : 该目录用于保存系统日志、运行状态、用户邮箱目录等,文件读写频繁。占用空间可能会较多
  /opt    : 用于安装服务器的附加应用程序及其他可选工具,方便扩展使用
  2.       通过挂载选项禁止执行set位程序、二进制程序
  使/var分区中程序文件的执行(x)权限失效,禁止直接执行该分区中二进制程序
  #  vi  /etc/fstab
  /dev/sdc1   /var    ext3    defaults,noexec   1  2
  #  mount  -o  remount   /var
  如果想要从文件系统层面禁止文件的suid 或 sgid位权限,将上边的noexec改为nosuid即可
  3.       锁定不希望更改

亿恩科技地址(ADD):郑州市黄河路129号天一大厦608室 邮编(ZIP):450008 传真(FAX):0371-60123888
   联系:亿恩小凡
   QQ:89317007
   电话:0371-63322206


本文出自:亿恩科技【www.enkj.com】

服务器租用/服务器托管中国五强!虚拟主机域名注册顶级提供商!15年品质保障!--亿恩科技[ENKJ.COM]

  • 您可能在找
  • 亿恩北京公司:
  • 经营性ICP/ISP证:京B2-20150015
  • 亿恩郑州公司:
  • 经营性ICP/ISP/IDC证:豫B1.B2-20060070
  • 亿恩南昌公司:
  • 经营性ICP/ISP证:赣B2-20080012
  • 服务器/云主机 24小时售后服务电话:0371-60135900
  • 虚拟主机/智能建站 24小时售后服务电话:0371-60135900
  • 专注服务器托管17年
    扫扫关注-微信公众号
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 亿恩科技 版权所有  地址:郑州市高新区翠竹街1号总部企业基地亿恩大厦  法律顾问:河南亚太人律师事务所郝建锋、杜慧月律师   京公网安备41019702002023号
      0
     
     
     
     

    0371-60135900
    7*24小时客服服务热线