apache+jk+tomcat+ssl的https改造
项目背景
公司项目要进行https的改造,目前在测试环境搭建了一下,参考了网上的例子(http://blog.csdn.net/whumr1/article/details/7804992)
这里把主要的步骤在这里列一下:
首先搭建集群参考我的以前文章:http://www.cnblogs.com/aishangyizhihu/p/7527162.html
接下来说ssl的搭建
1、证书的也没有自生成,直接到腾讯申请的免费ca证书,不赘述(https://cloud.tencent.com/document/product/400/4143#3.-iis-.E8.AF.81.E4.B9.A6.E9.83.A8.E7.BD.B2)
2、apache部分
1)安装OpenSSL
yum install mod_ssl openssl
2)
修改apache/httpd.conf,放开Include conf/extra/httpd-ssl.conf的注释,如果没有自己添加一下,网上把这个文件下载一下即可
找到VirtualHost,修改为如以下内容
<VirtualHost 0.0.0.0:443>
DocumentRoot "/var/www/html"(自己的根目录)
ServerName www.domain.com(改成自己的域名)
JkMount /* loadbalancer_a#配置转发地址,和workder.properties配合使用,把mod_jk.conf里面的地址转发复制一份放到这里,JkWorkersFile不需要,加上就报错了
SSLEngine on
SSLCertificateFile /usr/local/apache/conf/2_www.domain.com_cert.crt(自己证书存放地)
SSLCertificateKeyFile /usr/local/apache/conf/3_www.domain.com.key(自己证书存放地)
SSLCertificateChainFile /usr/local/apache/conf/1_root_bundle.crt(自己证书存放地)
</VirtualHost>
到此为止,配置基本完成。如果想禁止http访问,只开放https的话,把apache/httpd.conf下面的Listen 80注掉就可以了,这样就只开放了443的https端口
3、tomcat部分
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true" keystoreFile="d:/tomcat.keystore" keystorePass="123456"
clientAuth="false" sslProtocol="TLS" />
这个8443端口是后放开的,相当于有了4个端口,即在原先的三个端口的基础上,又把这个端口注释打开了,这里的844即原先8080和8009的转发重定向端口
4、lvs部分
只要增加转发的端口443即可,例如:
virtual_server 192.168.1.100 443 {
delay_loop 6
lb_algo rr
lb_kind DR
persistence_timeout 7200
protocol TCP
real_server 192.168.1.30 443 {
weight 1
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
}
apache+jk+tomcat+ssl的https改造的更多相关文章
- 基于Apache的Tomcat负载均衡和集群(2)
反向代理负载均衡 (Apache+JK+Tomcat) 使用代理服务器可以将请求转发给内部的Web服务器,让代理服务器将请求均匀地转发给多台内部Web服务器之一上,从而达到负载均衡的目的.这种代理方式 ...
- Let's Encrypt+Apache+Tomcat实现免费HTTPS
Let's Encrypt是一个免费SSL证书发行项目,发行的证书已经获得主流浏览器的支持,亲测谷歌浏览器(桌面版).火狐浏览器(桌面版).UC浏览器(手机版).360浏览器(手机版)支持,其它的暂没 ...
- Springboot 配置 ssl 实现HTTPS 请求 & Tomcat配置SSL支持https请求
SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议.TLS与 ...
- How to Move SSL certificate from Apache to Tomcat
https://www.sslsupportdesk.com/how-to-move-ssl-certificate-from-apache-to-tomcat/ Apache uses x509 p ...
- 结合Apache和Tomcat实现集群和负载均衡 JK 方式 2 (转)
本文Apache+Tomcat集群配置 基于最新的Apache和Tomcat,具体是2011年4月20日最新的Tomcat和Apache集群和负载均衡配置. 准备环境 Apache Apa ...
- windows Apache 环境下配置支持HTTPS的SSL证书
windows Apache 环境下配置支持HTTPS的SSL证书 1.准备工作 1)在设置Apache + SSL之前, 需要做: 安装Apache, 下载安装Apache时请下载带有SSL版本的A ...
- Apache与Tomcat三种连接方式JK、http_proxy、ajp_proxy
为什么要让Apache与Tomcat之间进行连接?事实上Tomcat本身已经提供了HTTP服务,该服务默认的端口是8080,也可以改为80.既然Tomcat本身已经可以提供动态加静态web服务,为什么 ...
- 阿里云申请免费SSL证书,并配置到Tomcat,实现https访问
第一步:阿里云免费https证书安装 https://jingyan.baidu.com/article/fdffd1f8619481f3e98ca196.html 第二步:阿里云申请免费SSL证书 ...
- tomcat+apache+jk
安装JDK下载地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html安装 rpm ...
随机推荐
- ios原生项目内嵌u3d工程
本文一反常态,目标是把u3d工程以framewWork形式 内嵌原生IOS项目 1.xcode中新建Cocoa Touch FrameWork.取名u3dFrameWork 2.把u3d导出的xcod ...
- 【Dubbo 源码解析】05_Dubbo 服务发现&引用
Dubbo 服务发现&引用 Dubbo 引用的服务消费者最终会构造成一个 Spring 的 Bean,具体是通过 ReferenceBean 来实现的.它是一个 FactoryBean,所有的 ...
- unity(2017.3) C# 常用API
1. 获取物体的 GetComponent playerRigidbody = GetComponent<Rigidbody> (); GetComponent<Animatro&g ...
- HBuilder控制台集成命令提示符(终端/CMD)功能
参考:https://jingyan.baidu.com/album/6b97984dc9cda31ca2b0bf00.html?picindex=3
- D5 F
最近见到了好多跟排列有关的状压dp,好像略微会了一点,用 dp[i][s][j]表示第i位状态为s选择j的方案数,然后递推. 早起大概可以提高人的智商但是会导致人甚至不清,初始化写错了自闭了半个小时 ...
- perl 递归删除目录和目录中的文件
#!/usr/bin/perl use autodie; use utf8; use Encode qw(decode encode); sub del_dir{ my $path = shift @ ...
- Educational Codeforces Round 4
612A - The Text Splitting 20171121 简单字符串处理题 #include<stdlib.h> #include<stdio.h> #inc ...
- PHP版本MS17-010检测小脚本
内网渗透的时候有点用处,可以检测MS17-010的漏洞并获取操作系统信息,配合BURP可批量检测,纯socket发包,无需其他扩展. <?php //根据巡风python代码翻译成PHP代码 / ...
- eclipse测试链接sql server2008 数据库
注:在测试连接数据库之前必须保证SQL Server 2008是采用SQL Server身份验证方式而不是windows身份验证方式.如果在安装时选用了后者,则需要重新进行配置. 首先 使用命令行测试 ...
- 1.7Oob 静态成员
1)public class Exse3 { static int iCounter = 0; String name; boolean bGender = false; int iAge; doub ...