如何在清漆中做https?
How to do https in varnish?
我需要从客户端接受 https,我的后端也是 https。
如何在varnish中监听HTTPS并在HTTPS中转发请求到后端?
VARNISH_LISTEN_PORT=443
# how to add SSL certs?
varnish,至少开源版本是不支持HTTPS的。 Varnish Software 不久前发布了 Hitch,可用于在 Varnish 缓存代理前终止 HTTPS。我见过的许多设置也使用 nginx 以清漆作为后端的 SSL 终止。
我刚刚发现商业产品 Varnish Plus 实际上支持 TLS/SSL。
Hitch 是开源的,实际上支持 SSL 终止,可以用作将 HTTP 服务器转换为 HTTPS 服务器的代理。
以下是指南和示例,这里 openstack 运行 HTTP 已转换为 HTTPS 以进行所有通信。
创建VM(将用作代理节点):
在代理节点下载故障:
git 克隆 https://github.com/varnish/hitch.git
安装 HITCH,如下所示:
要安装hitch,可以参考官方的文档link,下面是命令。
$ ./bootstrap
$ ./配置
$制作
$ sudo make install
HITCH安装成功后,为代理节点准备证书(.pem文件)
使用 HITCH 启动代理,如下所示。
[root@testing_tools hitch]# hitch --tls -f "[*]:443" -b "[2001::29]:80" devstack.pem -u挂钩-g挂钩
[root@testing_tools hitch]# hitch --tls -f "[*]:9696" -b "[2001::29]:9696" devstack.pem -u hitch -g hitch
在端点的 Openstack 端进行以下更改(keystone 数据库)。 IE。为 HTTPS 配置所有端点。
mysql> select * 来自端点;
+--------------------------------+------------ ------+------------+-------------------------------- ---+-------------------------------------------- ---+--------+----------+----------+
|编号 | legacy_endpoint_id |界面 | service_id | url |额外 |已启用 | region_id |
+--------------------------------+------------ ------+------------+-------------------------------- ---+-------------------------------------------- ---+--------+----------+----------+
| 01c5333a2edf4505a14987770a762a8a |空 | public | f883c99bc5514dd6b8d3b417fb8a121c | https://devstackipv6/volume/v1/$(project_id)秒 | {} | 1 |区域一 |
| 1766694b9c5b4814a421a074d44b2d32 |空 |管理员 | 68a37fb109aa4f878f893fc87c262f94 | https://devstackipv6/heat-api-cfn/v1 | {} | 1 |区域一 |
| 29e5c59cd68443d6beb96272b2d57143 |空 |内部 | eff63e56a0264b08a4cc9dc5de4ac8c4 | https://devstackipv6/heat-api/v1/$(project_id)秒| {} | 1 |区域一 |
+--------------------------------+------------ ------+------------+-------------------------------- ---+-------------------------------------------- ---+--------+--------+----------+
我需要从客户端接受 https,我的后端也是 https。
如何在varnish中监听HTTPS并在HTTPS中转发请求到后端?
VARNISH_LISTEN_PORT=443
# how to add SSL certs?
varnish,至少开源版本是不支持HTTPS的。 Varnish Software 不久前发布了 Hitch,可用于在 Varnish 缓存代理前终止 HTTPS。我见过的许多设置也使用 nginx 以清漆作为后端的 SSL 终止。
我刚刚发现商业产品 Varnish Plus 实际上支持 TLS/SSL。
Hitch 是开源的,实际上支持 SSL 终止,可以用作将 HTTP 服务器转换为 HTTPS 服务器的代理。
以下是指南和示例,这里 openstack 运行 HTTP 已转换为 HTTPS 以进行所有通信。
创建VM(将用作代理节点):
在代理节点下载故障: git 克隆 https://github.com/varnish/hitch.git
安装 HITCH,如下所示: 要安装hitch,可以参考官方的文档link,下面是命令。
$ ./bootstrap
$ ./配置
$制作
$ sudo make installHITCH安装成功后,为代理节点准备证书(.pem文件)
使用 HITCH 启动代理,如下所示。
[root@testing_tools hitch]# hitch --tls -f "[*]:443" -b "[2001::29]:80" devstack.pem -u挂钩-g挂钩
[root@testing_tools hitch]# hitch --tls -f "[*]:9696" -b "[2001::29]:9696" devstack.pem -u hitch -g hitch
在端点的 Openstack 端进行以下更改(keystone 数据库)。 IE。为 HTTPS 配置所有端点。
mysql> select * 来自端点; +--------------------------------+------------ ------+------------+-------------------------------- ---+-------------------------------------------- ---+--------+----------+----------+ |编号 | legacy_endpoint_id |界面 | service_id | url |额外 |已启用 | region_id | +--------------------------------+------------ ------+------------+-------------------------------- ---+-------------------------------------------- ---+--------+----------+----------+ | 01c5333a2edf4505a14987770a762a8a |空 | public | f883c99bc5514dd6b8d3b417fb8a121c | https://devstackipv6/volume/v1/$(project_id)秒 | {} | 1 |区域一 | | 1766694b9c5b4814a421a074d44b2d32 |空 |管理员 | 68a37fb109aa4f878f893fc87c262f94 | https://devstackipv6/heat-api-cfn/v1 | {} | 1 |区域一 | | 29e5c59cd68443d6beb96272b2d57143 |空 |内部 | eff63e56a0264b08a4cc9dc5de4ac8c4 | https://devstackipv6/heat-api/v1/$(project_id)秒| {} | 1 |区域一 | +--------------------------------+------------ ------+------------+-------------------------------- ---+-------------------------------------------- ---+--------+--------+----------+