12.17 Nginx负载均衡;12.18 ssl原理;12.19 生产ssl密钥对;12.20 Nginx配置ssl

简介:

扩展:

针对请求的uri来代理 http://ask.apelearn.com/question/1049

根据访问的目录来区分后端web http://ask.apelearn.com/question/920

12.17 Nginx负载均衡

1. 安装dig命令:

[root@hao-01 ~]# yum install -y bind-utils

2. 用dig获取qq.com的ip地址:

[root@hao-01 ~]# dig qq.comwKioL1mSi-bBEjX7AABZgFx33DE213.png

spacer.gif3. 创建ld.conf文件,并添加如下内容:

[root@hao-01 ~]# vi /usr/local/nginx/conf/vhost/ld.conf

添加内容(upstream指定多个web server ip):

upstream qq
{
    ip_hash;
    server 61.135.157.156:80;
    server 125.39.240.113:80;
}
server
{
    listen 80;
    server_name www.qq.com;
    location /
    {
        proxy_pass      http://qq;
        proxy_set_header Host   $host;
        proxy_set_header X-Real-IP      $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;   

    }
}

wKioL1mSjAKCkEIoAABGEI66EQ0558.png

spacer.gif4. 检测nginx配置文件是否有错?

[root@hao-01 ~]# /usr/local/nginx/sbin/nginx -t

5. 重新加载nginx配置文件(非重启!):

[root@hao-01 ~]# /usr/local/nginx/sbin/nginx -s reload

6. curl 通过本地ip127.0.0.1访问www.qq.com,访问到了qq网站主页

[root@hao-01 ~]# curl -x127.0.0.1:80 www.qq.com

12.18 ssl原理

wKioL1mSjCLie1xqAAaVHlLlxKQ563.png

spacer.gif

12.19 生产ssl密钥对

1. 进入...conf目录下:

[root@hao-01 ~]# cd /usr/local/nginx/conf

2. 安装 openssl命令:

[root@hao-01 ~]# yum install -y which openssl

3. 当前目录下生成tmp.key私钥:

[root@hao-01 conf]# openssl genrsa -des3 -out tmp.key 2048

wKiom1mSjD_ixurBAAAjxDeXw1g394.png

spacer.gif4. 转换tmp.key私钥取消密码生成一个新的文件haosy.key私钥:

[root@hao-01 conf]# openssl rsa -in tmp.key -out haosy.key

wKiom1mSjFnS3zOyAAAX-ExObDI159.png

spacer.gif5. 删除 tmp.key私钥:

[root@hao-01 conf]# rm -f tmp.key

6. 生成证书请求文件hao.csr:

[root@hao-01 conf]# openssl req -new -key haosy.key -out hao.csr

wKiom1mSjHWi_2zkAACK_b1G9BM604.png

spacer.gif7. 生成公钥,hao.csr证书请求文件和haosy.key私钥一起生产出haogy.crt公钥:

[root@hao-01 conf]# openssl x509 -req -days 365 -in hao.csr -signkey haosy.key -out haogy.crt

wKiom1mSjI-xquPZAAAnRmHoVas417.png

spacer.gif12.20 Nginx配置ssl

1. 创建 .../hao1.com网站目录:

[root@hao-01 ~]# mkdir /data/wwwroot/hao1.com

2. 创建ssl.conf文件,并添加如下内容:

[root@hao-01 ~]# vim /usr/local/nginx/conf/vhost/ssl.conf

添加内容:

server
{
    listen 443;
    server_name hao1.com;
    index index.html index.php;
    root /data/wwwroot/hao1.com;
    ssl on;
    ssl_certificate haogy.crt;
    ssl_certificate_key haosy.key;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
}

wKioL1mSjKuAXaGhAAAkjAxL6CI674.png

spacer.gif3. 进入nginx-1.12.1源码包目录下:

[root@hao-01 ~]# cd /usr/local/src/nginx-1.12.1/

4. 编译with-http_ssl_module :

[root@hao-01 nginx-1.12.1]# ./configure --prefix=/usr/local/nginx --with-http_ssl_module

5. make :

[root@hao-01 nginx-1.12.1]# make

6. make install :

[root@hao-01 nginx-1.12.1]# make install

7. 检测nginx配置文件是否有错?

[root@hao-01 ~]# /usr/local/nginx/sbin/nginx -t

8. 重启nginx服务:

[root@hao-01 nginx-1.12.1]# /etc/init.d/nginx restart

9. 查看监听端口:

[root@hao-01 nginx-1.12.1]# netstat -lntp

wKioL1mSjM6S_QrAAABFW4BYhNk507.png

spacer.gif10. 进入 .../hao1.com网站目录下:

[root@hao-01 nginx-1.12.1]# cd /data/wwwroot/hao1.com/

11.  .../hao1.com网站目录下,创建index.html测试文件添加内容

[root@hao-01 hao1.com]# vim index.html

添加内容:

This is ssl.

12. host文件中,另起一行,添加本地ip 跟指定的域名

[root@hao-01 hao1.com]# vim /etc/hosts

添加内容:

127.0.0.1 hao1.com

13. curl 访问hao1.com设定的域名网站:

[root@hao-01 hao1.com]# curl https://hao1.com

wKiom1mSjOigqvCtAABmCrHOLTM703.png

spacer.gif14. 打开windows系统找到hosts文件

路径:C:\Windows\System32\drivers\etc

wKiom1mSjQLTi5gXAAAY7XXpDSs338.png

spacer.gif15. 编辑windows下的hosts文件:

添加一条内容:

192.168.211.128 hao1.com

16. 临时关闭防火墙(不想全部清空,把443端口添加一个规则)

[root@hao-01 hao1.com]# iptables -F

17. windows下的游览器访问https://hao1.com

wKioL1mSjR6ScVl_AAAr-oY_-3s769.png










本文转自 主内安详 51CTO博客,原文链接:http://blog.51cto.com/zhuneianxiang/1956411,如需转载请自行联系原作者
相关实践学习
部署高可用架构
本场景主要介绍如何使用云服务器ECS、负载均衡SLB、云数据库RDS和数据传输服务产品来部署多可用区高可用架构。
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
目录
相关文章
|
18天前
|
移动开发 前端开发 JavaScript
前端vue2、vue3去掉url路由“ # ”号——nginx配置(一)
前端vue2、vue3去掉url路由“ # ”号——nginx配置
52 0
|
18天前
|
JavaScript 前端开发 应用服务中间件
angular引入包、路由权限配置、打包问题与nginx配置问题(简单部署)
angular引入包、路由权限配置、打包问题与nginx配置问题(简单部署)
24 0
|
18天前
|
前端开发 JavaScript 应用服务中间件
前端vue2、vue3去掉url路由“ # ”号——nginx配置(二)
前端vue2、vue3去掉url路由“ # ”号——nginx配置
48 0
|
3天前
|
应用服务中间件 nginx
nginx配置集群轮训策略
nginx配置集群轮训策略
10 0
|
3天前
|
负载均衡 算法 调度
负载均衡原理及算法
负载均衡原理及算法
9 1
|
4天前
|
安全 网络协议 应用服务中间件
一文读懂HTTPS⭐揭秘加密传输背后的原理与Nginx配置攻略
一文读懂HTTPS⭐揭秘加密传输背后的原理与Nginx配置攻略
|
5天前
|
应用服务中间件 nginx
Nginx的referer参数的用法和原理
总结:referer参数可以用于Nginx配置,以限制或允许特定来源网站的访问,提高安全性或控制流量。它通过valid_referers指令来定义合法的Referer来源,并根据配置对请求进行处理。但需要注意,Referer字段内容可以被伪造,因此不应作为唯一的安全措施。
15 0
|
12天前
|
应用服务中间件 PHP nginx
php如何实现检测nginx配置的正确性
请确保在执行此操作时,PHP有足够的权限来执行Nginx命令和访问Nginx配置文件。另外,将上述代码嵌入到您的应用程序中时,要注意安全性,以防止潜在的命令注入攻击。
51 3
|
15天前
|
运维 负载均衡 Cloud Native
Serverless 应用引擎产品使用之在Serverless 应用引擎中,使用云原生网关的情况下,SLB(负载均衡器)和证书配置如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
23 1
|
18天前
|
安全 应用服务中间件 网络安全
linux_nginx中添加ssl配置(open ssl)
linux_nginx中添加ssl配置(open ssl)
25 1