Apusic SSL配置V2.2.doc_第1页
Apusic SSL配置V2.2.doc_第2页
Apusic SSL配置V2.2.doc_第3页
Apusic SSL配置V2.2.doc_第4页
Apusic SSL配置V2.2.doc_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Apusic SSL配置- OpenSSL在 Apusic上的配置过程 关键字:SSL Apusic Openssl keytool Apusic应用服务器完全支持SSL协议最新版SSL3.0和TLS1.0协议。本文将详细讲述如何在Apusic应用服务器上配置使用SSL双向认证。1 Apusic应用服务器及SSL/TSL简介Apusic 应用服务器是完全遵循 Java EE 规范的 Java 企业级应用服务器,是经受大量客户应用验证的应用支撑平台。 J2EE 是一个开放的描述多层企业级应用开发的技术规范,由国际上权威的 Java 标准化组织 JCP 倡导制定, JCP 由众多国际知名厂商参与其中,最大程度保证了其一贯倡导的开放性。 Apusic 应用服务器是国内第一个自有知识产权并严格遵循和实现 J2EE 规范的应用服务器产品,为复杂应用提供了一个开发和运行平台,对于分布式的企业级应用,提供了易扩展、可伸缩和高安全性等特性。本文介绍了 Apusic 应用服务器的体系结构,然后分别介绍了 Apusic 提供的服务和功能,从而显示 Apusic 应用服务器对开发大型应用系统的支持能力。 Apusic 应用服务器目前已经通过 Java EE 的兼容性测试认证,能在第一时间内完成 J2EE1.4 的测试和认证,不仅表明 Apusic 应用服务器对 J2EE 规范一贯和紧密的跟踪,也说明 Apusic 应用服务器在设计时就是高质量并高度兼容 J2EE 规范的产品。这些事实说明 Apusic 应用服务器已经达到世界级产品的要求。1.1 背景在网络上信息在源-宿的传递过程中会经过其它的计算机。一般情况下,中间的计算机不会监听路过的信息。但在使用比如网上银行或者进行信用卡交易的时候有可能被监视,从而导致个人隐私的泄露,如下图所示。这里可以提供一个不安全的应用例子由于Internet和Intranet体系结构的原因,总有某些人能够读取并替换用户发出的信息。随着网上支付的不断发展,人们对信息安全的要求越来越高。1.2 SSL/TSL概述为了在不安全的网络上安全保密的传输关键信息,Netscape公司开发了SSL协议,后来IETF(Internet Engineering Task Force)把它标准化了,并且取名为TLS,目前TLS的版本为1.0,TLS1.0的完整版本请参考rfc2246()。旨在达到在开放网络(Internet)上安全保密地传输信息的目的,这种协议在WEB上获得了广泛的应用。 之后IETF()对SSL作了标准化,即RFC2246,并将其称为TLS(Transport Layer Security),从技术上讲,TLS1.0与SSL3.0的差别非常微小。 基于SSL/TLS协议的通信双方的应用数据是经过加密后传输的,应用数据的加密采用了对称密钥加密方式,通信双方通过SSL/TLS握手协议来获得对称密钥。为了不让攻击者偷听、篡改或者伪造消息通信的双方需要互相认证,来确认对方确实是他所声称的主体。SSL/TLS握手协议通过互相发送证书来认证对方,一般来说只需要单向认证,即客户端能确认服务器便可。但是对于对安全性要求很高的应用往往需要双向认证,以获得更高的安全性。下面详细讲述建立自己的认证机构,并且利用它来颁发服务器证书和客户端个人证书,然后配置服务器来使用双向认证。SSL协议使用不对称加密技术实现会话双方之间信息的安全传递。可以实现信息传递的保密性、完整性,并且会话双方能鉴别对方身份。不同于常用的http协议,我们在与网站建立SSL安全连接时使用https协议,即采用https:/ip:port/的方式来访问。1.3 作用SSL 是允许对 HTTP 请求上的敏感数据加密的技术。握手、加密和解密过程由 Web 服务器处理。SSL协议的作用IP安全协议/SSL/SSH内容: SSL(Secure Socket Layer即安全套接层)协议是Netscape Communication公司推出在网络传输层之上提供的一种基于非对称密钥和对称密钥技术的用于浏览器和Web服务器之间的安全连接技术。它是国际上最早应用于电子商务的一种由消费者和商家双方参加的信用卡/借记卡支付协议。SSL协议支持了电子商务关于数据的安全性、完整性和身份认证的要求,但是它没有保证不可抵赖性的要求。 SSL层要点:一、作用:验证最终安全的应用层通信内容。(加密)。二、端口:典型的运行在不同的上层应用的端口。(不同服务需要配置不同端口+加密方法/压缩模式)。三、验证:证书及其签名的确认。四、密钥:认证(必要时双认证)后,通过随机数据和密钥交换协议,双方获得密钥或种子,完成加密操作。 SSL协议的主要用途是在两个通信应用程序之间提供私密性和可靠性,这个过程通过3个元素来完成:(1)握手协议(2)记录协议(3)警告协议 SSL协议支持三种方式的认证:双方的相互认证,只认证服务端的认证和双方都不认证。 通过SSL协议的通信过程,SSL协议利用非对称加密算法产生和交换密码;用对称加密算法对 数据进行加密传输。 注意:1、KI协议是为产生密码和交换密码服务的体系,主要负责CA的管理。 2、TPS是SSL协议应用于HTTP服务 SSH协议:解决TELNET/FTP协议安全性的工具,支持SSH和SFTP。即就是Telent和FTP的加密 传输版本。SSH具有SSH1和SSH2版本。 2、SSH技术安全验证问题:基于口令和基于密钥验证的技术。 3、SSH机遇密钥验证的过程(服务器验证过程),保证了口令不在网络中传输。 SSL:解决对应使用HTTP协议的服务安全性问题。位于传输层和应用层之间,可以提供数据加密传输(不含签名)。原理:通过SSL握手交流信息,通过验证,获得密钥,对数据进行加密(属于IP数据包的数据部分) SSH:解决对应使用FTP/TELNET协议的服务安全性问题。位于传输层和应用层之间,可以提供数据加密传输,可以签名。涉及技术:CA、PKI。原理:通过SSH握手交流信息(C/S访问模式),通过验证,获得密钥,对传输(交流)数据进行加密(属于IP数据包的数据部分),也可看为在系统间建立了加密传输通道。1.4 原理当我们与一个网站建立https连接时,我们的浏览器与Web Server之间要经过一个握手的过程来完成身份鉴定与密钥交换,从而建立安全连接。具体过程如下: 用户浏览器将其SSL版本号、加密设置参数、与session有关的数据以及其它一些必要信息发送到服务器。 服务器将其SSL版本号、加密设置参数、与session有关的数据以及其它一些必要信息发送给浏览器,同时发给浏览器的还有服务器的证书。如果配置服务器的SSL需要验证用户身份,还要发出请求要求浏览器提供用户证书。 客户端检查服务器证书,如果检查失败,提示不能建立SSL连接。如果成功,那么继续。 客户端浏览器为本次会话生成pre-master secret,并将其用服务器公钥加密后发送给服务器。 如果服务器要求鉴别客户身份,客户端还要再对另外一些数据签名后并将其与客户端证书一起发送给服务器。 如果服务器要求鉴别客户身份,则检查签署客户证书的CA是否可信。如果不在信任列表中,结束本次会话。如果检查通过,服务器用自己的私钥解密收到的pre-master secret,并用它通过某些算法生成本次会话的master secret。 客户端与服务器均使用此master secret生成本次会话的会话密钥(对称密钥)。在双方SSL握手结束后传递任何消息均使用此会话密钥。这样做的主要原因是对称加密比非对称加密的运算量低一个数量级以上,能够显著提高双方会话时的运算速度。 客户端通知服务器此后发送的消息都使用这个会话密钥进行加密。并通知服务器客户端已经完成本次SSL握手。 服务器通知客户端此后发送的消息都使用这个会话密钥进行加密。并通知客户端服务器已经完成本次SSL握手。 本次握手过程结束,会话已经建立。双方使用同一个会话密钥分别对发送以及接受的信息进行加、解密。2 环境准备2.1 所需软件包n Apusic 4.0.2下载: n JDK 1.4.2用途:用来产生Apusic使用的秘钥对(keystore)。下载: /n Openssl 用途:用来产生CA证书、签名并生成IE可导入的PKCS#12格式私钥。下载:/本章主要针对湖北省电子政务一期工程应用支撑软件招标文件中软件要求的内容,根据金蝶Apusic4.0的具体真实情况做出响应。3 配置步骤3.1 建立认证授权机构CA 用户可以向可信的第三方认证机构(CA)申请证书,也可以自己做CA,由自己来颁发证书,在本文中将讲述如何自己做证书颁发机构。本文所使用的CA软件为Openssl。Openssl用来产生CA证书、证书签名并生成浏览器可导入的PKCS#12格式个人证书。你可以在Openssl的官方网站下载最新版的Openssl。下面开始介绍建立认证授权机构CA和创建CA根证书:1) 下载并安装OpenSSL,配置两个环境变量,其中前者在安装过程中实现:OPENSSL_CONF:c:OpenSSLfPATH:C:OpenSSLbin2) 在指定的目录下建立自己的CA目录,例如:C:OpenSSLCAC:OpenSSLmkdir CA3) 登录到OpenSSL环境:C:OpenSSLCAopensslOpenSSL4) 生成数字签名算法DSA参数格式:dsaparam -out 数字签名算法DSA参数输出路径 密钥位数例如:dsaparam -out C:/OpenSSL/ca/dsa_param 1024或者直接在命令环境执行:C:OpenSSLCAopenssl dsaparam -out C:/OpenSSL/ca/dsa_param 10245) 根据参数生成DSA私钥格式:genrsa out 密钥文件输出路径 数字签名算法DSA参数例如:gendsa -out dsa_key dsa_param或者直接在命令环境执行:C:OpenSSLCAopenssl gendsa -out C:/OpenSSL/ca/dsa_key C:/OpenSSL/ca/dsa_param6) X509证书待签名请求生成待签名的证书。格式:req -new -out 证书文件输出路径 -key 私钥文件路径例如:req -new -out C:/OpenSSL/ca/ca_req.csr -key C:/OpenSSL/ca/dsa_key或者直接在命令环境执行:C:openssl req -new -out C:/OpenSSL/ca/ca_req.csr -key C:/OpenSSL/ca/dsa_key7) 创建X509自签名根证书用CA私钥自签名。注 将自动生成的ca-key.srl文件拷贝到创建的CA目录下.。格式:x509 -req -in 输入待签发证书文件路径 -out 产生x509证书文件输出路径 -signkey 自签发密钥文件路径 -days 证书有效期 -CA 签发跟证书 -Cakey根证书密钥文件 -Cacreateserial创建序列号例如:x509 -req -in ca_req.csr -out ca_cert.cer -signkey dsa_key或者直接在命令环境执行:C:OpenSSLCAopenssl x509 -req -in C:/OpenSSL/ca/ca_req.csr -out C:/OpenSSL/ca/ca_cert.cer -signkey C:/OpenSSL/ca/dsa_key -days 3653.2 生成服务器端证书服务器端证书用来向客户端证明服务器的身份,也就是说在SSL协议握手的时候,服务器发给客户端的证书。生成服务器证书时用到了JDK的密钥管理工具Keytool,本文采用的jdk是sun j2dk1.4.2。可以在Sun公司的网站下载j2sdk1.4.2。注 在本文中用符号%JDK_HOME%来表示JDK的安装位置,用符号%APUSIC_HOME% 表示Apusic的安装位置。3.2.1 建立服务器证书1) 建立工作目录在%JDK_HOME%的bin目录下建立自己的server目录,例如:servermkdir server2) 创建服务器私钥生成server密钥对。格式:%JDK_HOME%/bin/keytool -genkey -alias 密钥对别名 -validity 密钥有效期-keyalg密钥算法参数-keysize密钥位数-keypass密钥保护密码-storepass存储密码-dname别名相关附加信息-keystore密钥存储文件路径例如:C: keytool -genkey -alias apusic_server -keyalg RSA -keysize 1024 -keypass 12345678 -storepass 12345678 -dname cn=localhost,ou=support,o=apusic,l=shenzhen,st=guangdong, c=CN -keystore C:/OpenSSL/server/my_key_storeC:opensslserverdir 驱动器 D 中的卷是 新加卷 卷的序列号是 18FC-D2C1 C:apusicapusic-4.0.2_jrebinserver 的目录2006-04-19 10:08 .2006-04-19 10:08 .2006-04-19 10:08 1,368 my_key_store 1 个文件 1,368 字节 2 个目录 1,772,150,784 可用字节C:apusicapusic-4.0.2_jrebinserver注 -alias后的apusic_server是密钥对的名字可替换为自己需要的名字;-keypass与-storepass后的changeit为保护密码必须6位,将其替换为你的密码即可;-dname为包含的server信息。其中cn是服务器的名字一定要与WEB服务器中设置的一样。3) 生成服务器证书请求生成待签名证书。格式:%JDK_HOME%/bin/keytool -certreq -alias证书别名 -sigalg证书算法参数 -file 产生文件输出路径 -keypass密钥保护密码 -keystore存储文件路径 -storepass存储密码例如:keytool -certreq -alias apusic_server -sigalg SHA1withRSA -file C:/OpenSSL/server/my_server.csr -keypass 12345678 -keystore C:/OpenSSL/server/my_key_store -storepass 123456784) 用CA私钥签名发布服务器证书。格式:openssl x509 -req -in server/server.csr -out server/server-cert.pem -CA mageCA/ca-cert.pem -CAkey mageCA/ca-key.pem -days 365openssl x509 -req -in C:/OpenSSL/server/my_server.csr -out C:/OpenSSL/server/my_server-cert.cer -CA C:/OpenSSL/CA/ca_cert.cer -CAkey C:/OpenSSL/CA/dsa_key -days 365 -set_serial 02Loading screen into random state - doneSignature oksubject=/C=CN/ST=guangdong/L=shenzhen/O=apusic/OU=support/CN=09Getting CA Private Key 注 先将生成的my_server.csr文件ftp到linux上openssl的目录下的server子目录中,ftp的传输模式应设为bin模式,以下同。3.2.2 将CA根证书和服务器证书导入Apusic1) 导入CA根证书将根证书导入keystore。将CA根证书(ca_cert.cer)ftp到Java工作目录下的ca子目录中格式:-import -v -trustcacerts -storepass存储密码 -alias证书别名 -file证书文件路径 -keystore导入文件路径例如:keytool -import -alias my_ca_root -file C:/OpenSSL/CA/ca_cert.cer -noprompt -keypass 12345678 -storepass 12345678 -keystore C:/OpenSSL/server/my_key_store 注 此处的-storepass为默认的“changeit”。-alias为CA根证书的别名。2) 导入服务器证书格式:%JDK_HOME%/bin/keytool -import -v -trustcacerts -storepass changeit -alias apusic_server -file server/server-cert.pem -keystore server/server_keystorekeytool -import -alias apusic_server -file C:/OpenSSL/server/my_server-cert.cer -noprompt -keypass 12345678 -storepass 12345678 -keystore C:/OpenSSL/server/my_key_store注 此时的-storepass为生成证书时输入密码。-alias为服务器证书的别名。3) 查看证书查看CA证书keytool -list -keystore %JDK_HOME%/jre/lib/security/cacertskeytool -list -keystore C:/OpenSSL/server/my_key_store或者keytool -list -keystore C:/OpenSSL/server/my_key_store -v -storepass 123456784) 把CA根证书导入信任库truststore:keytool -import -alias caroot -file .caca-cert.cer -noprompt -keypass keypass -storepass keypass -keystore truststorekeytool -list -keystore struststore -v -storepass keypass3.3 颁发并发布个人证书个人证书用来向服务器证明个人的身份,也就是说在SSL协议握手的时候,客户端发给服务器端的证书。同时个人证书中包含个人信息如用户名等,如果需要这个用户名将作为登录服务器的用户名。n 建立Client证书1) openssl的apps目录下建立自己的Client目录,例如:client2) 生成Client密钥对创建RSA参数。格式:openssl genrsa -out client/my_client_key -key.pem 1024例如:openssl genrsa -out C:/OpenSSL/client/my_client_key 10243) 生成待签名的证书根据参数生成RSA私钥格式:openssl req -new -out client/client-req.csr -key client/ client-key.pem例如:openssl req -new -out C:/OpenSSL/client/my_client_req.csr -key C:/OpenSSL/client/my_client_key4) 用CA私钥签名发布客户端证书格式:openssl x509 -req -in client/client-req.csr -out client/client-cert.pem -signkey c lient/client-key.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -CAcreateserial -days 365例如:openssl x509 -req -in my_client_req.csr -out my_client.cer -CA C:/OpenSSL/CA/ca_cert.cer -CAkey C:/OpenSSL/CA/dsa_key -days 365 -set_serial 02C:OpenSSLCLIENTopenssl x509 -req -in C:/OpenSSL/client/my_client_req.csr -out C:/OpenSSL/client/my_client.cer -CA C:/OpenSSL/CA/ca_cert.cer -CAkey C:/OpenSSL/CA/dsa_key -days 365 -set_serial 02Loading screen into random state - doneSignature oksubject=/C=CN/ST=guangdogn/L=shenzhen/O=apusic/OU=support/CN=qiuyilai/emailAddress=Getting CA Private Key5) 生成Client端可以导入的个人证书生成PKCS#12格式证书。格式:openssl pkcs12 -export -clcerts -in client/client-cert.pem -inkey client/client-key.pem -out client/client.p12pkcs12生成PKS12格式证书命令-export导出文件-clerts仅导出client证书-in输入的client证书文件路径-inkeyclient证书密钥文件路径-out导出PKS12格式文件路径例如:openssl pkcs12 -export -clcerts -in my_client.cer -inkey my_client_key -out my_client.p12C:OpenSSLCLIENTopenssl pkcs12 -export -clcerts -in C:/OpenSSL/client/my_client.cer -inkey C:/OpenSSL/client/my_client_key -out C:/OpenSSL/client/my_client.p12Loading screen into random state - doneEnter Export Password:Verifying - Enter Export Password:C:OpenSSLCLIENTdir 驱动器 D 中的卷是 新加卷 卷的序列号是 18FC-D2C1 C:OpenSSLCLIENT 的目录2006-04-19 14:08 .2006-04-19 14:08 .2006-04-19 14:03 814 my_client.cer2006-04-19 14:08 1,581 my_client.p122006-04-19 13:54 887 my_client_key2006-04-19 13:57 769 my_client_req.csr 4 个文件 4,051 字节 2 个目录 1,573,318,656 可用字节3.4 修改Apusic的配置文件Apusic应用服务器默认情况下不支持双向认证,要支持SSL双向认证,需要作如下配置:配置服务器端密钥库和信任库。将keystore(这里是:server/my_key_store)和truststore(这里是:security/cacerts_my_key_store)拷贝到APUSIC_HOME/config目录下。然后修改APUSIC_HOME/config/apusic.conf的Muxer部分内容,如: 具体配置属性概述如下:属性描述值类型缺省值Port多路复用端口号;HTTP、JNDI、JMS服务注065535间未被占用的端口号6888Backlog对于未处理的连接请求,可保持在此端口的输入队列中的最大数量整型50Timeout连接请求的等待时间整型,单位为秒300MaxWaitingClients表示当服务器过忙而无法及时响应请求时对请求排队的队列长度(针对SSL服务的配置,正常情况下不需要)整型500WaitingClientTimeout表示当队列已满时经过多长时间将请求抛弃(针对SSL服务的配置,正常情况下不需要)整型,单位为秒5SSLEnabled是否启用SSL通讯。“True”或“False”TrueSecurePortSSL通讯所使用的端口065535间未被占用的端口号6889KeyStore保存服务器密钥和证书的密钥库文件密钥库文件相对于Apusic安装目录的路径和文件名config/sslserverKeyPasswordKeyStore密钥库的管理密码和密钥密码管理密码和密钥密码必须相同keypass启动Apusic,启动信息类似如下内容:2006-07-17 16:40:39 信息 apusic.service.ThreadPool.default 成功启动2006-07-17 16:40:39 信息 apusic.service.ThreadPool.MuxHandler 成功启动2006-07-17 16:40:39 信息 apusic.service.ThreadPool.HTTPHandler 成功启动2006-07-17 16:40:39 信息 apusic.service.ThreadPool.JMSHandler 成功启动2006-07-17 16:40:39 信息 apusic.service.ThreadPool.ORBWorker 成功启动2006-07-17 16:40:39 信息 apusic.service.Muxer 侦听端口 68882006-07-17 16:40:39 信息 apusic.service.Muxer 侦听端口 68892006-07-17 16:40:39 信息 apusic.service.Muxer 侦听端口 4432006-07-17 16:40:39 信息 apusic.service.Muxer 成功启动2006-07-17 16:40:39 信息 apusic.service.ORB 成功启动2006-07-17 16:40:39 信息 apusic.service.Naming 成功启动2006-07-17 16:40:39 信息 apusic.service.Transaction 成功启动2006-07-17 16:40:39 信息 apusic.service.Security 成功启动2006-07-17 16:40:39 信息 apusic.JDBC.register 成功启动2006-07-17 16:40:39 信息 apusic.service.JDBC 成功启动2006-07-17 16:40:39 信息 apusic.service.JCA 成功启动2006-07-17 16:40:39 信息 apusic.service.EJB 成功启动2006-07-17 16:40:39 信息 apusic.service.EJBTimer 成功启动2006-07-17 16:40:40 信息 apusic.service.MUXEndpoint 成功启动2006-07-17 16:40:40 信息 apusic.service.ACPEndpoint 成功启动2006-07-17 16:40:40 信息 apusic.service.AJPEndpoint 侦听端口 80092006-07-17 16:40:40 信息 apusic.service.AJPEndpoint 成功启动2006-07-17 16:40:40 信息 apusic.service.HttpSessionStore 成功启动2006-07-17 16:40:40 信息 apusic.service.Web 成功启动2006-07-17 16:40:40 信息 apusic.service.HttpSession 成功启动2006-07-17 16:40:40 信息 apusic.service.JMSMessageStoreProvider 成功启动2006-07-17 16:40:40 信息 apusic.service.JMS 成功启动2006-07-17 16:40:40 信息 apusic.JMS.JMSQueue.SYSTEM.DEAD_LETTER 成功启动2006-07-17 16:40:40 信息 apusic.JMS.JMSQueue.testQueue 成功启动2006-07-17 16:40:40 信息 apusic.JMS.JMSTopic.testTopic 成功启动2006-07-17 16:40:40 信息 apusic.JMS.ConnectionFactory.ConnectionFactory 成功启动2006-07-17 16:40:40 信息 apusic.service.JMSRegistry 成功启动2006-07-17 16:40:40 信息 apusic.service.WSServer 成功启动2006-07-17 16:40:40 信息 apusic.ejb.mejb.jar.MEJB EJB home ejb/mgmt/MEJB 已注册。2006-07-17 16:40:41 信息 apusic.application.mejb.jar 成功启动2006-07-17 16:40:42 信息 apusic.application.webtool.ear 成功启动2006-07-17 16:40:42 信息 apusic.application.public_html 成功启动2006-07-17 16:40:42 信息 apusic.application.web 成功启动2006-07-17 16:40:42 信息 apusic.service.J2EEDeployer 成功启动2006-07-17 16:40:42 信息 apusic.service.RMIConnector 成功启动2006-07-17 16:40:42 信息 apusic.service.admin 成功启动2006-07-17 16:40:42 信息 apusic.server.Main 服务器就绪。3.5 配置IE客户端在这里CA的根证书用来在SSL握手时验证服务器发给客户端浏览器的证书。如果没有此证书,浏览器将无法自动验证服务器证书,因此浏览器将弹出确认信息,让用户来确认是否信任服务器证书。将CA证书与client证书导入IE1. 导入CA根证书将已经ftp到Java工作目录下ca子目录中的ca-cert.pem改名为ca-cert.cer;在client端的IE中使用,把我们生成的CA根证书导入,使其成为用户信任的CA。2. 导入client证书将client证书(client.p12)ftp到Client端,把client.p12导入到client端的IE中作为client证书,导入过程同上3.6 用IE浏览器使用SSL协议访问Apusic1. 执行%APUSIC_HOME%/bin/startapuswicd启动Apusic;2. 在IE浏览器的地址栏中输入https:/localhost:6889,如果前面的操作都正确,应该可以看到Apusic的欢迎页面。同时状态栏上的小锁处于闭合状态,且证书为有效状态,表示您已经成功地与服务器建立了要求客户端验证的SSL安全连接。4 配置全过程以下段落内容和上一部分是重复内容。注 %APUSIC_OPENSSL_HOME% 表示Apusic有关SSL文件位置。4.1 建立CA认证授权机构#cd %APUSIC_OPENSSL_HOME%*进入SSL工作目录#mkdir ca #cd ca *建立CA工作目录#openssl dsaparam -out dsaparam 1024 #openssl gendsa -out dsakey dsaparam*生成ca私钥#openssl req -new -out ca-req.csr -key dsakey *生成ca待签名证书#openssl x509 -req -in ca-req.csr -out ca-cert.cer -signkey dsakey -days 365*用CA私钥进行自签名,得到自签名的CA根证书4.2 生成服务器端证书 #cd .#mkdir server #cd server *建立服务器工作目录#keytool -genkey -alias myserver -keyalg RSA -keysize 1024 -keypass keypass -storepass keypass -dname cn=localhost, ou=support, o=apusic,l=shenzhen, st=guangdong, c=CN -keystore mykeystore *生成服务器私钥对及自签名证书,并且保存在密钥库mykeystore中#keytool -certreq -alias myserver -sigalg SHA1withRSA -file server.csr -keypass keypass -storepass keypass -keystore mykeystore*生成服务器待签名证书#openssl x509 -req -in server.csr -out server-cert.cer -CA .CAca-cert.cer -CAkey .CAdsakey -days 365 -set_serial 02*请求CA签名服务器待签名证书,得到经CA签名的服务器证书#keytool -import -alias caroot -file .

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论