SNI功能在NetScaler上的实现

来源  https://raynorli.com/2018/09/11/sni-on-netscaler/

现网中经常是一台主机上运行多个Web站点,如果启用了HTTPS站点,则需要在SSL握手阶段就区分出来用户希望访问的是哪个站点,这样才可以针对性的将证书回复给客户端来完成验证,那么此时就需要用到了SNI功能。
NetScaler从9.2开始前端Vserver就支持SNI功能,但是直到11.1后端Service、ServiceGroup才支持SNI功能,而且还有一定的问题,后面会说到。

SNI工作流程

SNI功能在NetScaler上的实现-LMLPHP

SNI配置参考

https://support.citrix.com/article/CTX205283

后端Service的SNI配置

当NetScaler作为服务器端时,上面可以绑多张证书来,通过Client Hello中的SNI字段来判断客户端需要访问哪个Web站点并返回相对应的服务器证书。
但是当NetScaler作为客户端时,Service发送的SNI其实可能有很多的可能性,但是我们只能在Service配置一个commonName来区分,这意味着我们需要在LB Vserver的前面首先通过CS Vserver将不同的Web站点请求的区分开来,才可以实现后端Service的SNI功能。

=============== End

05-11 20:13