热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CentOS7配置密码安全策略

CentOS7常见的密

一、密码有效期策略

1、策略需求

密码最大可用天数为90天,修改密码后7天内不得再修改,密码过期前10天提醒用户修改密码

2、操作命令

  • 对于新用户(配置后创建的用户)

    cp etc/login.defs etc/login.defs.bak`date +%Y%m%d`
    sed -i "s/^PASS_MAX_DAYS.*/PASS_MAX_DAYS\t90/g" etc/login.defs
    sed -i "s/^PASS_MIN_DAYS.*/PASS_MIN_DAYS\t7/g" etc/login.defs
    sed -i "s/^PASS_WARN_AGE.*/PASS_WARN_AGE\t10/g" etc/login.defs
    grep ^PASS_ /etc/login.defs

    • 对于现有用户
    修改:passwd -x 90 -n 7 -w 10 username 或 chage -M 90 -m 7 -W 10 username
    查看:passwd -S username 或 chage -l username
    更多内容请参考:man passwd 、man chage、man login.defs


    二、密码复杂度

    1、策略需求

    密码最小长度至少为12位,其中至少1位小写字母、至少1位大写字母、至少1位数字、至少1位特殊符号,不能使用过去5次使用过的旧密码。

    2、操作命令

    密码复杂度的设置通过修改/etc/pam.d/password-auth和/etc/pam.d/system-auth文件实现,两个文件初始配置是一样的。

      touch /etc/security/opasswd
      chown root:root /etc/security/opasswd
      chmod 600 /etc/security/opasswd
      cp /etc/pam.d/system-auth /etc/pam.d/system-auth.bak`date +%Y%m%d`
      sed -i '/password sufficient pam_unix.so/s/$/ remember=5/' /etc/pam.d/system-auth
      sed -i '/pam_pwquality.so/s/$/ dcredit=-1 ucredit=-1 ocredit=-1 lcredit=-1 minlen=12/' /etc/pam.d/system-auth
      cat /etc/pam.d/system-auth
      cp /etc/pam.d/password-auth /etc/pam.d/password-auth.bak`date +%Y%m%d`
      sed -i '/password sufficient pam_unix.so/s/$/ remember=5/' /etc/pam.d/password-auth
      sed -i '/pam_pwquality.so/s/$/ dcredit=-1 ucredit=-1 ocredit=-1 lcredit=-1 minlen=12/' /etc/pam.d/password-auth
      cat /etc/pam.d/password-auth

      配置前:

      配置后:

      更多内容请参考:man pam_pwquality、man pam_unix


      三、密码验证失败锁定策略

      1、策略需求

      当输错密码5次后,锁定用户,300秒后自动解锁。

      2、操作命令

      密码验证失败锁定策略也是通过修改/etc/pam.d/password-auth和/etc/pam.d/system-auth文件实现。

        sed -i '4aauth required pam_tally2.so deny=5 Onerr=fail unlock_time=300' /etc/pam.d/system-auth
        sed -i '4aauth required pam_tally2.so deny=5 Onerr=fail unlock_time=300' /etc/pam.d/password-auth
        cat /etc/pam.d/system-auth /etc/pam.d/password-auth

        查询锁定情况:pam_tally2 或 pam_tally2 -u username
        解除锁定:pam_tally2 -r -u username
        配置前:

        配置后:

        更多内容请参考:man pam_tally2




        推荐阅读
        • 安装oracle软件1创建用户组、用户和目录bjdb节点下:[rootnode1]#groupadd-g200oinstall[rootnode1]#groupad ... [详细]
        • Jboss的EJB部署描述符standardjaws.xml配置步骤详解
          本文详细介绍了Jboss的EJB部署描述符standardjaws.xml的配置步骤,包括映射CMP实体EJB、数据源连接池的获取以及数据库配置等内容。 ... [详细]
        • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
        • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
          本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
        • Spring源码解密之默认标签的解析方式分析
          本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
        • Linux重启网络命令实例及关机和重启示例教程
          本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
        • Webpack5内置处理图片资源的配置方法
          本文介绍了在Webpack5中处理图片资源的配置方法。在Webpack4中,我们需要使用file-loader和url-loader来处理图片资源,但是在Webpack5中,这两个Loader的功能已经被内置到Webpack中,我们只需要简单配置即可实现图片资源的处理。本文还介绍了一些常用的配置方法,如匹配不同类型的图片文件、设置输出路径等。通过本文的学习,读者可以快速掌握Webpack5处理图片资源的方法。 ... [详细]
        • Java序列化对象传给PHP的方法及原理解析
          本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
        • 本文总结了在开发中使用gulp时的一些技巧,包括如何使用gulp.dest自动创建目录、如何使用gulp.src复制具名路径的文件以及保留文件夹路径的方法等。同时介绍了使用base选项和通配符来保留文件夹路径的技巧,并提到了解决带文件夹的复制问题的方法,即使用gulp-flatten插件。 ... [详细]
        • RouterOS 5.16软路由安装图解教程
          本文介绍了如何安装RouterOS 5.16软路由系统,包括系统要求、安装步骤和登录方式。同时提供了详细的图解教程,方便读者进行操作。 ... [详细]
        • 如何用JNI技术调用Java接口以及提高Java性能的详解
          本文介绍了如何使用JNI技术调用Java接口,并详细解析了如何通过JNI技术提高Java的性能。同时还讨论了JNI调用Java的private方法、Java开发中使用JNI技术的情况以及使用Java的JNI技术调用C++时的运行效率问题。文章还介绍了JNIEnv类型的使用方法,包括创建Java对象、调用Java对象的方法、获取Java对象的属性等操作。 ... [详细]
        • 本文介绍了Sencha Touch的学习使用心得,主要包括搭建项目框架的过程。作者强调了使用MVC模式的重要性,并提供了一个干净的引用示例。文章还介绍了Index.html页面的作用,以及如何通过链接样式表来改变全局风格。 ... [详细]
        • 全面介绍Windows内存管理机制及C++内存分配实例(四):内存映射文件
          本文旨在全面介绍Windows内存管理机制及C++内存分配实例中的内存映射文件。通过对内存映射文件的使用场合和与虚拟内存的区别进行解析,帮助读者更好地理解操作系统的内存管理机制。同时,本文还提供了相关章节的链接,方便读者深入学习Windows内存管理及C++内存分配实例的其他内容。 ... [详细]
        • 本文介绍了Windows Vista操作系统中的用户账户保护功能,该功能是为了增强系统的安全性而设计的。通过对Vista测试版的体验,可以看到系统在安全性方面的进步。该功能的引入,为用户的账户安全提供了更好的保障。 ... [详细]
        • Apache Shiro 身份验证绕过漏洞 (CVE202011989) 详细解析及防范措施
          本文详细解析了Apache Shiro 身份验证绕过漏洞 (CVE202011989) 的原理和影响,并提供了相应的防范措施。Apache Shiro 是一个强大且易用的Java安全框架,常用于执行身份验证、授权、密码和会话管理。在Apache Shiro 1.5.3之前的版本中,与Spring控制器一起使用时,存在特制请求可能导致身份验证绕过的漏洞。本文还介绍了该漏洞的具体细节,并给出了防范该漏洞的建议措施。 ... [详细]
        author-avatar
        诚实的愛是最棒的_977_415_874
        这个家伙很懒,什么也没留下!
        PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
        Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有