• Linux 安全基线检查——安全加固


    1. 设置密码失效时间,强制定期修改密码
    设置密码失效时间,强制定期修改密码,减少密码被泄漏和猜测风险,使用非密码登陆方式(如密钥对)请忽略此项。

    加固建议:
    使用非密码登陆方式如密钥对,请忽略此项。在 /etc/login.defs 中将 PASS_MAX_DAYS 参数设置为 60-180之间,如:
    PASS_MAX_DAYS 90
    需同时执行命令设置root密码失效时间:
    chage --maxdays 90 root


    2. 设置密码修改最小间隔时间身份鉴别
    描述
    设置密码修改最小间隔时间,限制密码更改过于频繁

    加固建议:
    在 /etc/login.defs 中将 PASS_MIN_DAYS 参数设置为7-14之间,建议为7:
    PASS_MIN_DAYS 7
    需同时执行命令为root用户设置:
    chage --mindays 7 root


    3. 设置SSH空闲超时退出时间服务配置
    描述
    设置SSH空闲超时退出时间,可降低未授权用户访问其他用户ssh会话的风险

    加固建议:
    编辑/etc/ssh/sshd_config,将ClientAliveInterval 设置为300到900,即5-15分钟,将ClientAliveCountMax设置为0-3之间。
    ClientAliveInterval 600
    ClientAliveCountMax 2


    4. 确保密码到期警告天数为7或更多身份鉴别
    描述
    确保密码到期警告天数为7或更多

    加固建议:
    在 /etc/login.defs 中将 PASS_WARN_AGE 参数设置为7-14之间,建议为7:
    PASS_WARN_AGE 7
    同时执行命令使root用户设置生效:
    chage --warndays 7 root


    5. 检查密码重用是否受限制身份鉴别
    描述
    强制用户不重用最近使用的密码,降低密码猜测攻击风险

    加固建议:
    在/etc/pam.d/password-auth和/etc/pam.d/system-auth中password sufficient pam_unix.so 这行的末尾配置remember参数为5-24之间,原来的内容不用更改,只在末尾加了remember=5。


    6. 访问控制配置文件的权限设置文件权限
    描述
    访问控制配置文件的权限设置

    加固建议:
    运行以下4条命令:
    chown root:root /etc/hosts.allow
    chown root:root /etc/hosts.deny
    chmod 644 /etc/hosts.deny
    chmod 644 /etc/hosts.allow


    7. 禁止SSH空密码用户登录 SSH服务配置
    描述
    禁止SSH空密码用户登录

    加固建议:
    编辑文件/etc/ssh/sshd_config,将PermitEmptyPasswords配置为no:
    PermitEmptyPasswords no

    8.确保SSH MaxAuthTries设置为3到6之间 SSH服务配置
    描述
    设置较低的Max AuthTrimes参数将降低SSH服务器被暴力攻击成功的风险。
    加固建议:
    在/etc/ssh/sshd_config中取消MaxAuthTries注释符号#,设置最大密码尝试失败次数3-6,建议为4:

    MaxAuthTries 4

    9. 确保rsyslog服务已启用安全审计
    描述
    确保rsyslog服务已启用,记录日志用于审计

    加固建议:
    运行以下命令启用rsyslog服务:
    systemctl enable rsyslog
    systemctl start rsyslog

    10. 确保SSH LogLevel设置为INFO服务配置
    描述
    确保SSH LogLevel设置为INFO,记录登录和注销活动

    加固建议:
    编辑 /etc/ssh/sshd_config 文件以按如下方式设置参数(取消注释):
    LogLevel INFO

    11. 系统登录弱口令身份鉴别
    描述
    若系统使用弱口令,存在极大的被恶意猜解入侵风险,需立即修复。

    加固建议:
    执行命令passwd [<user>],然后根据提示输入新口令完成修改,其中<user>为用户名,如果不输入则修改的是当前用户的口令。口令应符合复杂性要求:

    1、长度8位以上
    2、包含以下四类字符中的三类字符:
    英文大写字母(A 到 Z)
    英文小写字母(a 到 z)
    10 个基本数字(0 到 9)
    非字母字符(例如 !、$、#、%、@、^、&)
    3、避免使用已公开的弱口令,如:abcd.1234 、admin@123等

    *******VICTORY LOVES PREPARATION*******
  • 相关阅读:
    【Golang】关于Go语言中如何控制goroutine的数量
    【Golang】 关于Go语言垃圾回收的历史进程
    Apache Hudi vs Delta Lake:透明TPCDS Lakehouse性能基准
    Apache Hudi数据跳过技术加速查询高达50倍
    使用 Apache Hudi 实现 SCD2(渐变维度)
    详解 Apache Hudi Schema Evolution(模式演进)
    基于 Apache Hudi + Presto + AWS S3 构建开放Lakehouse
    构建端到端的开源现代数据平台
    深入理解Apache Hudi异步索引机制
    基于Apache Hudi构建分析型数据湖
  • 原文地址:https://www.cnblogs.com/rusking/p/15714842.html
Copyright © 2020-2023  润新知