Linux安全基线检查及加固
S3a Lv3

Linux安全基线检查及加固

系统加固检查点

  • 账号安全
    • 空口令用户
    • umask值的重要性
    • su的限制
    • 密码最长有效期
    • 密码复杂性
  • 系统安全基线
    • 检查grub密码
    • 修改内核网络参数
    • 禁止Control-Alt-Delete键盘关闭命令
    • 修改命令历史记录条目数以及时间标签
    • 设置登录超时时间

空口令用户

image

利用cat /etc/shadow指令,上图kali后的为用户的密码,查看用户是否存在空口令,但是,这种方法容易看漏相关信息

  1. 空口令和隐藏管理员检查
1
2
3
4
$1 用户名  
$2 密码占用符
$3 UID
$4

image

使用命令awk -F: '($2==""){print $1}' /etc/shadow查看空口令账号 $1为第一个字段即用户名

image

使用命令awk -F: '($3==0){print $1}' /etc/passwd查看UID为0的账号

image

umask值的重要性

image

umask作用:主要是针对新创建的文件的权限管理,比如你umask设置的是022 那你创建一个新文件默认的权限就是644 (644的二进制 110 010 010)属主读写 同组读 其他用户读

rwx => r=read(读取) w=write(写入) x(exe)(执行)

image

限制用户使用su

使用命令vim /etc/pasm.d/su 修改配置文件,去除第六行的注释符号,表示在wheel组中的用户才能够成功使用su命令,其他用户无法使用。如果需要其他组支持该功能可以添加内容。

image

例如:只允许test组用户su到root

auth required pam_wheel.so group=test

密码最长有效期

在文件/etc/login.defs 中进行设置如下参数

1
2
3
4
PASS_MAX_DAYS   180  #密码最长过期天数
PASS_MIN_DAYS 30 #密码最小过期天数
PASS_MIN_LEN 12 #密码最小长度
PASS_WARN_AGE 20 #密码过期警告天数

image

密码复杂性

  • 文件编辑
    • /etc/pam.d/system-auth
    • Debian系列系统:/etc/pam.d/common-password

密码历史或拒绝重复使用密码是什么?

这个参数控制密码历史。它记录曾经使用过的密码(禁止使用的曾用密码的个数)。当用户设置新的密码时,它会检查密码历史,如果他们要设置的密码是一个曾经使用过的旧密码,将会发出警告提示。这个参数可以在 /etc/pam.d/system-auth 文件中设置。我设置密码历史为 5。

1
2
# vi /etc/pam.d/system-auth
password sufficient pam_unix.so md5 shadow nullok try_first_pass use_authtok remember=5

密码最小长度是什么?

这个参数表示密码的最小长度。当用户设置新密码时,系统会检查这个参数,如果新设的密码长度小于这个参数设置的值,会收到警告提示。这个参数可以在 /etc/pam.d/system-auth 文件中设置。我设置最小密码长度为 12。

1
2
# vi /etc/pam.d/system-auth
password requisite pam_cracklib.so try_first_pass retry=3 minlen=12

try_first_pass retry=3:在密码设置交互界面,用户有 3 次机会重设密码。

设置最少的大写字母个数?

这个参数表示密码中至少需要的大写字母的个数。这些是密码强度参数,可以让密码更健壮。当用户设置新密码时,系统会检查这个参数,如果密码中没有大写字母,会收到警告提示。这个参数可以在 /etc/pam.d/system-auth 文件中设置。我设置密码(中的大写字母)的最小长度为 1 个字母。

1
2
# vi /etc/pam.d/system-auth
password requisite pam_cracklib.so try_first_pass retry=3 minlen=12 ucredit=-1

设置最少的小写字母个数?

这个参数表示密码中至少需要的小写字母的个数。这些是密码强度参数,可以让密码更健壮。当用户设置新密码时,系统会检查这个参数,如果密码中没有小写字母,会收到警告提示。这个参数可以在 /etc/pam.d/system-auth 文件中设置。我设置为 1 个字母。

1
2
# vi /etc/pam.d/system-auth
password requisite pam_cracklib.so try_first_pass retry=3 minlen=12 lcredit=-1

设置密码中最少的数字个数?

这个参数表示密码中至少需要的数字的个数。这些是密码强度参数,可以让密码更健壮。当用户设置新密码时,系统会检查这个参数,如果密码中没有数字,会收到警告提示。这个参数可以在 /etc/pam.d/system-auth 文件中设置。我设置为 1 个数字。

1
2
# vi /etc/pam.d/system-auth
password requisite pam_cracklib.so try_first_pass retry=3 minlen=12 dcredit=-1

设置密码中最少的其他字符(符号)个数?

这个参数表示密码中至少需要的特殊符号的个数。这些是密码强度参数,可以让密码更健壮。当用户设置新密码时,系统会检查这个参数,如果密码中没有特殊符号,会收到警告提示。这个参数可以在 /etc/pam.d/system-auth 文件中设置。我设置为 1 个字符。

1
2
# vi /etc/pam.d/system-auth
password requisite pam_cracklib.so try_first_pass retry=3 minlen=12 ocredit=-1

设置账号锁定?

这个参数控制用户连续登录失败的最大次数。当达到设定的连续失败登录次数阈值时,锁定账号。这个参数可以在 /etc/pam.d/system-auth 文件中设置。

1
2
3
# vi /etc/pam.d/system-auth
auth required pam_tally2.so onerr=fail audit silent deny=5
account required pam_tally2.so

设定账号解锁时间?

这个参数表示用户解锁时间。如果一个用户账号在连续认证失败后被锁定了,当过了设定的解锁时间后,才会解锁。设置被锁定中的账号的解锁时间(900 秒 = 15分钟)。这个参数可以在 /etc/pam.d/system-auth 文件中设置。

1
2
3
# vi /etc/pam.d/system-auth
auth required pam_tally2.so onerr=fail audit silent deny=5 unlock_time=900
account required pam_tally2.so

来源:https://linux.cn/

检查grub密码

弱口令防范,暴力破解防御

  • 设置连续输错3次密码,账号锁定3分钟(kali 没有这两个文件)

    • 文件编辑

      • /etc/pam.d/system-auth
      • /etc/pam.d/password-auth
    • 配置内容,在源文件第一行下配置如下两行

    • auth required pam_tally2.so deny=3 unlock time=30 enven_deny_root root_unlock_time=30

    • account required pam_tally2.so

 Comments
Comment plugin failed to load
Loading comment plugin