admin 管理员组

文章数量: 887021

                                                    已申请专利,仿冒必究 作者:Xiwu Liu


系统安全加固



文章目录

  • 系统安全加固
    • @[toc]
      • 3.1系统登录策略加固
        • 1.密码策略(Log,Web,Data)
          • Log
          • Web
          • Data
        • 2.登录策略(Log,Web,Data)
          • Log
          • Web
          • Date
        • 3.用户安全管理(Web)
      • 3.2 数据库安全加固(Data)
      • 3.3 IIS信息服务安全加固(Web)
      • 3.4 网站审核与日志信息(Web,Log)
          • Log
          • Web
      • 3.5 常见服务加固VSFTP/SSH(Data)
      • 3.6 本地防火墙安全策略(Web,Log)

3.1系统登录策略加固

1.密码策略(Log,Web,Data)

a. 设置最短密码长度为8,密码的使用期限7-30天

b. 密码策略必须同时满足大小写字母、数字、特殊字符。


Log
#CentOS7/RHEL7 开始使用pam_pwquality模块进行密码复杂度策略的控制管理。pam_pwquality替换了原来Centos6/RHEL6中的pam_cracklib模块,并向后兼容。

password requisite pam_cracklib.so retry=3 minlen=10 difok=3 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1
retry=3  //重试次数

minlen=10  //密码最小长度

difok=3  //密码是否和以前相同 

ucredit=-1  //大写字母

lcredit=-2  //小写字母

dcredit=-1  //数字

ocredit=-1   //标点符号
安装PAM的cracklib模块,cracklib能提供额外的密码检查能力

sudo apt-get install libpam-cracklib 
设置最短密码长度和复杂度 

sudo vim /etc/pam.d/common-password 

sudo vim /etc/login.defs


Web

搜索本地安全策略

设置

满足的要求


Data

以centos为MySQL(可以用Ubantu)

Centos 7安装Mysql详细步骤

Variable_name                                 Value 

validate_password_check_user_name             OFF          
validate_password_dictionary_file                        //密码文件保存路径
validate_password_length                      8          //密码长度,默认为8
validate_password_mixed_case_count            1          //密码中英文字母的个数,默认为1
validate_password_number_count                1          //密码中数字的个数,默认为1
validate_password_policy                    MEDIUM   //密码强度(LOW、MEDIUM、STRONG)默认为MEDIUM
validate_password_special_char_count         1          //密码中特殊符号的个数,默认为1
default_password_lifetime = 30               30         // mysql用户的密码过期时间为30天

SHOW VARIABLES LIKE ‘validate_password%’; //查询密码策略

关于 mysql 密码策略相关参数;

1)、validate_password_length  //固定密码的总长度;

2)、validate_password_dictionary_file  //指定密码验证的文件路径;

3)、validate_password_mixed_case_count  //整个密码中至少要包含大/小写字母的总个数;

4)、validate_password_number_count  //整个密码中至少要包含阿拉伯数字的个数;

5)、validate_password_policy  //指定密码的强度验证等级,默认为 MEDIUM;

关于 validate_password_policy  //的取值:

0/LOW:只验证长度;

1/MEDIUM:验证长度、数字、大小写、特殊字符;

2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;

6)、validate_password_special_char_count  //整个密码中至少要包含特殊字符的个数;
mysql> SET GLOBAL default_password_lifetime=30;  //修改语句



2.登录策略(Log,Web,Data)

a.在用户登录系统时,应该有“For authorized users only”提示信息;

b.一分钟内仅允许3次登录失败的尝试,超过3次,登录帐号锁定1分钟;

c.远程用户非活动会话连接超时应小于等于5分钟。


Log

交互式提示信息

vim /etc/issue
 
-----------warning------------- 
For authorized users only 
------------------------------ 
vim /etc/issue 

-----------warning------------- 
 For authorized users only 
------------------------------ 
vim /etc/motd 

-----------warning------------- 
 For authorized users only 
------------------------------ 

sshd

vim /etc/ssh/sshd_config

vim /etc/ssh/Banner  //在ssh目录下新建一个文件Banner和sshd_config里的对应

service sshd restart 

登录失败限制

sudo vim /etc/pam.d/login 
写入
auth required pam_tally2.so deny=3 unlock_time=60 even_deny_root root_unlock_time=60
参数
even_deny_root    也限制root用户;
deny              设置普通用户和root用户连续错误登陆的最大次数,超过最大次数,则锁定该用户;
unlock_time       设定普通用户锁定后,多少时间后解锁,单位是秒;
root_unlock_time  设定root用户锁定后,多少时间后解锁,单位是秒;

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

sudo vim /etc/pam.d/sshd 

auth required pam_tally2.so deny=3 unlock_time=60 even_de

本文标签: 系统安全