天天看點

等保測評之伺服器未配置登入失敗鎖定政策及登入連接配接逾時自動退出政策

等保測評之伺服器未配置登入失敗鎖定政策及登入連接配接逾時自動退出政策

真是一事未完又來一事哈,昨天收到的等保測評出現了好多的問題,這裡将部分問題做一下記錄

看看問題

問題如下

等保測評之伺服器未配置登入失敗鎖定政策及登入連接配接逾時自動退出政策

測試伺服器

主要是測試伺服器是不是存在這種問題,經過測試問題存在,測試過程這裡省略了

問題描述

惡意人員可通過暴力破解的方式擷取賬戶密碼。且裝置易被非授權人員惡意操作,存在非授權通路的風險。

問題解決

  • 一下檔案配置完成後不需要重新開機伺服器的哈,直接生效,還有就是在操作時,建議保持一個ssh遠端連接配接到伺服器,友善出現錯誤及時的復原操作
備份主要涉及的兩個重要檔案
[[email protected] ~]# cp /etc/pam.d/sshd /etc/pam.d/sshd.bak    #這個是ssh的配置檔案
[[email protected] ~]# cp /etc/pam.d/login /etc/pam.d/login.bak
[[email protected] ~]# ll /etc/pam.d/sshd.bak  /etc/pam.d/login.bak   ##這個檔案裡面記錄了所有關于登入的配置檔案記錄
-rw-r--r--. 1 root root 796 10月 13 10:01 /etc/pam.d/login.bak
-rw-r--r--. 1 root root 904 10月 13 10:00 /etc/pam.d/sshd.bak
           

檢查是否存在的重要pam子產品.so檔案

[[email protected] ~]# find /* -name "*pam_tally2.so*"
/usr/lib64/security/pam_tally2.so
           

配置登入失敗處理功能政策(伺服器終端)

[[email protected] ~]# cp /etc/pam.d/system-auth /etc/pam.d/system-auth.bak
[[email protected] ~]# vim /etc/pam.d/system-auth
[[email protected] ~]# cat /etc/pam.d/system-auth
#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth        required      pam_env.so
auth        required      pam_faildelay.so delay=2000000
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 1000 quiet_success
auth        required      pam_deny.so
auth required pam_tally2.so  onerr=fail  deny=3  unlock_time=40 even_deny_root root_unlock_time=30   ###需要添加的這一行

account     required      pam_unix.so
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 1000 quiet
account     required      pam_permit.so

password    requisite     pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=
password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password    required      pam_deny.so

session     optional      pam_keyinit.so revoke
session     required      pam_limits.so
-session     optional      pam_systemd.so
session     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session     required      pam_unix.so

           
  • deny 指定最大幾次認證錯誤,如果超出此錯誤,将執行後面的政策。如鎖定N秒,如果後面沒有其他政策指定時,預設永遠鎖定,除非手動解鎖。
  • lock_time 鎖定多長時間,按秒為機關;
  • unlock_time 指定認證被鎖後,多長時間自動解鎖使用者;
  • magic_root 如果使用者uid=0(即root賬戶或相當于root的帳戶)在帳戶認證時調用該子產品發現失敗時,不計入統計;
  • no_lock_time 不使用.fail_locktime項在/var/log/faillog 中記錄使用者 ---按英文直譯不太明白,個人了解即不進行使用者鎖定;
  • even_deny_root root使用者在認證出錯時,一樣被鎖定(該功能慎用,搞不好就要單使用者時解鎖了)
  • root_unlock_time root使用者在失敗時,鎖定多長時間。該選項一般是配合even_deny_root 一起使用的。

終端測試效果如下:

等保測評之伺服器未配置登入失敗鎖定政策及登入連接配接逾時自動退出政策

檢視安全日志驗證:

[[email protected] ~]# tail -100 /var/log/secure | grep "max"
Oct 13 10:19:17 localhost sshd[2242]: PAM service(sshd) ignoring max retries; 5 > 3
           
等保測評之伺服器未配置登入失敗鎖定政策及登入連接配接逾時自動退出政策

配置登入失敗處理功能政策(ssh遠端連接配接登入)

[[email protected] ~]# vim /etc/pam.d/sshd
[[email protected] ~]# cat  /etc/pam.d/sshd
#%PAM-1.0
auth	   required	pam_sepermit.so
auth       substack     password-auth
auth       include      postlogin
auth required pam_tally2.so  onerr=fail  deny=3  unlock_time=40 even_deny_root root_unlock_time=30   ##添加部分
# Used with polkit to reauthorize users in remote sessions
-auth      optional     pam_reauthorize.so prepare
account    required     pam_nologin.so
account    include      password-auth
password   include      password-auth
# pam_selinux.so close should be the first session rule
session    required     pam_selinux.so close
session    required     pam_loginuid.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session    required     pam_selinux.so open env_params
session    required     pam_namespace.so
session    optional     pam_keyinit.so force revoke
session    include      password-auth
session    include      postlogin
# Used with polkit to reauthorize users in remote sessions
-session   optional     pam_reauthorize.so prepare
           

ssh遠端測試效果:

經過測試連續登入3此輸入錯誤的密碼後,第四次或之後的40秒内,那怕輸入正确的密碼,也不會正常的登入

檢視安全日志驗證:

等保測評之伺服器未配置登入失敗鎖定政策及登入連接配接逾時自動退出政策

其他的輔助指令

[[email protected] ~]# pam_tally2 --user root       ###其中root為使用者,這個是檢視目前root使用者登入失敗了多少次
Login           Failures Latest failure     From
root                4    10/13/21 10:43:06  192.168.211.1
[[email protected] ~]# pam_tally2 -r -u  root    ##解鎖root使用者
Login           Failures Latest failure     From
root                8    10/13/21 10:44:54  tty1
[[email protected] ~]# pam_tally2 --user root   #再次檢視root使用者的餓登入失敗次數,此時為0
Login           Failures Latest failure     From
root                0