How to configure SSL
http://docs.codehaus.org/display/JETTY/How+to+configure+SSL#HowtoconfigureSSL-step3
13.4. 为cas配置SSL
在使用cas的时候,我们要为cas中央认证服务器和子系统都配置上SSL,以此来对他们之间交互的数据进行加密。这里我们将使用JDK中包含的keytool工具生成配置SSL所需的密钥。
13.4.1. 生成密钥
首先生成一个key store。
keytool -genkey -keyalg RSA -dname "cn=localhost,ou=family168,o=www.family168.com,l=china,st=beijing,c=cn" -alias server -keypass password -keystore server.jks -storepass password
我们会得到一个名为server.jks的文件,它的密码是password,注意cn=localhost 部分,这里必须与cas服务器的域名一致,而且不能使用ip,因为我们是在本地localhost测试cas,所以这里设置的就是 cn=localhost,在实际生产环境中使用时,要将这里配置为cas服务器的实际域名。
导出密钥
keytool -export -trustcacerts -alias server -file server.cer -keystore server.jks -storepass password
将密钥导入JDK的cacerts
keytool -import -trustcacerts -alias server -file server.cer -keystore "%JAVA_HOME%/jre/lib/security/cacerts" -storepass password
注意:此处JAVA_HOME要改为实际路径
这里需要把使用实际JDK的安装路径,我们要把密钥导入到JDK的cacerts中。
我们在ch103/certificates/下放了一个genkey.bat,这个批处理文件中已经包含了上述的所有命令,运行它就可以生成我们所需的密钥。
13.4.2. 为jetty配置SSL
jetty的配置可参考ch103中的pom.xml文件。
<connectors>
<connector implementation="org.mortbay.jetty.security.SslSocketConnector">
<port>9443</port>
<keystore>../certificates/server.jks</keystore>
<password>password</password>
<keyPassword>password</keyPassword>
<truststore>../certificates/server.jks</truststore>
<trustPassword>password</trustPassword>
<wantClientAuth>true</wantClientAuth>
<needClientAuth>false</needClientAuth>
</connector>
</connectors>
<systemProperties>
<systemProperty>
<name>javax.net.ssl.trustStore</name>
<value>../certificates/server.jks</value>
</systemProperty>
<systemProperty>
<name>javax.net.ssl.trustStorePassword</name>
<value>password</value>
</systemProperty>
</systemProperties>
13.4.3. 为tomcat配置SSL
要运行支持SSL的tomcat,把server.jks文件放到tomcat的conf目录下,然后把下面的连接器添加到server.xml文件中。
不同版本tomcat此处配置不同,找到port="8443",去掉注释,补填上证书信息即可
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="${catalina.home}/conf/server.jks"
keystoreType="JKS" keystorePass="password"
truststoreFile="${catalina.home}/conf/server.jks"
truststoreType="JKS" truststorePass="password"
/>
如果你希望客户端没有提供证书的时候SSL链接也能成功,也可以把clientAuth设置成want。
如果你希望客户端也必须提供证书SSL链接才能成功,可以把clientAuth设置成true。
可以同时配置https和http连接
<configuration>
<contextPath>/cas</contextPath>
<connectors>
<connector implementation="org.mortbay.jetty.security.SslSocketConnector">
<port>8888</port>
<keystore>../certificates/server.jks</keystore>
<password>password</password>
<keyPassword>password</keyPassword>
<truststore>../certificates/server.jks</truststore> <!-- check the path,项目根路径下 -->
<trustPassword>password</trustPassword>
<wantClientAuth>true</wantClientAuth>
<needClientAuth>false</needClientAuth>
</connector>
<connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
<!-- 设置端口8081 -->
<port>8081</port>
</connector>
</connectors>
<systemProperties>
<systemProperty>
<name>javax.net.ssl.trustStore</name>
<value>../certificates/server.jks</value>
</systemProperty>
<systemProperty>
<name>javax.net.ssl.trustStorePassword</name>
<value>password</value>
</systemProperty>
</systemProperties>
</configuration>
相关推荐
解决 Tomcat 配置 SSL 错误的解决办法 在 Tomcat 服务器中配置 SSL 加密连接是非常重要的,然而在 Tomcat 6.0.33 版本中,默认启用了 APR(APR 是通过 JNI 访问的可移植库,可以提高 Tomcat 的性能和伸缩性),这...
3. 在应用系统中配置CAS客户端,包括服务ID、票证验证URL以及任何其他定制的CAS配置。 通过以上步骤,你可以实现CAS单点登录,并在Tomcat服务器上配置SSL,确保通信安全。同时,正确集成CAS资源,能够让你的应用...
【SANGFOR_SSL_v7.6.8_CONF_CAS账号认证配置指导】是深信服提供的一个关于如何配置SSL设备与CAS(Central Authentication Service,中央认证服务)服务器对接的指南,目的是让用户在登录SSL设备时能够使用CAS服务器...
### WebSphere 应用服务器 (WAS) 中的 CAS SSL 配置与数据源配置详解 #### 一、概述 本文档旨在详细说明如何在 WebSphere 应用服务器上进行 CAS 证书生成、SSL 配置、数据源配置等相关操作。通过本教程,您将学习...
2. CAS服务器与WAS服务器之间的SSL信任配置:为了确保CAS服务器与WAS服务器之间的通信安全,需要建立信任关系。这通常涉及到证书的导入和配置,以确保WAS服务器信任CAS服务器的SSL证书。 3. CAS Client端在WAS...
- 修改`server.xml`:开启HTTPS支持,配置SSL连接器,指定keystore路径和密码。 - 配置`deployerConfigContext.xml`:取消`SimpleTestUsernamePasswordAuthenticationHandler`的注释,启用`...
#### 一、配置SSL **1.1 生成证书** 首先,为了确保数据传输的安全性,我们需要配置SSL。在配置SSL的过程中,第一步是生成证书。这一步骤可以通过Java提供的`keytool.exe`工具来完成。具体的命令如下: ```bash ...
CAS(Central Authentication Service)是基于Java的开源身份验证框架,用于实现单一登录(Single Sign...通过本文的介绍,你应该对CAS配置有了全面的认识,接下来就是实践操作,让CAS在你的项目中发挥安全保障的作用。
#### 配置SSL连接器 - 在Tomcat的`server.xml`文件中添加SSL连接器配置,用于HTTPS服务。 - 示例配置: ```xml port="8443" minSpareThreads="5" maxSpareThreads="75" enableLookups="true" ...
标题中的“tomcat配置ssl-单点登录(sso)”指的是在Apache Tomcat服务器上配置SSL安全套接层,以及实现单点登录(Single Sign-On, SSO)功能。这是一个涉及网络安全和用户认证的重要主题,主要目标是提高Web应用的...
SANGFOR_SSL_v7.6.8_CONF_金智CAS账号认证配置指导.pdf
CAS 安装和配置的关键在于正确配置 CAS Server 和客户端应用,确保服务器能够正确处理认证请求,客户端应用能够识别并响应 CAS Server 的认证结果。通过这种方式,你可以构建一个安全、高效的单点登录系统,提升用户...
这通常涉及下载CAS服务器的软件包,配置服务器的主配置文件(如`cas.properties`),以及设置服务器的Keystore来生成SSL证书,确保通信的安全性。 2. **选择客户端库**:CAS提供了多种客户端库,例如Java、.NET、...
在这个场景中,我们关注的是CAS Service 5.2.x 版本与MySQL数据库的集成,特别是通过REST接口来配置数据库连接。 首先,我们需要理解CAS的架构。CAS Server是核心组件,负责处理用户的认证请求,验证凭证,并向服务...
【CAS(Central Authentication Service)简介】 CAS 是 Jasig 组织开发的一种基于 Web 的单点登录(Single Sign-On...实际生产环境中,可能还需要考虑 SSL 安全配置、自定义认证机制、多 CAS Server 集群等复杂情况。
1. **证书配置**:在部署CAS服务器时,为了保证通信的安全性,通常需要配置SSL证书。这涉及到Tomcat服务器的配置文件`server.xml`。在`<Connector>`标签内,设置`port`属性为监听的HTTPS端口,如8443。`SSLEnabled`...
2. **生成和配置SSL证书**: - 使用`keytool`命令生成用于SSL通信的密钥,指定别名为tomcat,算法为RSA。 - 导出服务器证书(server.crt)。 - 将服务器证书导入客户端JVM的信任库。 - 修改Tomcat的`server.xml`...