zoukankan      html  css  js  c++  java
  • CentOS 7安全加固

    本次实验使用的centos 7 版本

    一、查找系统中是否存在空密码账户

    1、使用命令: awk -F: '($2==""){print $1}' /etc/shadow 直接查看。可以看到系统中没有空密码账户

    2、验证一下。添加一个账户qwe, 命令:useradd qwe(此时qwe虽然没有密码但是他还不能使用空密码登录)

    3、使用root账户清除qwe密码,passwd -d qwe

     

    4、再次使用 awk -F: '($2==""){print $1}' /etc/shadow 命令查看系统中空密码账户

    二、查找uid值为0的用户。

    如果passwd文件中uid值为0的话,那么这个用户就拥有root权限。

    1、查找uid为0账户: awk -F: '($3==0){print $1}' /etc/passwd 可以看到当前系统只有root账户拥有root权限。

     

    2、修改权限的话,以root用户权限修改passwd文件中的uid为0,保存退出。

    在root用户下使用su - lu切换lu用户

    此时切换lu用户是,依然显示的是root的状态,但是查看history明显是lu用户,而且lu已经获取到了root的权限,使用该用户可以做root用户的操作

    查看uid为0命令 awk -F: '($3==0){print $1}' /etc/passwd 

      

    接下来我想到,用lu用户修改/etc/passwd文件中root用户uid为1000,保存退出

    然后切换回root用户,以此时uid为1000的root查看passwd时,文件已变为只读

    三、安全加固的一些方案

    1、密码策略

    修改 /etc/login.defs文件中相应参数

    PASS_MAX_DAYS 密码有效期

    PASS_MIN_DAYS 修改密码的最短期限

    PASS_MIN_LEN 密码最短长度

    PASS_WARN_AGE 密码过期提醒

    2、修改密码策略

    修改vi /etc/pam.d/system-auth文件,将password    requisite     pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type= 注释并在其下面新增1行 password requisite pam_cracklib.so try_first_pass minlen=8 difok=5 dcredit=-1 lcredit=-1 ocredit=-1 retry=1 type= 

    备注:

    try_first_pass而当pam_unix验证模块与password验证类型一起使用时,该选项主要用来防止用户新设定的密码与以前的旧密码相同。

    minlen=8:最小长度8位

    difok=5:新、旧密码最少5个字符不同

    dcredit=-1:最少1个数字

    lcredit=-1:最少1个小写字符,(ucredit=-1:最少1个大写字符)

    ocredit=-1:最少1个特殊字符

    retry=1:1次错误后返回错误信息

    type=xxx:此选项用来修改缺省的密码提示文本

    3、新口令不能与10个最近使用的相同

    修改vi /etc/pam.d/system-auth文件,在password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok 所在行的后面添加 remember=11

    4、设置会话超时

    修改vi /etc/profile文件在最后添加参数export TMOUT=600。(600秒  十分钟)

    5、账户锁定策略(终端登录)

    修改vi /etc/pam.d/system-auth文件,在# User changes will be destroyed the next time authconfig is run.行的下面,添加 auth required pam_tally2.so deny=5 unlock_time=1800 even_deny_root root_unlock_time=1800(终端登录失败5次,锁定半小时)

    6、禁止root通过ssh远程登录

    修改vi /etc/ssh/sshd_config文件,将配置参数#PermitRootLogin yes改成PermitRootLogin no

  • 相关阅读:
    RESTful API 设计指南
    浅析JS中的模块规范(CommonJS,AMD,CMD)
    Gitbucket—快速建立自己的Github
    单点登录详解
    Java常用类--处理日期
    Java常用类--数字常用类
    java常用类--字符串
    java常用类--系统相关
    java常用类--与用户互动
    设置PATH和CLASSPATH
  • 原文地址:https://www.cnblogs.com/hai-long/p/10744053.html
Copyright © 2011-2022 走看看