CentOS7安装并配置nginx
安装基本工具
sudo yum -y install gcc gcc-c++ autoconf pcre pcre-devel make automake
sudo yum -y install wget httpd-tools vim
配置iptables规则,在服务器运营商设置安全组
iptables -L #查看已有规则
iptables -F #清空已有规则
iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT #允许本地回环接口(即运行本机访问本机)
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT #允许已建立的或相关连的通行
iptables -A OUTPUT -j ACCEPT #允许所有本机向外的访问
iptables -A INPUT -p tcp --dport 22 -j ACCEPT #允许访问22端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT #允许访问80端口
iptables -A INPUT -p tcp --dport 21 -j ACCEPT #允许ftp服务的21端口
iptables -A INPUT -p tcp --dport 20 -j ACCEPT #允许fTP服务的20端口
iptables -A INPUT -j reject #禁止其他未允许的规则访问
iptables -A FORWARD -j REJECT #禁止其他未允许的规则访问
iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT #DoS攻击防范
#基于udp的dns服务开启端口
iptables -A OUTPUT -p udp -o eth0 --dport 53 -j ACCEPT
iptables -A INPUT -p udp -i eth0 --sport 53 -j ACCEPT
#流量转发均衡
iptables -A PREROUTING -i eth0 -p tcp --dport 80 -m state --state NEW -m nth --counter 0 --every 3 --packet 0 -j DNAT --to-destination 192.168.1.101:80
iptables -A PREROUTING -i eth0 -p tcp --dport 80 -m state --state NEW -m nth --counter 0 --every 3 --packet 0 -j DNAT --to-destination 192.168.1.102:80
iptables -A PREROUTING -i eth0 -p tcp --dport 80 -m state --state NEW -m nth --counter 0 --every 3 --packet 0 -j DNAT --to-destination 192.168.1.103:80
#将丢弃包情况记入日志
iptables -N LOGGING
iptables -A INPUT -j LOGGING
iptables -A LOGGING -m limit --limit 2/min -j LOG --log-prefix "IPTables Packet Dropped: " --log-level 7
iptables -A LOGGING -j DROP
service iptables start #启动
service iptables restart #重启
service iptables save #保存
service iptables stop #停止
service iptables status #查询状态
禁止SELinux
getenforce #查看SELinux是否禁止,Disable为禁止
关闭SELinux:
-
临时关闭,不用重启机器:
setenforce 0 #设置SELinux成为permissive模式,setenforce 1设置SELinux 成为enforcing模式
-
修改配置文件并重启机器:
sudo vim /etc/selinux/config SELINUX=disabled
增加nginx源并安装
sudo vim /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
sudo yum install nginx
ab压力测试
sudo yum install httpd-tools #前面安装则不用再次安装
ab -n 2000 -c 20 http://127.0.0.1
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。