linux系统安全优化策略

1、口令复杂度检查

重新启用某个旧密码,要确保此密码在继上次使用后已被修改过几次。此策略是管理员能够通过确保旧密码不被连续重新使用来增强安全性

参考配置操作,在/etc/pam.d/system-auth配置如下三种方案中的一种

1.1 引用pam_passwdqc.so

添加配置

password required pam_passwdqc.so min=disabled,disabled,12,disabled,8 enforce=everyone

规则解释如下:
1)只包含一种字符的密码,拒绝(大小写,数字,特殊字符分别为4种字符)
2)只包含两种字符的密码,拒绝
3)如果密码中被识别出了常用的单词,那么最小长度就必须为12位。常用单词的最小识别长度为3.(由passphrase=3制定)
4)只包含三种字符的密码,拒绝
5) 包含四种字符的密码,最小长度为8位
6) 这个策略对所有用户都生效。(enforce=everyone )

1.2 引用pam_cracklib.so

添加配置

password requisite pam_cracklib.so try_first_pass retry=3 dcredit=-1 lcredit=-1 ucredit=-1 ocredit=-1 minlen=8

规则解释如下:

1)retry=N,在返回错误之前最多提示用户 N 次,默认值为 1。

2)dcredit=N,(N >= 0) 这是新密码中包含数字的最大信用。如果您的数字少于或 N 位,则每个数字都将计为 +1 以满足当前的 minlen 值。dcredit 的默认值为 1,这是minlen 小于 10 的推荐值。(N < 0)这是新密码必须满足的最小位数。

3)lcredit=N,(N >= 0) 这是新密码中包含小写字母的最大信用。如果您的小写字母少于或 N 个,则每个字母将计为 +1,以符合当前的 minlen 值。lcredit 的默认值为 1,这是 minlen 小于 10 的推荐值。(N < 0)这是新密码必须满足的小写字母的最小数量。

4)ucredit=N,(N >= 0) 这是新密码中包含大写字母的最大信用。如果您的大写字母少于或 N 个,则每个字母将在满足当前 minlen 值时计为 +1。ucredit 的默认值为 1,这是 minlen 小于 10 的推荐值。(N < 0)这是新密码必须满足的最小大写字母数。

5)ocredit=N,(N >= 0) 这是新密码中包含其他字符的最大信用。如果您有少于或 N 个其他字符,则每个字符将在满足当前 minlen 值时计为 +1。ocredit 的默认值为 1,这是 minlen 小于 10 的推荐值。(N < 0)这是新密码必须满足的最小其他字符数。

6)minlen=N,新密码可接受的最小大小(如果未禁用默认值,则加一)。除了新密码中的字符数之外,还为每种不同
类型的字符(其他、大写、小写和数字)赋予信用(长度为 +1)。此参数的默认值为 9,这对于所有相同类型字符的旧式UNIX 密码来说是不错的,但可能太低而无法利用 md5 系统的附加安全性。
请注意,Cracklib 本身有一对长度限制,一个“太短”的限制为 4,它被硬编码在和一个定义的限制 (6) 将在不参考 minlen 的情况下进行检查。如果您想允许短至 5 个字符的密码,则不应使用此模块。

1.3 引用pam_pwquality.so

添加配置

password requisite pam_pwquality.so try_first_pass retry=3 dcredit=-1 lcredit=-1 ucredit=-1 ocredit=-1 minlen=8

规则解释参考1.2

2、系统日志访问控制

ls -l查看下列日志文件权限/var/log/messages 、/var/log/secure 、 /var/log/maillog 、

/var/log/cron、 /var/log/spooler、/var/log/boot.log

如果发现上述文件权限不是小于等于600,参考配置操作如下

chmod 600 /var/log/messages
chmod 600 /var/log/secure
chmod 600 /var/log/maillog
chmod 600 /var/log/cron
chmod 600 /var/log/spooler
chmod 600 /var/log/boot.log

3、文件与目录缺省权限控制

该设置确定新创建的目录和文件的默认权限,vi /etc/profile 在末尾增加umask 027或者umask 022

umask值含义:当用户新创建文件或目录时,该文件或目录具有一个缺省权限。该缺省权限由umask值来指定。umask值代表的是权限的“补码”,即用缺省最大权限值减去umask值得到实际权限值。文件的缺省最大权限为可读可写,目录的缺省最大权限为可读可写可执行。即一个文件的实际缺省权限为666减去umask值。目录的实际缺省权限为777减去umask值

修改前

修改后

4、使用PAM 禁止任何人su 为root

默认情况下,任何用户都允许使用su命令,从而有机会反复尝试其他用户(如root)的登录密码,带来安全风险。为了增强sum命令的使用控制,可以借助PAM认证模块,只允许极个别用户使用su命令进行切换。

参考操作,把需要切换root用户添加到wheel组,以使它可以使用su命令成为root用户。添加方法为:

# usermod -a -G wheel username

编辑su文件(vi /etc/pam.d/su),在开头添加下面两行:

auth sufficient pam_rootok.so 
auth required pam_wheel.so group=wheel 

这表明只有wheel组的成员可以使用su命令成为root用户。

5、用户权限最小授权

Linux的用户在登录(login)之后,就带有一个用户身份(user ID, UID)和一个组身份(group ID, GID)。在Linux文件管理背景知识中,我们又看到,每个文件又有九位的权限说明,用来指明该文件允许哪些用户执行哪些操作(读、写或者执行)。

/etc/passwd 文件,是系统用户配置文件,存储了系统中所有用户的基本信息。必须所有用户都可读,root 用户可写 –rw-r--r--;

/etc/shadow 文件,用于存储 Linux 系统中用户的密码信息,又称为“影子文件”。只有root 可读 –r--------;

/ect/group 文件是用户组配置文件,即用户组的所有信息都存放在此文件中。须所有用户都可读,root 用户可写 –rw-r--r--;

操作命令如下:

chmod 644 /etc/passwd
chmod 600 /etc/shadow
chmod 644 /etc/group

如果是有写权限,就需移去组及其它用户对/etc 的写权限(特殊情况除外),执行命令

#chmod -R go-w /etc

6、限制root用户远程登录ssh

linux中root用户是超级管理员,可以针对root用户暴力破解密码,这样很不安全,工作中我们一般禁止root用户直接远程登陆,开设一个或多个普通用户,只允许登陆普通用户,如果有需要用root用户,可以用su命令来切换root或者sudo命令来拥有root权限执行命令。

修改ssh配置文件 vi /etc/ssh/sshd_config

将PermitRootLogin yes 改为PermitRootLogin no

重启sshd 服务

systemctl restart sshd

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值