使用haproxy为ocserv443配置端口复用

avatar
avatar
自然
408
文章
472
评论
2020年9月4日09:26:16 评论

自然一直使用ocserv的原因之一就是它的安全性,它默认采用了全程加密,非常适合企业等对网络安全性要求高的应用场景。

ocserv默认使用的端口是443(可以在配置文件当中修改成别的端口,由之而来的问题是客户端连接时需要指名端口好),和一般的web服务器使用的加密传输端口一致。

假设资源紧张不得已需要在一台机器上部署nginx以及ocserv服务,又不想给用户的体验造成影响(不加端口好访问)是不是两者不可兼得呢?

ocserv官方给出了使用haproxy的SNI解决方案。

简单来说就是nginx和ocserv使用两个不通的端口号而443端口给haproxy使用。

例如,ocserv使用9443,Web服务器使用8443.我们还假设Web服务器响应www.example.com,而vpn服务器响应vpn.example.com。这样便将流量重定向到适当服务器进行响应了。

frontend www-https
   bind 0.0.0.0:443
   mode tcp
   tcp-request inspect-delay 5s
   default_backend bk_ssl_default

backend bk_ssl_default
   mode tcp
   acl vpn-app req_ssl_sni -i vpn.example.com
   acl web-app req_ssl_sni -i www.example.com

   use-server server-vpn if vpn-app
   use-server server-web if web-app
   use-server server-vpn if !vpn-app !web-app

   option ssl-hello-chk
   server server-vpn 127.0.0.1:4443 send-proxy-v2
   server server-web 127.0.0.1:4444 check

最后,为了让ocserv获取有关传入会话的信息,我们在haproxy的配置中启用了代理协议(使用send-proxy-v2选项)。这要求ocserv的配置包含以下内容:

listen-proxy-proto = true

原则上自然博客建议单台服务器仅运行主要程序模块为最佳,能避免共用端口还是尽量避免吧。

weinxin
自然博客
快来关注一下,一个linux运维爱好者的个人博客!
avatar
  • 本文由 发表于 2020年9月4日09:26:16
全网通流量卡/物联卡 SIM专用上网卡
AlphaSSL 域名通配符型DV SSL证书
Anyconnect(ocserv)配置ssl安全加密证书 Anyconnect

Anyconnect(ocserv)配置ssl安全加密证书

Anyconnect(ocserv)属于ssl vpn的范畴,其优点是利用ssl证书对数据通道进行加密,以最大程度提升安全性。我们可以使用自签ssl证书也可以使用公共CA机构签发的ssl证书。 签发自...
Anyconnect(ocserv)从deb包安装 Anyconnect

Anyconnect(ocserv)从deb包安装

如果你还不了解这篇文章是干什么的?那不妨去阅读一下Anyconnect(ocserv)安装与使用手册目录。 阅读目录:https://www.wanvi.net/14587.html 完什么要用deb...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: