zoukankan      html  css  js  c++  java
  • 操作系统加固

    1 检查是否配置登陆超时时间设置

    编辑vi /etc/profile文件,配置TMOUT将值设置为低于300.
    
    TMOUT=300

    2 检查是否禁止root用户登录FTP

    设置如下将对应配置文件中,设置root,禁止登录的用户列表中添加root用户

    1.编辑vi /etc/ftpaccess,将root前的#去掉
    2.编辑vi /etc/vsftpd/ftpusers,将root前的#去掉
    3.编辑vi /etc/ftpusers,将root前的#去掉
    4.编辑vi /etc/vsftpd.ftpusers,将root前的#去掉
    5.编辑v i /etc/pam.d/vsftpd,将root前的#去掉
    6.编辑vi /etc/pam.d/ftp,将root前的#去掉

    3 检查是否使用SSH协议进行远程维护

    开启ssh,关闭telnet
    
    1.关闭telnet服务[仅供参考,不通的系统会有差别]
      a)vi /etc/xinetd.d/telnet,将disable=no改成disable=yes;
      b)chkconfig telnet off;如果需要设置telnet服务不为开机自启动,使用命令chkconfig -del telnet或者chkconfig --del telnet
    2.使用命令server xinetd restart或者/etc/init.d/xinetd restart使更改生效。

    4 检查是否配置日志文件安全权限

    1.对日志文件进行赋权:chmod 640 /var/log/messages,权限要小于等于640
    2.对日志文件进行赋权:chmod 640 /var/log/secure,权限要小于等于640
    3.对日志文件进行赋权:chmod 640 /var/log/maillog,权限要小于等于640
    4.对日志文件进行赋权:chmod 640 /var/log/cron,权限要小于等于640
    5.对日志文件进行赋权:chmod 640 /var/log/spooler,权限要小于等于640
    6.对日志文件进行赋权:chmod 640 /var/log/boot.log,权限要小于等于640

    5 检查是否启用Syslog日志审计

    系统可能是syslog或rsyslog,配置存在其中一个即可。
    
    1.vi /etc/syslog.conf,修改或配置authpriv.* /var/log/secure
    2.vi /etc/rsyslog.conf,修改或配置authpriv.* /var/log/secure

    6 检查是否启用远程日志功能

    系统可能是syslog或rsyslog,配置存在其中一个即可。
    
    1.配置文件添加:vi /etc/syslog.conf,加上*.* @10.254.90.58 //注意空白处为tab键
    2.配置文件添加:vi /etc/rsyslog.conf,加上*.* @10.254.90.58 //注意空白处为tab键

    7 检查是否记录cron行为日志

    系统可能是syslog或rsyslog,配置存在其中一个即可。
    
    1.vi /etc/syslog.conf,修改或配置cron.* /var/log/cron
    2.vi /etc/rsyslog.conf,修改或配置cron.* /var/log/cron

    8 检查是否配置文件与目录缺省权限控制

    配置的值可以为:027|037|077|127|137|177|327|337|377|777|067|167|367|767
    
    1.vi /etc/login.defs,修改或配置umask 027
    2.vi /etc/profile,修改或配置umask 027

    9 检测是否限制 root 用户远程登录

    修改配置:vi /etc/ssh/sshd_config,修改或配置PermitRootLogin no

    10 检查是否限制用户su到root

    1.添加配置:vi /etc/pam.d/su,修改或配置auth sufficient pam_rootok.so
    2.添加配置:vi /etc/pam.d/su,修改或配置auth required pam_wheel.so group=wheel

    11 检查是否配置用户最小授权

    1.chmod 644 /etc/passwd 设置文件权限低于等于644
    2.chmod 644 /etc/group设置文件权限低于等于644
    3.chmod 600 /etc/shadow设置文件权限低于等于600

    12 检查是否关闭不必要的服务和端口

    1.通过chkconfig --list daytime查看对应的服务是否开启,通过chkconfig daytime off 关闭。
    
    同理关闭如下服务:
    2.daytime-udp
    3.time
    4.time-udp
    5.echo
    6.echo-udp
    7.discard,
    8.discard-udp
    9.chargen
    10.chargen-udp,
    11.ntalk
    12.ident
    13.printer
    14.bootps
    15.tftp
    16.kshell
    17.klogin
    18.lpd
    19.nfs
    20.nfs.lock
    21.sendmail
    22.ypbind

    13 检查是否删除或锁定无关账号

    配置listen,gdm,webservd,nobody,nobody4,noaccess账号的状态,通过命令如下:
    
    1.chsh listen -s /sbin/nologin
    2.chsh gdm -s /sbin/nologin
    3.chsh webservd -s /sbin/nologin
    4.chsh nobody -s /sbin/nologin
    5.chsh nobody4 -s /sbin/nologin
    6.chsh noaccess -s /sbin/nologin

    14 检查用户 FTP 访问安全是否配置

    如果有开启vsftpd则需要配置如下两个文件,内容添加root
    
    1.vi /etc/vsftpd.chroot_list配置root
    2.vi /etc/vsftpd/chroot_list配置root

    15 检测是否删除潜在危险文件

    1.全局搜索是否存在:.rhosts文件,如果存在则删除掉。
    2.全局搜索是否存在:.netrc文件,如果存在则删除掉。
    3.全局搜索是否存在:.hosts.equiv文件,如果存在则删除掉。

    16 检查密码过期时间

    编辑:vi /etc/login.defs设置PASS_MAX_DAYS=90,时间要小于等于90

    17 检查密码创建要求是否配置

    1.vi /etc/pam.d/common-password,修改或配置password requisite pam_cracklib.so retry=3 minlen=8 lcredit=-1 ocredit=-1 ucredit=-1 dcredit=-1 use_authtok
    
    匹配正则如下:
    
    ^password\s+requisite\s+pam_cracklib\.so\s+.*retry=\d\s+.*((minlen=([8-9]|[1-9]\d)+\s+.*minclass=[3-4])|(minclass=[3-4]\s+.*minlen=([8-9]|[1-9]\d+)))
    
    2.vi /etc/pam.d/system-auth,password requisite pam_cracklib.so try_first_pass retry=3 minlen=8 minclass=3
    
    匹配正则如下:
    
    ^(\s*|\t*)password\s+requisite\s+pam_cracklib\.so\s+.*retry=\d\s+.*((minlen=([8-9]|[1-9]\d)+\s+.*minclass=[3-4])|(minclass=[3-4]\s+.*minlen=([8-9]|[1-9]\d+)))
    
    3.vi /etc/login.defs,修改或配置PASS_MIN_LEN 8,设置为大于等于8
    
    4.vi /etc/pam.d/system-auth,修改或配置pam_passwdqc.so

    18 检查是否禁止匿名FTP

    1.vi /etc/vsftpd.conf,配置修改anonymous_enable=NO
    
    2.vi /etc/vsftpd/vsftd.conf,配置修改anonymous_enable=NO
    
    19.用户密码强度 16位 
     
    20.禁止普通用户 su 到root 完成
    echo 'auth required pam_wheel.so use_uid' >> /etc/pam.d/su
    21.设置用户登录错误次数
    sed -i '/%PAM-1.0/aauth required pam_tally2.so deny=3 unlock_time=150 even_deny_root root_unlock_time300' /etc/pam.d/sshd
    #am_succeed_if模块为某些用户提供例外
    #http://www.voidcn.com/article/p-rubmrbyd-bua.html
     /sbin/pam_tally2 -u <username> --reset=0 手动解锁
    注意事项
    centos7上需要将:/etc/hosts.deny文件中对应的失败IP地址删除
    22.锁定重要文件 完成
    chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow
    chattr -i /etc/passwd /etc/shadow /etc/group /etc/gshadow
    5.设置禁止密码登录,只允许使用key登录 完成
    sed -i 's/^PasswordAuthentication yes/PasswordAuthentication no/g' /etc/ssh/sshd_config"
    23.删除系统信息 完成
    rm -f /etc/issue /etc/issue.net /etc/redhat-release /etc/motd /etc/centos-release /etc/system-release
    

      

      

    抄自于:https://www.toutiao.com/a6818744680826536451/?tt_from=mobile_qq&utm_campaign=client_share&timestamp=1587700114&app=news_article&utm_source=mobile_qq&utm_medium=toutiao_android&req_id=2020042411483401002103407414069329&group_id=6818744680826536451

  • 相关阅读:
    P1891 疯狂LCM
    P2568 GCD
    P1516 青蛙的约会和P2421 [NOI2002]荒岛野人
    P4168 蒲公英
    P5960 差分约束算法模板
    P2024 食物链(种类并查集)
    CF1328E Tree Queries
    CF1328B K-th Beautiful String
    dij-spfa乱搞
    P1993 小K的农场
  • 原文地址:https://www.cnblogs.com/panwenbin-logs/p/13744805.html
Copyright © 2011-2022 走看看