linux 下nginx 集群CAS单点登录实现
1.单点登录服务器CAS应用配置于tomcat下。
1)key生成:
keytool -genkey -alias mycas -keyalg RSA -keysize 2048 -keystore /mnt/disk1/keys/mycas.keystore
keytool -export -file /mnt/disk1/keys/mycas.crt -alias mycas -keystore /mnt/disk1/keys/mycas.keystore
2)CAS发布tomcat中server.xml中配置
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="/mnt/disk1/keys/mycas.keystore" keystorePass="123456" />
3)如果不使用集群,通过java端通过CAS client直接连接此CAS服务器,则需要在jdk中导入相应的证书文件:
keytool -delete -alias mycas -keystore /usr/local/jdk/jre/lib/security/cacerts //删除证书
keytool -import -keystore /usr/local/jdk/jre/lib/security/cacerts -file /mnt/disk1/keys/mycas.crt -alias myca //导入证书
2.nginx负载多个tomcat
1)nginx ssl证书生成
cd /mnt/disk1/nginxkeys 进入证书存储文件夹
openssl genrsa -des3 -out server.key 1024 创建服务器私钥
openssl req -new -key server.key -out server.csr 创建证书签名请求(CSR)
[
Country Name (2 letter code) [GB]:CN
State or Province Name (full name) [Berkshire]:BJ
Locality Name (eg, city) [Newbury]:BJ
Organization Name (eg, company) [My Company Ltd]:test
Organizational Unit Name (eg, section) []:test
Common Name (eg, your name or your server's hostname) []:cas112.test.com(在使用casclient时候必须在这里填入域名,否则报错)
Email Address []:l@test.com
]
cp server.key server.key.org 在加载SSL支持的Nginx并使用上述私钥时除去必须的口令
openssl rsa -in server.key.org -out server.key 在加载SSL支持的Nginx并使用上述私钥时除去必须的口令
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt 使用上述私钥导出CSR,CRT签名证书:
2)nginx https接口配置
upstream cas_server_ssl {
#ip_hash;
server localhost:8443;
}
server {
listen 443;
server_name localhost;
ssl on;
ssl_certificate /mnt/disk1/nginx_keys/server.crt;
ssl_certificate_key /mnt/disk1/nginx_keys/server.key;
location / {
root html;
index index.html index.htm;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass https://cas_server_ssl;
}
}
3.客户端配置
同跟不使用nginx集群配置类似,将server.crt导入客户端jdk。
keytool -delete -alias nginx_cas_crt -keystore /usr/local/jdk/jre/lib/security/cacerts //删除证书
keytool -import -keystore "$JAVA_HOME/jre/lib/security/cacerts" -file /mnt/disk1/nginx_keys/server.crt -alias nginx_cas_crt //导入证书
linux 下nginx 集群CAS单点登录实现的更多相关文章
- Linux下Ganglia集群监控安装、配置笔记
http://www.blogjava.net/henry14/archive/2011/12/17/ganglia.html 枪声依旧 Linux下Ganglia集群监控安装.配置笔记 Gangli ...
- (转)linux下weblogic12c集群的安装部署
本文介绍linux下weblogic12c集群的安装部署,版本12c,其他版本操作会有所不同,但其大体操作基本都是一样的 关于weblogic的集群,在此就不多做介绍了,如果有不了解的朋友可以百度搜索 ...
- springcloud微服务基于redis集群的单点登录
springcloud微服务基于redis集群的单点登录 yls 2019-9-23 简介 本文介绍微服务架构中如何实现单点登录功能 创建三个服务: 操作redis集群的服务,用于多个服务之间共享数据 ...
- Linux下zookeeper集群搭建
Linux下zookeeper集群搭建 部署前准备 下载zookeeper的安装包 http://zookeeper.apache.org/releases.html 我下载的版本是zookeeper ...
- Nginx --Windows下和Linux下搭建集群小记
nginx: Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器 特点: 反向代理 负载均衡 动静分离... 反向代理 : 先来了解正向代理:需要我们用户 ...
- Linux下Hadoop集群环境的安装配置
1)安装Ubuntu或其他Linux系统: a)为减少错误,集群中的主机最好安装同一版本的Linux系统,我的是Ubuntu12.04. b)每个主机的登陆用户名也最好都一样,比如都是hadoop,不 ...
- Linux 下Redis集群安装部署及使用详解(在线和离线两种安装+相关错误解决方案)
一.应用场景介绍 本文主要是介绍Redis集群在Linux环境下的安装讲解,其中主要包括在联网的Linux环境和脱机的Linux环境下是如何安装的.因为大多数时候,公司的生产环境是在内网环境下,无外网 ...
- Linux 下redis 集群搭建练习
Redis集群 学习参考:https://blog.csdn.net/jeffleo/article/details/54848428https://my.oschina.net/iyinghui/b ...
- Linux下solr集群搭建
第一步:创建四个tomcat实例.每个tomcat运行在不同的端口.8180.8280.8380.8480 第二步:部署solr的war包.把单机版的solr工程复制到集群中的tomcat中. 第三步 ...
随机推荐
- 分布式 cephfs
参考链接: http://docs.ceph.com/docs/mimic/cephfs/
- 工具篇-Spring boot JPA多数据源
写这篇博文是因为这个东西坑太多,首先说明下边实现的多数据源不是动态切换的,应该算是静态的. 坑一.pom文件 pom中spring boot以及mysql connector的版本一定要注意. < ...
- Java多线程之ReentrantLock与Condition
一.ReentrantLock 1.ReentrantLock简介 ReentrantLock是一个可重入的互斥锁,又被称为“独占锁”.ReentrantLock 类实现了 Lock ,它拥有与 sy ...
- 国内可访问的稳定docker镜像
可参考:https://yeasy.gitbooks.io/docker_practice/content/install/mirror.html 但在debian 9上进行相应配置后,在pull镜像 ...
- Django rest framework 源码分析 (1)----认证
一.基础 django 2.0官方文档 https://docs.djangoproject.com/en/2.0/ 安装 pip3 install djangorestframework 假如我们想 ...
- U盘安装CentOS系统、raid5制作以及nohup的使用
最近折腾服务器,用U盘安装了系统,总结了一些避坑措施: 下载UltraISO工具,用来刻盘 从centos官网下载ISO镜像,然后刻盘 关键是在你进入系统安装界面后,如下: 选中第一项,按tab键(看 ...
- Django初印象之视图(view)
一.view的初印象 一个视图函数(类),简称视图.我们发起web请求时,返回的web响应.[大家约定成俗将视图放置在项目(project)或应用程序(app)目录中的名为views.py的文件中.] ...
- Django 模板系统
Django模板系统 常用语法 {{}} 变量相关 {%%} 逻辑相关 变量 格式 {{ 变量名 }} 命名规则 包括任何字母数字以及下划线 ("_")的组合 变量名称中不能有空格 ...
- JS获取字符串实际长度(包含汉字)的简单方法
方法一: var jmz = {}; jmz.GetLength = function(str) { ///<summary>获得字符串实际长度,中文2,英文1</summary&g ...
- 帝国cms更新报错解决办法
帝国cms更新,经常会报以下的错误: PHP Warning: array_merge(): Argument #2 is not an array in D:\wwwroot\www.536831 ...