发布于 5年前
LNMP Web 服务器安全设置
nginx
# 需要写入权限的目录不要给 777 权限,而是修改用户和用户组
chown -R www:www uploads
# 禁止目录列表
autoindex off
#禁止单目录上传 php 文件
location ~ /attachments/.*\.php$ {
deny all;
}
#禁止多目录上传 php 文件
location ~ /(attachments|uploads)/.*\.php$ {
deny all;
}
上面两个配置要放在
php
运行的配置前面
mysql
- 非
Linux root
用户运行MySQL
- 删除默认数据库和数据库用户
- 禁止远程连接数据库
- 不用
MySQL root
用户连接数据库 - 用户目录权限
# mysql 主目录给 root
chown -R root /usr/local/mysql/
# 确保数据库目录权限所属 mysql 用户
chown -R mysql:mysql /usr/local/mysql/var
php
expose_php = Off
allow_url_include = Off
open_basedir 设置
disable_functions = passthru exec system chroot scandir chgrp chown shell_exec proc_open proc_get_status popen ini_alter ini_restore dl openlog syslog readlink symlink popepassthru stream_socket_server