内容简介:基于haproxy的全站https
前一段时间新疆等地用户访问国务院官网,在首页上发现大量淫秽信息及广告,后反映给相关工作人员。经排查,并非是网站被劫持和入侵,而是运营商流量劫持导致的这个结果……此处且不论该时间后续事宜,作为一名优秀的运维工程师,我们面对运营商如此流氓的行为,应该怎么办? 当然是全站HTTPS了,目前,百度、阿里、腾讯等国内互联网巨头已经采用全站HTTPS。下面我将带你模拟搭建HTTPS。
这是一个常见的haproxy架构型,我们现在采用此架构,将HTTPS部署在haproxy上。
第一步:创建CA证书
1.CA机自签名:
#创建数据库 [root@centos]cd /etc/pki/CA touch index.txt [root@centos]echo 10 > serial #生成私钥 [root@centos](umask 066;openssl genrsa -out /etc/pki/CA/private/cakey.pem 4096) #自签证书 [root@centos]cd /etc/pki/CA [root@centos]openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 7300
填写CA信息
2.客户端申请CA
生产私钥 [root@centos](umask 066;openssl genrsa -out /etc/pki/tls/private/test.key 1024) 生成申请文件 [root@centos]openssl req -new -key /etc/pki/tls/private/app.key -day 365 -out /etc/pki/tls/test.csr
填写CA信息(一定要和CA机中填写的一致)
将 test.csr 文件拷贝到CA机 /tmp 目录下(scp test.csr 172.18.32.1)
在CA机上批准颁发证书
[root@centos]openssl ca -in /tmp/test.csr -out /etc/pki/CA/certs/test.crt -days 100
certs 目录下已经生成证书文件(test.crt)
再拷回客户端就可以了。
第二步:配置Nginx服务器
#nginx1 [root@centos] cd /app [root@centos]wget http://nginx.org/packages/centos/5/x86_64/RPMS/nginx-1.10.3-1.el5.ngx.x86_64.rpm [root@centos] yum localinstall nginx-xxxxxx [root@centos] service nginx start [root@centos] echo "Test Page" > /usr/share/nginx/html/index.html #nginx2 [root@centos] cd /app [root@centos]wget http://nginx.org/packages/centos/5/x86_64/RPMS/nginx-1.10.3-1.el5.ngx.x86_64.rpm [root@centos] yum localinstall nginx-xxxxxx [root@centos] service nginx start [root@centos] echo "Test Page" > /usr/share/nginx/html/index.html
第三步:修改haproxy配置
首先生成一个pem文件供haproxy使用
[root@centos] cat /app/test.crt > test.pem [root@centos] cat /app/test.key >> test.pem
在修改hapeoxy配置
[root@centos] vim /etc/haproxy/haproxy.cfg global log 127.0.0.1 local2 chroot /var/lib/haproxy pidfile /var/run/haproxy.pid maxconn 4000 user haproxy group haproxy daemon stats socket /var/lib/haproxy/stats defaults mode http log global option httplog option dontlognull option http-server-close option forwardfor except 127.0.0.0/8 option redispatch retries 3 timeout http-request 10s timeout queue 1m timeout connect 10s timeout client 1m timeout server 1m timeout http-keep-alive 10s timeout check 10s maxconn 3000 frontend nginx *:80 bind *:443 ssl crt /app/https.pem bind *:80 redirect scheme https if !{ ssl_fc } #将所有http协议转为https协议 default_backend web #acl invalid_src src 192.168.37.130 #http-request allow if invalid_src backend web balance roundrobin server web1 192.168.37.135:80 check server web2 192.168.37.134:80 check listen stats bind :9099 stats enable stats uri /stats stats realm HAPorxy\ Stats\ Page stats auth admin:admin stats admin if TRUE stats hide-version
第四步:测试
测试访问http://192.168.37.133
会看到自动跳转到https了,此处会出现未认证证书的报错,忽略即可。
就算把CA证书导入浏览器,因为我们得CA是自己搭建的,是未被互联网信任的,所有仍会在地址前打×,所以,还是去购买一个认证吧。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 某鱼直播数据全站爬取
- Python爬虫---爬取腾讯动漫全站漫画
- DNSPod将对全站SSL证书进行升级
- 58 全站用户行为数据仓库建设及实践
- MrDoc 0.5.1 版本发布,支持配置全站强制登录
- 全站HTTPS升级系列(一)升级前的科普工作
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
游戏数据分析的艺术
于洋、余敏雄、吴娜、师胜柱 / 机械工业出版社 / 2015-7 / 79.00
《游戏数据分析的艺术》是中国游戏产业的开创性著作,具有里程碑意义,它首次系统讲解了如何对游戏行业的数据进行分析,在行业里竖起了一根标杆。作者是来自TalkingData等国内顶尖的数据分析机构和西山居这样的知名游戏公司的资深数据分析专家, 对游戏数据从不同的业务角度进行了诠释。本书详细剖析了游戏数据分析相关的指标、方法论、内容挖掘、数据挖掘、软件使用、游戏设计、运营策划、渠道推广、收入解读、用户分......一起来看看 《游戏数据分析的艺术》 这本书的介绍吧!
RGB CMYK 转换工具
RGB CMYK 互转工具
HSV CMYK 转换工具
HSV CMYK互换工具