zoukankan      html  css  js  c++  java
  • centos限制远程尝试密码次数

    CentOS中有一个pam_tally2.so的PAM模块,来限定用户的登录失败次数,如果次数达到设置的阈值,则锁定用户。

    编译PAM的配置文件

    # vim /etc/pam.d/login

     1 #%PAM-1.0 
     2 auth      required  pam_tally2.so   deny=3  lock_time=300 even_deny_root root_unlock_time=10 
     3 auth [user_unknown=ignore success=ok ignoreignore=ignore default=bad] pam_securetty.so 
     4 auth       include      system-auth 
     5  
     6 account    required     pam_nologin.so 
     7 account    include      system-auth 
     8 password   include      system-auth 
     9 # pam_selinux.so close should be the first session rule 
    10 session    required     pam_selinux.so close 
    11 session    optional     pam_keyinit.so force revoke 
    12 session    required     pam_loginuid.so 
    13 session    include      system-auth 
    14 session    optional     pam_console.so 
    15 # pam_selinux.so open should only be followed by sessions to be executed in the user context 
    16 session    required     pam_selinux.so open 

    各参数解释

    even_deny_root    也限制root用户; 
     
    deny           设置普通用户和root用户连续错误登陆的最大次数,超过最大次数,则锁定该用户 
     
    unlock_time        设定普通用户锁定后,多少时间后解锁,单位是秒; 
     
    root_unlock_time      设定root用户锁定后,多少时间后解锁,单位是秒; 
     
    此处使用的是 pam_tally2 模块,如果不支持 pam_tally2 可以使用 pam_tally 模块。另外,不同的pam版本,设置可能有所不同,具体使用方法,可以参照相关模块的使用规则。

    在#%PAM-1.0的下面,即第二行,添加内容,一定要写在前面,如果写在后面,虽然用户被锁定,但是只要用户输入正确的密码,还是可以登录的!

    最终效果如下图

    这个只是限制了用户从tty登录,而没有限制远程登录,如果想限制远程登录,需要改SSHD文件

    # vim /etc/pam.d/sshd

     1 #%PAM-1.0 
     2 auth          required        pam_tally2.so        deny=3  unlock_time=300 even_deny_root root_unlock_time=10 
     3  
     4 auth       include      system-auth 
     5 account    required     pam_nologin.so 
     6 account    include      system-auth 
     7 password   include      system-auth 
     8 session    optional     pam_keyinit.so force revoke 
     9 session    include      system-auth 
    10 session    required     pam_loginuid.so 

    同样是增加在第2行!

    查看用户登录失败的次数

    [root@node100 pam.d]# pam_tally2 --user redhat 
    Login           Failures Latest failure     From 
    redhat              7    07/16/12 15:18:22  tty1 

    解锁指定用户

    [root@node100 pam.d]# pam_tally2 -r -u redhat 
    Login           Failures Latest failure     From 
    redhat              7    07/16/12 15:18:22  tty1 

    这个远程ssh的时候,没有提示,我用的是Xshell,不知道其它终端有没提示,只要超过设定的值,输入正确的密码也是登陆不了的!

  • 相关阅读:
    MVC ORM 架构
    Kubernetes 第八章 Pod 控制器
    Kubernetes 第七章 Configure Liveness and Readiness Probes
    Kubernetes 第六章 pod 资源对象
    Kubernetes 第五章 YAML
    Kubernetes 核心组件
    Kubernetes 架构原理
    Kubernetes 第四章 kubectl
    Kubernetes 第三章 kubeadm
    yum 配置及yum 源配置
  • 原文地址:https://www.cnblogs.com/zhming26/p/6186402.html
Copyright © 2011-2022 走看看