如何在清漆中做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 以进行所有通信。

  1. 创建VM(将用作代理节点):

  2. 在代理节点下载故障: git 克隆 https://github.com/varnish/hitch.git

    官方link:https://github.com/varnish/hitch

  3. 安装 HITCH,如下所示: 要安装hitch,可以参考官方的文档link,下面是命令。

    $ ./bootstrap
    $ ./配置
    $制作
    $ sudo make install

  4. HITCH安装成功后,为代理节点准备证书(.pem文件)

  5. 使用 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

  6. 在端点的 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 |区域一 | +--------------------------------+------------ ------+------------+-------------------------------- ---+-------------------------------------------- ---+--------+--------+----------+