type
status
date
slug
summary
tags
category
icon
password
Mysql
账户部分
身份认证,确保客户服务器上不存在空口零弱口令账户
db:mysql
table:user

select host,user,password,authentication_string from user;1)用户登录数据库时,采用用户名、口令的方式进行身份鉴别
2)查询user表,不存在相同的用户名
3)不存在空口令用户;
4)配置信息:
通过
SHOW VARIABLES LIKE 'validate_password%';查询以下的配置信息:validate_password_length 8 密码长度
validat_password_mixed_case_count 1最少一个大写字母
validate_password_number_count 1最少一个数字
validate_password policy MEDIUM 表示相对较强的密码策略
validate_password_special_char_count 1 特殊字符的最小数量权限部分
priv相关的即为数据权限,一般仅允许管理员具有所有权限,并且普通用户一般仅查询即可

数据库日志记录
明确数据库的日志正常运行且开启即可
show VARIABLES LIKE "general_log%";各种日志
show VARIABLES LIKE "%log%";apache加固
一、配置文件路径
windows下:
直接搜索资源管理器
phpstudy默认名称为httpd.conf,还有可能是apache2.conf、apache.ini
linux下:
使用包管理工具(apt、yum等)安装时默认路径为/etc/apache2/或/etc/httpd/
二、具体配置
2.1 建议使用专门用户和用户组运行apache服务
创建apache组
groupadd apache
常见apache用户并加入apache组
useradd -g apache将当前用户、组添加至配置文件中
vim apache2.conf

2.2限制apache主目录的访问权限
默认情况下该目录属主为root,其他用户无法修改,默认配置即可达成目标
推荐配置apache2.conf不大于644,可根据具体情况修改为600

日志文件同理
/var/log/apche2
如图,默认情况下apache日志权限为600,推荐权限600
2.3日志设置
/etc/apache2/apache.conf

2.4禁止访问外部文件
Order Deny,Allow
Deny from all#相当于拒绝访问所有资源
Order Allow,Deny
ALLOW FROM ALL#仅允许访问web目录在web目录的<Directory>标签中设置
2.5禁止目录列出
加固方法:
删除图2.4中的Indexes字段即可
2.6错误页面的重定向
phpstudy:

linux:

2.7防护拒绝服务
推荐配置:
Timeout 200
KeepAlive on#限制是否开启会话存活
keepAlivetimeout 5 #每个会话的保持时间,一般根据客户的服务器屌不屌

2.8隐藏apche版本号
ServerSignature off #用来消除页面上的apache版本信息
servertokens prod #用来清除请求头中的apache版本信息
2.9禁用TRACE功能
TraceEnable off #仅存在于apache2.0及以
2.10建议禁用CGI
加载组件模块每个版本或操作系统有小差别
#LoadModule cgi_module /usr/lib/apache2/modules/mod_cgi.so#该条配置若无必须使用的应用,则建议直接注释2.11删除安装后的缺省无用文件
find / -name "httpd" 2>/dev/null
find / -name "manual" 2>/dev/null
find / -name "htdocs" 2>/dev/null
删除上方搜索结果中和apache相关的配置文件即可