searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

弹性负载均衡单-双向认证提升业务安全性

2025-02-06 01:37:49
11
0

1. 单双向认证

2. 负载均衡实现单双向认证过程

2.1. 配置流程

制作证书-->上传证书到负载均衡器-->验证认证

2.2. 使用OpenSSL制作CA、服务器及客户端证书

2.2.1. 制作CA根证书

步骤1:登录到任意一台安装有openssl工具的Linux云主机

步骤2:创建工作目录并进入该目录

mkdir cert cd cert

步骤3:在cert目录下,创建CA证书的openssl配置文件ca_cert.conf

vi ca_cert.conf

内容如下:

[req] distinguished_name = req_distinguished_name prompt = no [req_distinguished_name] C = cn ST = sc L = cd O = TeleCloud OU = Test CN = root

其中CN为Common Name,CA根证书可设置为root或其他可标识字段

步骤4:创建CA根证书

  1. 生成CA证书的私钥文件ca.key

openssl genrsa -out ca.key 2048

  1. 使用配置文件ca_cert.conf生成CA证书的csr请求文件ca.csr

openssl req -out ca.csr -key ca.key -new -config ./ca_cert.conf

  1. 生成自签名的CA证书ca.crt

openssl x509 -req -in ca.csr -out ca.crt -sha1 -days 3650 -signkey ca.key

这样我们就得到有效期10年的CA根证书

2.2.2. 制作服务器证书

可以用权威CA签发的证书或者自签名的证书,这里以自签名证书为例说明如何创建服务器证书

步骤1:登录上面的服务器,进入cert目录

cd cert

步骤2:在cert目录下,创建CA证书的openssl配置文件server_cert.conf

vi server_cert.conf

内容如下:

[req] distinguished_name = req_distinguished_name prompt = no [req_distinguished_name] C = cn ST = sc L = cd O = TeleCloud OU = Test # 服务器common name需要修改为负载均衡器的域名或者IP,如果不知道域名可以设置为IP CN = @

步骤3:创建服务器证书

  1. 生成服务器证书的私钥文件server.key

openssl genrsa -out server.key 2048

  1. 使用配置文件server_cert.conf生成服务器证书的csr请求文件server.csr

openssl req -out server.csr -key server.key -new -config ./server_cert.conf

  1. 生成自签名的服务器证书证书server.crt

openssl x509 -req -in server.csr -out server.crt -sha1 -CAcreateserial -days 3650 -CA ./ca.crt -CAkey ./ca.key

2.2.3. 制作客户端证书

使用CA证书签发客户端证书

步骤1:登录上面的服务器,进入cert目录

cd cert

步骤2:在cert目录下,创建客户端证书的openssl配置文件client_cert.conf

vi client1_cert.conf

内容如下:

[req] distinguished_name = req_distinguished_name prompt = no [req_distinguished_name] C = cn ST = sc L = cd O = TeleCloud OU = Test CN = client1

客户端的CN可设置为标识客户端的字段

步骤3:创建服务器证书

  1. 生成服务器证书的私钥文件client1.key

openssl genrsa -out client1.key 2048

  1. 使用配置文件client1server_cert.conf生成服务器证书的csr请求文件client1.csr

openssl req -out client1.csr -key client1.key -new -config ./client1_cert.conf

  1. 生成自签名的服务器证书证书server.crt

openssl x509 -req -in client1.csr -out client1.crt -sha1 -CAcreateserial -days 3650 -CA ./ca.crt -CAkey ./ca.key

  1. 把客户端证书格式转为浏览器可识别的p12格式,用于浏览器的访问

openssl pkcs12 -export -clcerts -in client1.crt -inkey client1.key -out client1.p12

该命令执行时需要输入导出密码,请输入并记住该密码,在证书导入浏览器时需要使用

步骤4:下载证书

将上述步骤生成的CA、服务器、client证书和key下载至本地curl --cert --key --cacert

ca.crt

ca.key

server.crt

server.csr

server.key

client1.crt

client1.key

client1.p12

2.3. 将证书上传至负载均衡证书管理

2.3.1. 将服务器证书上传至负载均衡证书管理

1.登录天翼云首页,选择“产品 > 网络与CDN > 网络 > 弹性负载均衡”,选择弹性负载均衡所属区域,本文选择华东-华东1,进入弹性负载均衡控制台

2.在左侧“弹性负载均衡 > 证书管理”页签点击“创建证书”

3.证书类型选择服务器证书

2.3.2. 将CA证书上传至负载均衡证书管理

2.4. 创建监听器,配置双向认证

  1. 登录负载均衡控制台页面。
  2. 在添加监听器页面,打开“双向认证”,并且在服务器证书和CA证书两个配置项中选择所添加的服务器证书和CA证书对应的名称

2.5. 验证双向认证

2.5.1. Curl工具方式功能测试

  1. 导入客户端证书,登录客户端机器,将客户端证书client1.crt和私钥文件client1.key上传到新目录。测试验证在shell界面,通过curl命令验证认证功能

2.5.2. 浏览器方式功能测试

  1. 浏览器导入客户端证书(以chrome为例说明)

  1. 测试验证在浏览器中输入地址,可以正常访问网站
0条评论
0 / 1000
c****n
3文章数
0粉丝数
c****n
3 文章 | 0 粉丝
原创

弹性负载均衡单-双向认证提升业务安全性

2025-02-06 01:37:49
11
0

1. 单双向认证

2. 负载均衡实现单双向认证过程

2.1. 配置流程

制作证书-->上传证书到负载均衡器-->验证认证

2.2. 使用OpenSSL制作CA、服务器及客户端证书

2.2.1. 制作CA根证书

步骤1:登录到任意一台安装有openssl工具的Linux云主机

步骤2:创建工作目录并进入该目录

mkdir cert cd cert

步骤3:在cert目录下,创建CA证书的openssl配置文件ca_cert.conf

vi ca_cert.conf

内容如下:

[req] distinguished_name = req_distinguished_name prompt = no [req_distinguished_name] C = cn ST = sc L = cd O = TeleCloud OU = Test CN = root

其中CN为Common Name,CA根证书可设置为root或其他可标识字段

步骤4:创建CA根证书

  1. 生成CA证书的私钥文件ca.key

openssl genrsa -out ca.key 2048

  1. 使用配置文件ca_cert.conf生成CA证书的csr请求文件ca.csr

openssl req -out ca.csr -key ca.key -new -config ./ca_cert.conf

  1. 生成自签名的CA证书ca.crt

openssl x509 -req -in ca.csr -out ca.crt -sha1 -days 3650 -signkey ca.key

这样我们就得到有效期10年的CA根证书

2.2.2. 制作服务器证书

可以用权威CA签发的证书或者自签名的证书,这里以自签名证书为例说明如何创建服务器证书

步骤1:登录上面的服务器,进入cert目录

cd cert

步骤2:在cert目录下,创建CA证书的openssl配置文件server_cert.conf

vi server_cert.conf

内容如下:

[req] distinguished_name = req_distinguished_name prompt = no [req_distinguished_name] C = cn ST = sc L = cd O = TeleCloud OU = Test # 服务器common name需要修改为负载均衡器的域名或者IP,如果不知道域名可以设置为IP CN = @

步骤3:创建服务器证书

  1. 生成服务器证书的私钥文件server.key

openssl genrsa -out server.key 2048

  1. 使用配置文件server_cert.conf生成服务器证书的csr请求文件server.csr

openssl req -out server.csr -key server.key -new -config ./server_cert.conf

  1. 生成自签名的服务器证书证书server.crt

openssl x509 -req -in server.csr -out server.crt -sha1 -CAcreateserial -days 3650 -CA ./ca.crt -CAkey ./ca.key

2.2.3. 制作客户端证书

使用CA证书签发客户端证书

步骤1:登录上面的服务器,进入cert目录

cd cert

步骤2:在cert目录下,创建客户端证书的openssl配置文件client_cert.conf

vi client1_cert.conf

内容如下:

[req] distinguished_name = req_distinguished_name prompt = no [req_distinguished_name] C = cn ST = sc L = cd O = TeleCloud OU = Test CN = client1

客户端的CN可设置为标识客户端的字段

步骤3:创建服务器证书

  1. 生成服务器证书的私钥文件client1.key

openssl genrsa -out client1.key 2048

  1. 使用配置文件client1server_cert.conf生成服务器证书的csr请求文件client1.csr

openssl req -out client1.csr -key client1.key -new -config ./client1_cert.conf

  1. 生成自签名的服务器证书证书server.crt

openssl x509 -req -in client1.csr -out client1.crt -sha1 -CAcreateserial -days 3650 -CA ./ca.crt -CAkey ./ca.key

  1. 把客户端证书格式转为浏览器可识别的p12格式,用于浏览器的访问

openssl pkcs12 -export -clcerts -in client1.crt -inkey client1.key -out client1.p12

该命令执行时需要输入导出密码,请输入并记住该密码,在证书导入浏览器时需要使用

步骤4:下载证书

将上述步骤生成的CA、服务器、client证书和key下载至本地curl --cert --key --cacert

ca.crt

ca.key

server.crt

server.csr

server.key

client1.crt

client1.key

client1.p12

2.3. 将证书上传至负载均衡证书管理

2.3.1. 将服务器证书上传至负载均衡证书管理

1.登录天翼云首页,选择“产品 > 网络与CDN > 网络 > 弹性负载均衡”,选择弹性负载均衡所属区域,本文选择华东-华东1,进入弹性负载均衡控制台

2.在左侧“弹性负载均衡 > 证书管理”页签点击“创建证书”

3.证书类型选择服务器证书

2.3.2. 将CA证书上传至负载均衡证书管理

2.4. 创建监听器,配置双向认证

  1. 登录负载均衡控制台页面。
  2. 在添加监听器页面,打开“双向认证”,并且在服务器证书和CA证书两个配置项中选择所添加的服务器证书和CA证书对应的名称

2.5. 验证双向认证

2.5.1. Curl工具方式功能测试

  1. 导入客户端证书,登录客户端机器,将客户端证书client1.crt和私钥文件client1.key上传到新目录。测试验证在shell界面,通过curl命令验证认证功能

2.5.2. 浏览器方式功能测试

  1. 浏览器导入客户端证书(以chrome为例说明)

  1. 测试验证在浏览器中输入地址,可以正常访问网站
文章来自个人专栏
文章 | 订阅
0条评论
0 / 1000
请输入你的评论
1
1