快速配置:nagios自动化安装与配置脚本

Posted Posted in Shell脚本, 入门, 监控, 自动化, 菜鸟, 运维

以下为nagios的安装与配置脚本,脚本中server:192.168.1.114、client:192.168.1.113,主要监控host-
alive、disk、cpu_procs、load、ssh、swap、users、zombie_procs等,请根据实际环境修改配置文件。
脚本中开源软件版本:
httpd-2.2.22.tar.gz
libiconv-1.13.1.tar.gz
php-5.3.10.tar.gz
nagios-3.3.1.tar.gz
nagios-plugins-1.4.15.tar.gz
nrpe-2.13.tar.gz
使用方法:
cd ….[阅读全文]

快速配置:适用于CentOS/RHEL 5-6的Linux初始化脚本

Posted Posted in Linux, Shell脚本, 入门, 系统, 自动化, 菜鸟

以下脚本用于linux系统的初始化脚本,可以在服务器系统安装完毕之后立即执行。脚本结合各位大牛一些参数,已经在CentOS 5下通过。
使用方法:将其复制,保存为一个shell文件,比如init.sh。将其上传到linux服务器上,执行sh init.sh。建议大家在系统安装后立即执行。
脚本代码:
#!/bin/bash
# Configure yum source 配置yum源
cd /tmp
wget -c http://yum.baseurl.org/download/3.4/yum-3.4.3.tar.gz
tar zxf yum-3.4.3.tar.gz
cd yu ….[阅读全文]

折腾nginx之详细配置笔记(开启ssl/nginx参数调优/开启http2/开启XSS保护)

Posted Posted in Web, 经验, 菜鸟, 运维

本文只是记录一些折腾 nginx 配置的收获。

先说下启用 HTTPS 吧。
其实迁移博客的时候,我就已经启用了 HTTPS,只是没强制跳转而已。这半年多来好像没遇到什么问题,所以应该可以放心用了。

要启用 HTTPS 自然需要一个证书。没什么需求的话,弄个免费的就行了。我阴差阳错地选择了 StartSSL。
网上有教程,我就不详述怎么申请了,基本流程如下:

  1. 生成一个加密的 key 文件:
    openssl genrsa -des3 -out example.com_secure.key 4096
    需要输入密码,自己记住。
  2. 生成 CSR 文件:
    op ....[阅读全文]

引入Nginx线程池功能使性能提升9倍!

Posted Posted in Web, 笔记, 菜鸟, 运维

前言
Nginx以异步、事件驱动的方式处理连接。传统的方式是每个请求新起一个进程或线程,Nginx没这样做,它通过非阻塞sockets、epoll、kqueue等高效手段,实现一个worker进程处理多个连接和请求。

一般情况下下是一个CPU内核对应一个worker进程,所以worker进程数量固定,并且不多,所以在任务切换上消耗的内存和CPU减少了。这种方式很不错,在高并发和扩展能力等方面都能体现。

看图说话,任务切换不见了。

但是异步事件模式很不喜欢阻塞(blocking)。很多第三方模块使用了阻塞模式的调用,有时候,用户乃至模块作者都不知道到阻塞调用会大大降低 ….[阅读全文]

使用Nginx配置规则简单防止SQL注入/XSS攻击

Posted Posted in Web, 经验, 菜鸟, 运维

最近发现网站访问特别缓慢,甚至出现504错误,通过top -i命令查看服务器负载发现负载数值飙升到4.9之多了,并且持续时间越来越频繁直至持续升高的趋势,还以为是被攻击了,对来访IP进行了阈值限制后效果并不是很明显,CDN服务里限制几个主要IP效果依然不是很明显,估计这应该是被恶意扫描攻击了。

通过服务器waf的日志记录分析得出基本都是SQL注入、XSS攻击范畴,这些攻击都绕过了CDN缓存规则直接回源请求,这就造成PHP、MySQL运算请求越来越多,服务器负载飙升就是这个原因造成的,在日志里可以看到几乎大部分都是 GET/POST 形式的请求,虽然waf都完美的识别和拦截了,但是 ….[阅读全文]

Nginx使用X-Frame-Options避免xss攻击/劫持攻击/js脚本攻击的简易方法

Posted Posted in Web, 入门, 菜鸟, 运维

将以下Nginx配置代码写入http-server段落下:
http {
server {
add_header X-Frame-Options “SAMEORIGIN”;
add_header X-XSS-Protection “1; mode=block”;
add_header X-Content-Type-Options “nosniff”;


修改nginx服务器配置,添加X-frame-options响应头。赋值有如下三种: ….[阅读全文]

如何使用Nginx+htpasswd实现web加密访问

Posted Posted in Web, 入门, 菜鸟, 运维

有的时候我们可能会有这么一种需求,就是你的网站并不想提供一个公共的访问或者某些页面不希望公开,我们希望的是某些特定的客户端可以访问。那么我们可以在访问时要求进行身份认证,就如给你自己的家门加一把锁,以拒绝那些不速之客。
htpasswd安装
htpasswd工具是httpd组件的一部分,在Linux中需要先安装 httpd-tools包 才可实现加密文件的生成:

CentOS为例yum安装:yum  install  httpd-tools

Ubuntu为例apt安装:apt  install  httpd-tools

然后就通过htpasswd生成密码文件:

ht ....[阅读全文]

超好用的Nginx日志分析工具GoAccess使用详解

Posted Posted in 监控, 笔记, 菜鸟, 运维

如果把运维看做是医生给病人看病,则日志就是病人对自己的陈述,很多时候医生需要通过对病人的描述中得出病人状况,是否严重,需要什么计量的药,什么类型的药。所以古人有句话叫对症下药,这个症就是病人的描述加医生的判断,在重一点的病在加上很多的化验。在医生看病时病人的描述和化验单上的数据对医生是非常重要的。同理日志在运维中的作用也是类似的,但非常不幸,日志在很多运维中被严重低估,直到磁盘空间不足的时候才想到,这有个大的日志文件把他删了,这样可以节省空间。

….[阅读全文]

php-fpm参数调优方案(原文PHP-FPM on highload tips)

Posted Posted in Web, 经验, 菜鸟, 运维

php-fpm进程设置多少合适,设成动态还是静态?VPS/云主机只有1GB内存,网站运行经常卡机怎么办?

下面是摘自Google讨论话题的翻译内容:《 PHP-FPM on highload tips

When you running a highload website with PHP-FPM via FastCGI, the following tips may be useful to you

如果你的高负载网站使用PHP-FPM管理FastCGI,也许下面这些技巧对你有用

1. Compile PHP’s modules as less as possible, the simple the best (fast);

尽量少安装PHP模块,最简单是最好(快)的

2. Increas PHP FastCGI child number to 100 and even more. Sometime, 200 is OK! ( On 4GB memory server);

把你的PHP FastCGI子进程数调到100或以上,在4G内存的服务器上200就可以(建议压力测试来得出自己服务器合理的值) ….[阅读全文]