Haproxy实现https

haproxy可以实现https的证书安全,从用户到haproxy为https,从haproxy到后端服务器用http通信 ,但是基于性能考虑,生产中证书都是在后端服务器比如nginx上实现。

配置HAProxy支持https协议,支持ssl会话:

bind *:443 ssl crt /PATH/TO/SOME_PEM_FILE

指令 crt 后证书文件为PEM格式,需要同时包含证书和所有私钥:

cat demo.key demo.crt > demo.pem

把80端口的请求重向定443:

bind *:80 redirect scheme https if !{ ssl_fc }

一、实验环境

haproxy:172.25.254.100

RS1:172.25.254.10

RS2:172.25.254.20

web服务:nginx

关闭防火墙和SELinux

systemctl stop firewalld

setenforce 0

二、实现步骤

1、制作证书

haproxy:

root@haproxy \~\]# mkdir -p /etc/haproxy/certs \[root@haproxy \~\]# openssl req -newkey rsa:2048 -nodes -sha256 --keyout /etc/haproxy/certs/ouqisheng.org.key -x509 -days 365 -out /etc/haproxy/certs/ouqisheng.org.crt \[root@haproxy \~\]# cat /etc/haproxy/certs/ouqisheng.org.key /etc/haproxy/certs/ouqisheng.org.crt \> /etc/haproxy/certs/ouqisheng.pem

2、配置haproxy

vim /etc/haproxy/haproxy.cfg

重启服务:

systemctl restart haproxy.service

3、测试结果

添加本地解析:

vim /etc/hosts

测试:

相关推荐
NEXT062 小时前
TCP 与 UDP 核心差异及面试高分指南
前端·网络协议·面试
NEXT062 小时前
HTTP 协议演进史:从 1.0 到 2.0
前端·网络协议·面试
苏渡苇5 小时前
轻量化AI落地:Java + Spring Boot 实现设备异常预判
java·人工智能·spring boot·后端·网络协议·tcp/ip·spring
一路往蓝-Anbo6 小时前
第 2 章:全能开发环境与交叉编译工具链构建
stm32·单片机·嵌入式硬件·网络协议
hoududubaba9 小时前
ORAN级联模式中的多小区场景
网络·网络协议
funnycoffee12310 小时前
multicast 组播流必须用udp吗? tcp为何不行
网络协议·tcp/ip·udp·组播
Zach_yuan21 小时前
数据链路层核心技术解析:以太网与ARP协议
服务器·网络·网络协议
天荒地老笑话么1 天前
Bridged 下 IP 冲突:冲突识别与修复
网络·网络协议·tcp/ip
航哥的女人1 天前
基于TCP的socket编程
网络·网络协议·tcp/ip
之歆1 天前
Varnish HTTP 缓存服务器完全指南
服务器·http·缓存