kavin

如何做好Linux系统安全加固之账号安全?11个安全小技巧分享

kavin 安全防护 2022-12-12 633浏览 0

由于Linux操作系统是一个开放源代码的免费操作系统,受到越来越多用户的欢迎。对于在线运行的业务,用户最关心的就是系统的安全性,系统运行的安全性直接影响着业务的安全。系统安全设置是一个多维度问题,下面小编就从linux的账号安全的维度和大家分享一些常用的Linux安全加固小技巧。

如何做好Linux系统安全加固之账号安全?11个安全小技巧分享

1. 设置密码策略

[root@lkjtest~]#cat/etc/login.defs|grep-v"#"|grepPASS
PASS_MAX_DAYS180
PASS_MIN_DAYS0
PASS_MIN_LEN5
PASS_WARN_AGE7

如何做好Linux系统安全加固之账号安全?11个安全小技巧分享

参数说明:

  • PASSMAXDAYS:设置密码的过期日期
  • PASSMINDAYS:密码最小更改日期
  • PASSMINLEN :密码的最小长度
  • PASSWARNAGE :密码到期提前告警的天数

2. 限制用户远程登陆

vim/etc/pam.d/sshd
#%PAM-1.0
authrequiredpam_tally2.sodeny=3unlock_time=300even_deny_rootroot_unlock_time=10

如何做好Linux系统安全加固之账号安全?11个安全小技巧分享

注意点:添加的内容一定要添加在前面,即“#%PAM-1.0” 之后,如果写在后面,虽然用户被锁定,但只要用户名和密码正确,依然是可以成功登陆进去的。

参数说明:

  • evendenyroot : root用户也限制。
  • deny :设置普通用户和root用户连续错误登陆的***次数,超过***次数,则锁定该用户.
  • unlock_time :普通用户锁定后,多长时间后解锁,单位是秒。
  • rootunlocktime :root用户锁定后,多少时间后解锁,单位是秒。

3. 限制用户从tty登陆

vim/etc/pam.d/login
#%PAM-1.0
authrequiredpam_tally2.sodeny=3lock_time=300even_deny_rootroot_unlock_time=10

如何做好Linux系统安全加固之账号安全?11个安全小技巧分享

注意点:添加的内容一定要添加在前面,即“#%PAM-1.0” 之后,如果写在后面,虽然用户被锁定,但只要用户名和密码正确,依然是可以成功登陆进去的。

参数说明:

  • evendenyroot : root用户也限制。
  • deny :设置普通用户和root用户连续错误登陆的***次数,超过***次数,则锁定该用户.
  • unlock_time :普通用户锁定后,多长时间后解锁,单位是秒。
  • rootunlocktime :root用户锁定后,多少时间后解锁,单位是秒。

4. 查看用户登陆失败次数

[root@localhost]#pam_tally2--userroot
LoginFailuresLatestfailureFrom
root0

如何做好Linux系统安全加固之账号安全?11个安全小技巧分享

5. 解锁指定用户

[root@localhost~]#pam_tally2-r-uroot
LoginFailuresLatestfailureFrom
root0

6. 设置口令复杂度

编辑/etc/pam.d/system-auth
找到pam_cracklib,在后加一些参数具体如下:
[root@lkjtest~]#cat/etc/pam.d/system-auth|grepcracklib
passwordrequisitepam_cracklib.soretry=5difok=3minlen=10ucredit=-1lcredit=-1dcredit=-1ocredit=-1

如何做好Linux系统安全加固之账号安全?11个安全小技巧分享

参数说明:

  • retry=5:表示允许输入5次
  • difok=3:新密码与旧密码不同的个数为3
  • minlen=10:密码长度至少10位
  • ucredit=-1 :至少一位大写字母
  • lcredit=-1:至少一位小写字母
  • dcredit=-1:至少一位数字
  • ocredit=-1:其他字符至少一位

7. 限制su的权限

如果你不想任何人能够用su作为root,可以通过以下限制:

编辑/etc/pam.d/su文件,增加如下两行:
authsufficientpam_rootok.sodebug
authrequiredpam_wheel.sogroup=admin

只有admin组的用户才能su

如何做好Linux系统安全加固之账号安全?11个安全小技巧分享

8. 设置用户登陆的时间段

有时为了系统登陆的安全,我们需要限制用户只能在特定的时间段才允许登陆主机,可以通过以下设置。

#vi/etc/pam.d/sshd
添加如下内容:
accountrequiredpam_time.so
#vi/etc/security/time.conf
添加如下内容:
sshd;*;admin;!Th2100-2300

如何做好Linux系统安全加固之账号安全?11个安全小技巧分享

如何做好Linux系统安全加固之账号安全?11个安全小技巧分享

time.conf参数说明:

  • sshd:表示仅对ssh程序限制
  • *:表示任何终端,也可以指定终端如tty1,tty2等
  • admin:表示仅对admin用户限制
  • !Tu2200-2230 :允许登录时间是周四2100-2300之外

9. 特别帐号的处理

如果不启动用sendmail,删除如下用户

[root@localhost]#userdeladm
[root@localhost]#userdellp
[root@localhost]#userdelsync
[root@localhost]#userdelshutdown
[root@localhost]#userdelhalt
[root@localhost]#userdelmail

如果不用X windows服务器.可有删除

[root@localhost]#userdelnews
[root@localhost]#userdeluucp
[root@localhost]#userdeloperator
[root@localhost]#userdelgames

如果不允许匿名FTP帐号登陆,可删除

[root@localhost]#userdelgopher
[root@localhost]#userdelftp

10.设置注销用户的时间及历史命令数

[root@tp~]#vi/etc/profile
...
HOSTNAME=`/bin/hostname`
HISTSIZE=1000//这里1000代表用户操作命令的历史记录,应尽量小一些,设置成0也可以。
tmout=600//表示如果系统用户在600秒(10分钟)内不做任何操作,将自动注销这个用户.

如何做好Linux系统安全加固之账号安全?11个安全小技巧分享

11. 防暴力破解

针对用户的防暴力破解,通常采用以下方法

  • hostDenyHosts :此软件的具体使用方法,可以参考官方文档。
  • 编写脚本检查/var/log/secure访问日志文件:通过统计日志文件中的登陆失败的ip,并将达到阈值的ip添加到/etc/hosts.deny来拒绝某个ip的再次访问。

继续浏览有关 Linux 的文章
发表评论