apache配置多https域名对应单个证书和多个不同的https域名对应多个不同的证书

简介:

如果需要设置多个SSL站点,在Apache 2.2以上版本中是开启SSL模块后是直接支持SNI的,添加NameVirtualHost *:443和SSLStrictSNIVHostCheck off两句后,就可以像http虚拟站点一样设置多个https虚拟站点;
多个https虚拟站点可以分别指向多个不同的证书文件,其中第一个默认https站点是在后续https站点配置找不到的时候自动使用的默认配置;

生产环境中apache版本:
[root@localhost ~]# httpd -v
Server version: Apache/2.2.15 (Unix)
Server built: Jan 12 2017 17:09:39

ssl.conf配置文件中配置多https域名对应单个证书和多个不同的https域名对应多个不同的证书,其中第一个默认https站点是在后续https站点配置找不到的时候自动使用的默认配置;

[root@localhost ~]# cat /etc/httpd/conf.d/ssl.conf|egrep -v "^#|^$"
LoadModule ssl_module modules/mod_ssl.so
Listen 443
NameVirtualHost :443
SSLStrictSNIVHostCheck off
SSLPassPhraseDialog builtin
SSLSessionCache shmcb:/var/cache/mod_ssl/scache(512000)
SSLSessionCacheTimeout 300
SSLMutex default
SSLRandomSeed startup file:/dev/urandom 256
SSLRandomSeed connect builtin
SSLCryptoDevice builtin
<VirtualHost default:443>
DocumentRoot "/data/code"
ServerName en.lsj.com:443
ServerName uo.kvc.com:443
ServerName n.purdf.com:443
ServerName a.wifth.com:443
ErrorLog logs/ssl_error_log
LogLevel warn
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
SSLCertificateFile /etc/pki/tls/certs/ca.b23c.com.crt
SSLCertificateKeyFile /etc/pki/tls/private/ca.b23c.com.key
SSLCertificateChainFile /etc/pki/tls/certs/root_bundle.crt
<Files ~ ".(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
<Directory "/var/www/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
SetEnvIf User-Agent ".
MSIE." \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost> 
<VirtualHost 
:443>
ServerName e.diogv.com
DocumentRoot "/data/code"
LogLevel warn
ErrorLog logs/ssl_error_log
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
#注意以下证书文件路径
SSLCertificateFile /etc/pki/tls/certs/e.diogv.com.crt
SSLCertificateKeyFile /etc/pki/tls/private/e.diogv.com.key
SSLCertificateChainFile /etc/pki/tls/certs/e.diogv.com_bundle.crt

<Files ~ ".(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
<Directory "/var/www/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
SetEnvIf User-Agent ".MSIE." \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost> 
##########################################
<VirtualHost :443>
ServerName e.fst01w.com
DocumentRoot "/data/code"
LogLevel warn
ErrorLog logs/ssl_error_log
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
#注意以下证书文件路径
SSLCertificateFile /etc/pki/tls/certs/e.fst01w.com.crt
SSLCertificateKeyFile /etc/pki/tls/private/e.fst01w.com.key
SSLCertificateChainFile /etc/pki/tls/certs/e.fst01w.com_bundle.crt
<Files ~ ".(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
<Directory "/var/www/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
SetEnvIf User-Agent ".
MSIE." \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
############################################
<VirtualHost 
:443>
ServerName e.i12erq.com
DocumentRoot "/data/code"
LogLevel warn
ErrorLog logs/ssl_error_log
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
#注意以下证书文件路径
SSLCertificateFile /etc/pki/tls/certs/e.i12erq.com.crt
SSLCertificateKeyFile /etc/pki/tls/private/e.i12erq.com.key
SSLCertificateChainFile /etc/pki/tls/certs/e.i12erq.com_bundle.crt
<Files ~ ".(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
<Directory "/var/www/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
SetEnvIf User-Agent ".MSIE." \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
##########################################
<VirtualHost :443>
ServerName e.j34ja.com
DocumentRoot "/data/code"
LogLevel warn
ErrorLog logs/ssl_error_log
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
#注意以下证书文件路径
SSLCertificateFile /etc/pki/tls/certs/e.j34ja.com.crt
SSLCertificateKeyFile /etc/pki/tls/private/e.j34ja.com.key
SSLCertificateChainFile /etc/pki/tls/certs/e.j34ja.com_bundle.crt
<Files ~ ".(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
<Directory "/var/www/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
SetEnvIf User-Agent ".
MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>

###################################
<VirtualHost :443>
ServerName e.mi56v.com
DocumentRoot "/data/code"
LogLevel warn
ErrorLog logs/ssl_error_log
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
#注意以下证书文件路径
SSLCertificateFile /etc/pki/tls/certs/e.mi56v.com.crt
SSLCertificateKeyFile /etc/pki/tls/private/e.mi56v.com.key
SSLCertificateChainFile /etc/pki/tls/certs/e.mi56v.com_bundle.crt
<Files ~ ".(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
<Directory "/var/www/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
SetEnvIf User-Agent ".
MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>



 本文转自 wjw555 51CTO博客,原文链接:http://blog.51cto.com/wujianwei/2049132

相关文章
|
12月前
|
人工智能 Ubuntu 前端开发
Dify部署全栈指南:AI从Ubuntu配置到HTTPS自动化的10倍秘籍
本文档介绍如何部署Dify后端服务及前端界面,涵盖系统环境要求、依赖安装、代码拉取、环境变量配置、服务启动、数据库管理及常见问题解决方案,适用于开发与生产环境部署。
1930 1
|
应用服务中间件 Linux 网络安全
Centos 8.0中Nginx配置文件和https正书添加配置
这是一份Nginx配置文件,包含HTTP与HTTPS服务设置。主要功能如下:1) 将HTTP(80端口)请求重定向至HTTPS(443端口),增强安全性;2) 配置SSL证书,支持TLSv1.1至TLSv1.3协议;3) 使用uWSGI与后端应用通信(如Django);4) 静态文件托管路径设为`/root/code/static/`;5) 定制错误页面(404、50x)。适用于Web应用部署场景。
1177 87
|
11月前
|
网络安全 开发工具 git
在GitLab CI中同步HTTPS仓库地址的yaml配置
最后,提交并推送 `.gitlab-ci.yml`文件到您的GitLab仓库。GitLab CI/CD将自动识别这个文件,并在每次推送到 `master`分支时执行定义的同步任务。
527 16
|
域名解析 应用服务中间件 Shell
使用nps配置内网穿透加域名解析
使用nps配置内网穿透加域名解析
1384 77
|
网络协议
【Azure App Service】App Service 如何配置私网域名以及证书呢?
本文解答了关于 Azure App Service 如何配置私网域名及证书的问题。App Service 不支持私网域名,自定义域名需配置在公共 DNS 服务器上。文章引用官方文档详细说明了映射自定义 DNS 的步骤,并附带参考资料链接,帮助用户深入了解相关配置方法。
439 6
|
域名解析 监控 网络协议
slb配置域名注意事项
slb配置域名注意事项
470 11
|
域名解析 监控 安全
slb配置检查域名说明注意事项
slb配置检查域名说明注意事项
432 5
|
负载均衡 安全 网络安全
slb配置健康检查域名
slb配置健康检查域名
394 4
|
负载均衡 应用服务中间件
slb何时需要配置健康检查域名
slb何时需要配置健康检查域名
343 3
|
安全 网络协议 网络安全
怎么给ip地址配置https访问
为了配置公网IP地址的HTTPS访问,首先需明确需求并选择受信任的证书颁发机构(如JoySSL)。接着,在JoySSL官网注册并登录,填写特定注册码230922以获取免费IP证书的测试权限。提交证书申请时,填写IP地址及相关验证信息,并完成IP地址验证。验证通过后,下载证书文件。最后,使用浏览器访问IP地址,检查安全连接标志,确保无证书错误。通过以上步骤,可成功配置IP地址的HTTPS访问,提升数据传输安全性和可信度。

热门文章

最新文章

推荐镜像

更多