Azure AppGateway 证书问题
最近处理一个应用程序网关的工单,突发其想,后端池中的两台计算机可否一台Windows,另外一台Linux。网上搜罗一番,还真可以。其实核心点在于证书格式不同:
Windows : .pfx、.cer
Linux:.crt、.key
本次实验目标:
以下截图中两台计算机,一台Windows和一台Linux计算机,后端运行状态都为“正常”
分析这个需求:
两种解决方案:
Linux虚拟机apache使用windows的证书(更多的都是Linux内部配置)
以Ubuntu14.04为例子需要修改,default-ssl.conf
修改以下红框为实际路径
由于本环境中appgw已经上传了IIS自签名证书,所以需要更换证书。
以后操作使用第二种方法:
第一步生成IIS可用证书
Apache使用的SSL证书是.crt格式,如果你的网站从Apache换到了windows主机的iis上,这个时候要将原来的证书放到iis上使用,是不能够直接使用这个证书的,你首先要将.crt格式的证书转换成.pfx格式:
可以通过一句命令在Linux主机上完成转换
openssl pkcs12 -export -out ssl2_me.pfx -inkey ssl2_me.key -in ssl2_me.crt
运行命令后,将会提示你输入两次相同的密码,你可以设置一个密码,你在iis上导入证书的时候将会用到。
上面命令中的ssl2_me.crt 替换成你自己的证书文件名, ssl2_me.key替换成你自己的key文件名,ssl2_me.pfx替换成你自己的pfx证书名。
还有另外一个方法在线转换crt格式 to pfx格式 ,
https://ssl4less.eu/ssl-tools/convert-certificate.html
Windows计算机操作
· 下载安装openssl
这里我们直接使用安装包进行安装(也可自己编译),选择对应版本进行下载下载。
运行安装程序Win64OpenSSL-1_0_2e.exe,将openssl安装到C:\OpenSSL-Win64。
安装完成后,可以在控制台运行如下指令,来测试是否安装成功。
openssl version
如果返回openssl版本号(”OpenSSL 1.0.2e 3 Dec 2015”),则表示安装成功。
合成.pfx证书
将私钥文件(server.key)和服务器crt证书文件(server.crt ),放到openssl安装目录的bin目录下。
控制台也进到此目录下,然后执行下面指令。
openssl pkcs12 -export -out server.pfx -inkey server.key -in server.crt
然后再看bin目录下面多了一个server.pfx 文件,即为生成的pfx证书文件。
以上,将pfx导入到IIS后,就可以进行绑定了。
1. 第二步更换appgw证书
ARM APP GW在门户上不支持更换证书的操作,但是可以使用Azure Powershell更换证书,下面讲述操作步骤
2. Portal验证
成功完成。
原文地址:http://blog.51cto.com/286722/2074150