免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
前 言本笔记采用军哥的LNMP一键安装并综合了张宴的笔记进行了适度优化,在实际运行中也有不错的表现. 军哥的一键安装网站:/install.html 军哥博客,很多配置可以在这里找到 / 张宴博客参考: /nginx_php_v6/安装后优化总结v 所有的nginx配置文件中都必须要检查是否有下列配置,否则不安全.1. 空主机头设置2. 检查CPU设置数量, 尽量改大点3. 防盗链 - 要检查各虚拟主机vhost4. Nginx漏洞修补部分 - 要检查各虚拟主机vhost5. 伪静态语句 - 要检查各虚拟主机vhost6. 301永久指向 ( ) 参考语句:if ($host != ) rewrite /(.*)$ /$1 permanent;v 编写每天定时切割Nginx日志的脚本,注意按照实际情况修改路径1. 创建脚本/usr/local/webserver/nginx/sbin/cut_nginx_log.sh2. vi /usr/local/webserver/nginx/sbin/cut_nginx_log.sh3. 输入以下内容:引用#!/bin/bash# This script run at 00:00# The Nginx logs pathlogs_path=/usr/local/webserver/nginx/logs/mkdir -p $logs_path$(date -d yesterday +%Y)/$(date -d yesterday +%m)/mv $logs_pathaccess.log $logs_path$(date -d yesterday +%Y)/$(date -d yesterday +%m)/access_$(date -d yesterday +%Y%m%d).logkill -USR1 cat /usr/local/webserver/nginx/nginx.pidv 设置crontab,每天凌晨00:00切割nginx访问日志1. crontab -e2. 输入以下内容:00 00 * * * /bin/bash/usr/local/webserver/nginx/sbin/cut_nginx_log.shTroubleshooting v 运行 /root/lnmp restart出现下列提示Starting php_fpm Failed loading /usr/local/zend/ZendOptimizer.so: /usr/local/zen/ZendOptimizer.so:connot restore segment prot after reloc: Permission denied解决方法可以先尝试下面方法,待错误消失后重新开启Selinx方法1:关闭SELINX,执行:/usr/sbin/setenforce 0方法2:禁止掉SELinux 更改/etc/sysconfig/selinux 文件的内容为 SELINUX=disabled方法3:当然不想关闭SWlinux,我们可以这样:chcon -t textrel_shlib_t /usr/local/zend/ZendOptimizer.so优化Mysql参数登陆mysql的命令:1. export PATH=/usr/local/mysql/bin:$PATH2. mysql -u root p3. use DB(数据库名) 可以切换到需要的数据库下4. flush tables; 刷新数据库表5. flush privileged; 刷新权限也可以通过SSH来修改数据库表的权限(一般666就可以了)安装结束后,MYSQL数据库用户名root密码root,登陆后进入mysql数据库,找到user表,删除除了有root密码外的所有用户LNMP中默认是用小内存MYSQL,所以需要更改为LARGE的,或者用my-innodb-heavy-4G.cnf 这个配置cp -r /usr/local/mysql/share/mysql/f /etc/f优化NGINX的参数及对应安全配置v 安装完毕后, centos.sh / debian.sh eaccelerator.sh ftp/install.php 全部重新命名或者删除 极端重要v phpmyadmin下的setup目录改名或删掉 极端重要nginx完美解决同一服务上的站点WebShell访问限制问题(跨站跨目录)v /viewthread.php?tid=6546&extra=&page=1 - 待验证,基本可行v NGINX漏洞修复 极端重要必须在nginx的主站(nginx.conf文件)及各虚拟主机vhost全部配置添加如下内容,重启nginx#以下这段是为了防止Nginx漏洞location .*.(php|php5)?$if ($request_filename * (.*).php) set $php_url $1; if (!-e $php_url.php) return 403; #以上这段是为了防止Nginx漏洞 v 设置空主机头,避免别人恶意域名指过来,此语句可以做指向,将恶意指向的IP导向其它地方.#以下这段是设置空主机头,避免恶意指向server listen 80;server_name _; #default return 444; #以上这段是设置空主机头,避免恶意指向v 增加限制会话链接 limit_conn crash5; 每个会话5个链接 . - 待验证v 如何关闭NGINX日志:修改nginx.conf 找到access_log:access_log /dev/null;error_log /dev/null;v 手动在网站根目录下创立所有子目录名字,并修改文件夹属性, chown -R www:www /data0/htdocs/blog chmod +w /data0/htdocs/blog必须要做,否则会出现打不开网站或者子域名v Nginx防盗链,防采集控制,在nginx.conf 文件中加入下列语句,红色部分改为自己域名, 同时要考虑搜索爬虫,做到平衡#以下为图片防盗链规则location * .(gif|jpg|png|swf|flv)$ valid_referers none blocked localhost; if ($invalid_referer) rewrite / /;#return 404;#以上为图片防盗链规则CENT OS 系统参数优化v 安装完毕后启动iptable,只开放需要的端口(setup命令端口开启)v 防止同步包洪水(Sync Flood) iptables -A FORWARD -p tcp -syn -m limit -limit 1/s -j ACCEPTv 防止各种端口扫描 iptables -A FORWARD -p tcp -tcp-flags SYN,ACK,FIN,RST RST -m limit -limit 1/s -j ACCEPTv Ping 洪水攻击(Ping of Death) iptables -A FORWARD -p icmp -icmp-type echo-request -m limit -limit 1/s -j ACCEPTecho 2048 /proc/sys/net/ipv4/tcp_max_syn_backlogecho 1 /proc/sys/net/ipv4/tcp_synack_retriesecho 1 /proc/sys/net/ipv4/tcp_syn_retriesecho 1 /proc/sys/net/ipv4/tcp_syncookiesv 优化Linux内核参数vi /etc/sysctl.conf 修改下面项目数值net.ipv4.tcp_syncookies=1 #启用使用syncookies net.ipv4.conf.all.send_redirects=0 net.ipv4.conf.all.accept_redirects=0 #不接受重定向的ICMP數據包net.ipv4.tcp_window_scaling=1 net.ipv4.icmp_echo_ignore_all=1 #禁止ICMP,可选项目,默认为0net.ipv4.icmp_echo_ignore_broadcasts=1 #ICMP禁止广播 可选项目 在末尾增加以下内容:# Addnet.ipv4.tcp_max_syn_backlog = 6000 #最大半连接数dev_max_backlog = 32768net.core.somaxconn = 32768net.core.wmem_default = 8388608net.core.rmem_default = 8388608net.core.rmem_max = 16777216net.core.wmem_max = 16777216net.ipv4.tcp_timestamps = 0net.ipv4.tcp_synack_retries = 1 #降低syn重试次数net.ipv4.tcp_syn_retries = 1 #降低syn重试次数net.ipv4.tcp_tw_recycle = 1#net.ipv4.tcp_tw_len = 1net.ipv4.tcp_tw_reuse = 1net.ipv4.tcp_mem = 94500000 915000000 927000000net.ipv4.tcp_max_orphans = 3276800net.ipv4.tcp_fin_timeout = 30 net.ipv4.tcp_keepalive_time = 60net.ipv4.ip_local_port_range = 1024 65535v 修改php-fpm.conf最大连接1. /usr/local/php/etc/php-fpm.conf , 修改php-fpm.conf最大连接为160:160 说明每个PHP进程使用20M, 因为我内存为4G,2. 0 关闭错误输出(0为关闭)v 修改php.ini文件手工修改:查找/usr/local/webserver/php/etc/php.ini中的extension_dir = ./修改为extension_dir = /usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/并在此行后增加以下几行,然后保存:extension = memcache.soextension = pdo_mysql.soextension = imagick.so再查找output_buffering = Off修改为output_buffering = On自动修改:若嫌手工修改麻烦,可执行以下shell命令,自动完成对php.ini文件的修改:sed -i s#extension_dir = ./#extension_dir = /usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/nextension = memcache.sonextension = pdo_mysql.sonextension = imagick.son# /usr/local/webserver/php/etc/php.inised -i s#output_buffering = Off#output_buffering = On# /usr/local/webserver/php/etc/php.inised -i s#; always_populate_raw_post_data = On#always_populate_raw_post_data = On#g /usr/local/webserver/php/etc/php.iniv 重要提示,如果出现502错误,请参考下面变换 eaccelerator 和 Zend optimizer位置:eacceleratorzend_extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/eaccelerator.soeaccelerator.shm_size=128 此项改为128eaccelerator.cache_dir=/usr/local/eaccelerator_cacheeaccelerator.enable=1eaccelerator.optimizer=1eaccelerator.check_mtime=1eaccelerator.debug=0eaccelerator.filter=eaccelerator.shm_max=0eaccelerator.shm_ttl=3600eaccelerator.shm_prune_period=3600eaccelerator.shm_only=0press=1press_level=9eaccelerator.keys = disk_only eaccelerator.sessions = disk_onlyeaccelerator.content = disk_onlyZend Optimizer zend_optimizer.optimization_level=1 zend_extension=/usr/local/zend/ZendOptimizer.sov 禁用部分危险的函数:方法如下:打开/usr/local/php/lib/php.ini和/usr/local/php-fcgi/lib/php.ini更改disable_functions =为disable_functions = system,passthru,shell_exec,exec, proc_open,popen重启LNMPv 系统利用ntpdate同步标准时间.没有安装ntpdate的可以yum一下:yu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人际信任与系统信任
- 分式方程 课件 2025-2026学年北师大版数学八年级下册
- 农民工返乡返岗交通保障
- 2025-2026学年宁夏回族自治区固原市高考仿真卷历史试卷含解析
- 虚拟现实2025年文旅产业融合报告:创新体验项目可行性研究
- 循证康复实践中的康复-示范创新
- 2026年区块链供应链金融报告及未来五至十年风险评估报告
- 影像组学在肿瘤疗效预测中的生物信息学整合
- 康复评估的循证表型分型研究
- 康复评估的循证多维度整合
- 国家职业技能鉴定考评员考试题库
- 成人癌性疼痛护理-中华护理学会团体标准2019
- 马克思主义与社会科学方法论思考题
- 培训testlab中文手册modal impact1 Test Lab模态锤击法软件布局
- 安徽华塑股份有限公司年产 20 万吨固碱及烧碱深加工项目环境影响报告书
- 糖尿病酮症酸中毒指南精读
- 业财一体化财务对接解决方案
- 《绿色建筑概论》整套教学课件
- 《动物病理》课程设计课件
- 将军路施工组织设计概述
- 主要工业产品统计指南
评论
0/150
提交评论