码迷,mamicode.com
首页 > 系统相关 > 详细

linux安全基础

时间:2015-05-08 15:13:25      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:linux

对于我这个刚入行没多久的it宅来说,只是在做做自己喜欢的事情罢了,最近在阿里云购买了一个云主机服务器,针对自己不太熟悉的知识进行巩固和学习,阿里 云可以说是最接近服务生产环境的了,我还是新手,请各位长辈多多包涵!
       自己总结linux安全防范的知识与配置方法:
       用户的管理,系统中有很多用户,有的是用来登录系统shell的,有的则是为运行某一服务而建立的;运行服务的用户通常不需要登录系统,我们可以cat /etc/passwd来判断哪些用户是系统用户,哪些是服务进程的用户。
     系统用户(root)拥有最高权限,那些不用来登录系统的用户passwd内后面都会指定/sbin/nologin/禁止登录系统的shell;如果系统内用户都已经固定,不需要修改了,可以锁定配置文件来进行禁止创建新的用户,使用chattr +i /etc/passed /etc/shadow锁定文件,-i则表示解锁文件,解锁后仍可以创建新的用户
      用户账号强制密码最长使用期限
      vi /etc/login.defa中添加修改(只对后来创建用户有效,对已存在用户使用chage -M 天数  用户  来修改)
      PASS_MAX_DAYS        30
       输入检查完毕后wq保存即可
       linux执行命令都会保存一定条数的命令历史,这对于安全性要求很高的服务器来说而言是不能允许的,因为命令历史全部以明文方式记录在主(root)或 其他用户家目录.bash_history里,一旦有人获取命令历史文件,那么用户操作的过程将一览无余,如果输入历史中存在明文密码,那将又是多了一个 安全隐患
      那么我们可以修改vim /etc/profile文件,找到HISTSIZE项设置历史记录命令条数
       HISTSIZE=200                            //表示最多记录两百条历史命令
       此外修改用户家目录下的vim ./bash_logout可以实现用户退出shell环境终端清空输入的历史命令
       history -c                              //清空命令历史
      clear
       修改vim /etc/profile来对用户进行空闲超时时间的操作退出,防止管理员不在时其他人员对服务器进行操作,在文件中找到export TMOUT项
       export TMOUT=600                 //表示用户六百秒未进行任何操作将自动退出shell
       普通用户su命令提权,普通用户有时需要使用root权限的shell命令,但又不登录root账号,这时就需要对普通用户开放某些特殊权限命令
      如普通用户shell下:su - root   输入密码来进入root账号进行命令行操作,如果限定只有某些用户来su登录root管理员账号,那就需要设置添加授权用户了 ,启用pam_wheel认证后,未加入wheel组的用户将无法使用su命令来切换到root账号,其操作如下(仅供参考)
     gpasswd -a lisi wheel
      vim /etc/pam.d/su
     #%PAM-1.0
     auth     aufficient            pam_rootok.so
     auth     required             pam_wheel.so  use_uid 
    
                //找到此行去掉#号注释
     GRUB引导菜单设置密码,GRUB菜单我们可以用来进行系统修复,这种方式可以不用通过系统验证获得root权限,这无疑是一个极大的安全威胁,对此我们可以设置一个GRUB密码,只有输入正确才能对GRUB底层shell进行修改,方式如下:
     grub-md5-crypt                          //输入两次安全密码进行md5加密
     vim  /boot/grub/grub.con

 ## grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You do not have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /, eg.
#          root (hd0,0)
#          kernel /boot/vmlinuz-version ro root=/dev/xvda1
#          initrd /boot/initrd-[generic-]version.img
#boot=/dev/xvda
default=0
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
password --md5   $1$DpQOE$2cO7.Sfc1EsgcQBUC7hRP.        //添加上加密密码          
title CentOS (2.6.32-431.23.3.el6.i686)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.32-431.23.3.el6.i686 ro root=UUID=e76a7b8d-20c2-4f94-bdd1-f4054a34c206 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
        initrd /boot/initramfs-2.6.32-431.23.3.el6.i686.img
     
    vim /etc/security 可以修改系统启动时加载的配置文件  init q 重新读取系统配置文件


技术分享至此我总结记录的简单就这些,希望多少有点帮助技术分享

本文出自 “linux窝” 博客,请务必保留此出处http://xiangcc.blog.51cto.com/10201823/1647334

linux安全基础

标签:linux

原文地址:http://xiangcc.blog.51cto.com/10201823/1647334

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!