Appache服务器上安装多个SSL证书教程

在前一篇文章中菠菜园分别分享了IIS服务器和Nginx服务器上安装多个SSL证书的教程,今天菠菜园继续分享在Appache服务器上实现多个网站https访问。

appache安装多个ssl证书

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

在apache环境下,需要使用mod_gnutls来实现同一个IP上配置多个HTTPS主机。下面来看看实现过程:mod_gnutls的网址参见:https://mod.gnutls.org

1、安装mod_gnutls:

  1. # yum install httpd-devel gnutls-devel
  2. # wget http://www.outoforder.cc/downloads/mod_gnutls/mod_gnutls-0.2.0.tar.bz2
  3. # tar -xjvf mod_gnutls-0.2.0.tar.bz2
  4. # cd mod_gnutls-0.2.0
  5. # ./configure --prefix=/usr
  6. # make

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

2.  apache加载mod_gnutls模块

  1. # cp mod_gnutls-0.2.0/src/.libs/libmod_gnutls.so /usr/lib/httpd/modules/mod_gnutls.so
  2. # cp mod_gnutls-0.2.0/data/{dh,rsa}file /etc/httpd/conf/

mod_gnutls模块依赖dhfile和rsafile文件.

3. 配置httpd.conf

  1. Listen 10.1.1.22:443
  2. LoadModule gnutls_module modules/mod_gnutls.so
  3. AddType application/x-x509-ca-cert .crt
  4. AddType application/x-pkcs7-crl    .crl
  5. GnuTLSCache dbm "/var/cache/mod_gnutls_cache"
  6. GnuTLSCacheTimeout 300
  7. NameVirtualHost 10.1.1.22:443

创建回话缓存目录

  1. # mkdir -m 0700 /var/cache/mod_gnutls_cache
  2. # chown nobody.nobody /var/cache/mod_gnutls_cache

4. 配置虚拟主机

  1. <VirtualHost 10.1.1.22:443>
  2.     ServerName www.ttlsa.com:443
  3.     GnuTLSEnable on
  4.     GnuTLSCertificateFile ./ssl/www.ttlsa.com.public.cer
  5.     GnuTLSKeyFile ./ssl/www.ttlsa.com.private.key
  6.     DocumentRoot "/data/wwwroot/www.ttlsa.com/webroot"
  7. </VirtualHost>
  8. <VirtualHost 10.1.1.22:443>
  9.     ServerName www.heytool.com:443
  10.     GnuTLSEnable on
  11.     GnuTLSCertificateFile ./ssl/www.heytool.com.public.cer
  12.     GnuTLSKeyFile ./ssl/www.heytool.com.private.key
  13.     DocumentRoot "/data/wwwroot/www.heytool.com/webroot"
  14. </VirtualHost>

最后重启httpd服务即可。

本篇文章来自运维生存空间,非菠菜园原创。原文地址:http://www.ttlsa.com/apache/multi-https-virtual-host-apache-mod_gnutls/

 

你想把广告放到这里吗?

发表评论

您必须 登录 才能发表留言!