科技常识:apache中使用mod_gnutls模块实现多个SSL站点配置(多个HTTPS协议的虚拟主机)

2021-03-17 20:00:10
导读 今天小编跟大家讲解下有关apache中使用mod_gnutls模块实现多个SSL站点配置(多个HTTPS协议的虚拟主机) ,相信小伙伴们对这个话题应该也很

今天小编跟大家讲解下有关apache中使用mod_gnutls模块实现多个SSL站点配置(多个HTTPS协议的虚拟主机) ,相信小伙伴们对这个话题应该也很关注吧,小编也收集到了有关apache中使用mod_gnutls模块实现多个SSL站点配置(多个HTTPS协议的虚拟主机) 的相关资料,希望小伙伴会喜欢也能够帮助大家。

在apache的环境下该如何配置多个HTTPS虚拟主机呢?利用的原理的都是同一个,也就是SNI。基于域名的虚拟主机,即共享同一个IP地址和端口的HTTPS虚拟主机。

SNI―服务器名称指示,是一个TLS的扩展,它使得启用SSL的基于域名的虚拟主机的配置成为可能。打破了每个HTTPS的虚拟主机需要一个IP地址的要求。因此,成本大大降低,因为所有的HTTPS虚拟主机可以共享相同的IP地址和端口,使HTTPS Web服务的更简单。

在apache环境下,需要使用mod_gnutls来实现同一个IP上配置多个HTTPS主机。下面来看看实现过程:

mod_gnutls的网址参见:https://mod.gnutls.org

1. 安装mod_gnutls

复制代码 代码如下:# yum install httpd-devel gnutls-devel# wget http://www.outoforder.cc/downloads/mod_gnutls/mod_gnutls-0.2.0.tar.bz2# tar -xjvf mod_gnutls-0.2.0.tar.bz2# cd mod_gnutls-0.2.0# ./configure --prefix=/usr# make

如果要安装高版本的gnutls的话,需要先安装相对应的依赖包libnettle gmplib。下载地址:http://www.gnutls.org/download.html ftp://ftp.gnutls.org/gcrypt/gnutlsmod_gnutls模块依赖dhfile和rsafile文件.

3. 配置httpd.conf复制代码 代码如下:Listen 10.1.1.22:443LoadModule gnutls_module modules/mod_gnutls.soAddType application/x-x509-ca-cert .crtAddType application/x-pkcs7-crl .crlGnuTLSCache dbm"/var/cache/mod_gnutls_cache"GnuTLSCacheTimeout 300NameVirtualHost 10.1.1.22:443

创建回话缓存目录

复制代码 代码如下:# mkdir -m 0700 /var/cache/mod_gnutls_cache# chown nobody.nobody /var/cache/mod_gnutls_cache

4. 配置虚拟主机

复制代码 代码如下:<VirtualHost 10.1.1.22:443> ServerName :443 GnuTLSEnable on GnuTLSCertificateFile ./ssl/.public.cer GnuTLSKeyFile ./ssl/.private.key DocumentRoot"/data/wwwroot//webroot"</VirtualHost>

<VirtualHost 10.1.1.22:443> ServerName :443 GnuTLSEnable on GnuTLSCertificateFile ./ssl/.public.cer GnuTLSKeyFile ./ssl/.private.key DocumentRoot"/data/wwwroot//webroot"</VirtualHost>

这样访问每个虚拟主机都正常。

来源:爱蒂网

免责声明:本文由用户上传,如有侵权请联系删除!

猜你喜欢

最新文章