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

测试:

相关推荐
湖南罗泽南3 小时前
p2p网络介绍
网络·网络协议·p2p
heilai43 小时前
workerman的安装与使用
c++·websocket·http·php·phpstorm·visual studio code
有梦想的咕噜3 小时前
Secure Shell(SSH) 是一种网络协议
运维·网络协议·ssh
ClareXi3 小时前
react项目通过http调用后端springboot服务最简单示例
spring boot·react.js·http
wclass-zhengge12 小时前
Netty篇(WebSocket)
网络·websocket·网络协议
GGBondlctrl14 小时前
丹摩征文活动 |【网络原理】关于HTTP的进化之HTTPS的加密原理的那些事
网络·https·非对称加密·对称加密·中间人攻击
CDialog15 小时前
aws申请ssl证书的方法【该证书仅供aws】
服务器·网络协议·ssl
程序员小羊!15 小时前
HTTP&Tomcat&Servle之HTTP详解
网络协议·http·tomcat
Peter_chq16 小时前
【计算机网络】网络框架
linux·c语言·开发语言·网络·c++·后端·网络协议
hgdlip17 小时前
本地连接IP地址的自主设置指南‌
网络·网络协议·tcp/ip·本地连接