文档库 最新最全的文档下载
当前位置:文档库 › 轻松搞定struts2与https安全协议配置

轻松搞定struts2与https安全协议配置

HTTPS配置说明

1、生成根证书

1、查看根证书是否存在

---查看jre中所有信任的证书信息

keytool -list -keystore %JA V A_HOME%/jre/lib/security/cacerts -storepass changeit

---查看别名为root的证书信息

keytool-v-list-alias root-keystore%JA V A_HOME%/jre/lib/security/cacerts-storepass changeit

2、删除根证书

---删除jre中别名为root的证书

keytool-delete-alias root-keystore%JA V A_HOME%/jre/lib/security/cacerts-storepass changeit

2、生成根证书

---生成根证书

keytool -genkey -keyalg RSA -alias root -dname " CN=唐宁, OU=ce, O=creditease, L=北京, ST=北京, C=CN" -storepass changeit -keystore root.keystore -validity 180

---导出根证书

keytool -export -alias root -file root.crt -storepass changeit -keystore root.keystore

---导入根证书

keytool-import-alias root-file root.crt-keystore F:\jdk1.6.0_06\jre\lib\security\cacerts -storepass changeit

---查看是否导入根证书

keytool -v -list -alias root -keystore F:\jdk1.6.0_06\jre\lib\security\cacerts -storepass changeit 3、需要双向认证时用到

---生成客户端证书

keytool -genkey -keyalg RSA -alias client -storetype PKCS12 -dname " CN=测试, OU=ce, O=creditease, L=北京, ST=北京, C=CN" -storepass 123456 -keystore client.p12 -validity 180 ---导出客户端证书

keytool -export -alias client -file client.cer -keystore client.p12 -storetype PKCS12 -storepass 123456

---导入客户端证书

keytool -import -alias client -file client.cer -keystore client.keystore -storepass 123456

2、配置Tomcat

1、注释掉8080端口

port="8080" protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443" />

2、新增8443端口,并添加证书

keystoreFile="F:/jdk1.6.0_06/bin/root.keystore" keystorePass="changeit"

maxSpareThreads="10" maxThreads="150" minSpareThreads="2" port="8443"

protocol="HTTP/1.1" scheme="https" secure="true" sslProtocol="TLS"

truststoreFile="F:/jdk1.6.0_06/jre/lib/security/cacerts" />

keystoreFile指向密钥库文件root.keystore

keystorePass默认为changeit

truststoreFile指向jre信任的证书库文件

3、整合struts2

利用struts2-ssl-plugin插件配置安全访问协议

1、添加jar包,struts必须是2.1.18及以上版本的

2、配置struts.xml文件,添加以下配置

method="customerIndex">

/app/customer/listCustomer.jsp

注意:default里可以继承这个ssl-default,因为其实这个ssl-default也是继承 st ruts-default的,之后在你需要用某个SSL的方法或类前,用注解@Secured ,就行了:整个类都用HTTPS:

方法用HTTPS:

4、重启Tomcat

访问https://localhost:8443/web

HTTPS协议简介

下面我们来一起学习一下 HTTPS ,首先问你一个问题,为什么有了 HTTP 之后,还需要有 HTTPS ?我突然有个想法,为什么我们面试的时候需要回答标准答案呢?为什么我们不说出我们自己的想法和见解,却要记住一 些所谓的标准回答呢?技术还有正确与否吗? HTTPS 为什么会出现 一个新技术的出现必定是为了解决某种问题的,那么 HTTPS 解决了 HTTP 的什么问题呢? HTTPS 解决了什么问题 一个简单的回答可能会是HTTP 它不安全。由于 HTTP 天生明文传输的特性,在 HTTP 的传输过程中,任何人都有可能从中截获、修改或者伪造请求发送,所以可以认为 HTTP 是不安全的;在 HTTP 的传输过程中不会验证通信方的身份,因此 HTTP 信息交换的双方可能会遭到伪装,也就是没有用户验证;在 HTTP 的传输过程中,接收方和发送方并不会验证报文的完整性,综上,为了解决上述问题,HTTPS 应用而生。 什么是 HTTPS 你还记得 HTTP 是怎么定义的吗?HTTP 是一种超文本传输协议(Hypertext Transfer Protocol) 协议,它是一个在计算机世界里专门在两点之间传输文字、图片、音频、视频等超文本数据的约定和规范,那么我们看一下 HTTPS 是如何定义的HTTPS 的全称是Hypertext Transfer Protocol Secure,它用来在计算机网络上的两个端系统之间进行安全的交

换信息(secure communication),它相当于在 HTTP 的基础上加了一 个Secure 安全的词眼,那么我们可以给出一个 HTTPS 的定义:HTTPS 是一个在计算机世界里专门在两点之间安全的传输文字、图片、音频、视频等超文本数据的约定和规范。HTTPS 是 HTTP 协议的一种扩展,它本身并不保传输的证安全性,那么谁来保证安全性呢?在 HTTPS 中,使用传输层安全性(TLS)或安全套接字层(SSL)对通信协议进行加密。也就是 HTTP + SSL(TLS) = HTTPS。 HTTPS 做了什么 HTTPS 协议提供了三个关键的指标 ?加密(Encryption), HTTPS 通过对数据加密来使其免受窃听者对数据的监听,这就意味着当用户在浏览网站时,没有人能够监听他和网站之间的信息交换,或者跟踪用户的活动,访问记录等,从而窃取用户信息。 ?数据一致性(Data integrity),数据在传输的过程中不会被窃听者所修改,用户发送的数据会完整的传输到服务端,保证用户发的是什么,服务器接收的就是什么。 ?身份认证(Authentication),是指确认对方的真实身份,也就是证明你是你(可以比作人脸识别),它可以防止中间人攻击并建立用户信任。 有了上面三个关键指标的保证,用户就可以和服务器进行安全的交换信息了。 那么,既然你说了 HTTPS 的种种好处,那么我怎么知道网站是用 HTTPS 的还是 HTTP 的呢?给你两幅图应该就可以解释了。

Apache配置HTTPS协议

Apache配置HTTPS协议搭载SSl配置全过程 1.安装必要的软件 从Apache官方(https://www.wendangku.net/doc/3617523805.html,)下载必要的ApacheHttpServer安装包,可以直接官方提供的绑定openssl的apache.文件名是: httpd-2.2.15-win32-x86-openssl-0.9.8m-r2.msi(我用的是Apache2.2.15for windows的版本,你可以点击此处下载最新的版本进行安装,最好选择含有openssl版本的哦) 否则单独安装windows下的openssl比较麻烦,要么找到一个第三方的编译结果,要么自己编译 安装完毕后检查检查在Apache安装路径的bin下是否有以下文件: openssl.exe

ssleay32.dll libeay32.dll 2. 生成服务器证书 安装好在bin目录下有一个openssl.exe文件,用来生成证书和密钥。 1). 生成服务器用的私钥文件server.key (注:在Windows操作系统环境下需先设置Openssl环境变量:在DOS命令下进入conf目录,执行命令行:set OPENSSL_CONF=..\conf\https://www.wendangku.net/doc/3617523805.html,f;请在执行之前确保https://www.wendangku.net/doc/3617523805.html,f存在,否则会出现:WARNING: can't open config file: /usr/local/ssl/https://www.wendangku.net/doc/3617523805.html,f 信息提示。还有在windows系统下.cnf 默认会被当成快捷方式,看不到扩展名。) 在DOS命令下进入bin目录,执行命令行 命令:openssl genrsa 1024> server.key 说明:这是用128位rsa算法生成密钥,得到server.key文件>是输出文件的标识符这种生成方法生成的是没有密钥的私钥文件,当然,Apache提供了加入密钥(Password)的命令,就是加入参数-des3,全部的命令为: 命令:openssl genrsa 1024-des3 > server.key 使用 openssl genrsa -des3 > 1024 server.key生成私钥文件是需要输入密钥的,运行的时候会让你输入并确认你的密钥,但是在Windows环境下会导致以下错误: 错误:Apache启动失败,错误提示是:Init: SSLPassPhraseDialog builtin is not supported on Win32 (key file .....) 原因是window下的apache不支持加密的私钥文件。可不使用des3加密。注:生成的证书中RSA密钥对的默认长度是1024,取值是2的整数次方。建议使用4096以上。

HTTPS传输协议原理介绍

HTTPS传输协议原理介绍 Hatter Jiang Apr 9th, 2008我们常常在使用网上银行时看到的连接都是以“https”开始的,那么这个https是什么呢?这其实是表示目前连接使用了SSL进行加密,能保证客户端到服务器端的通信都在被保护起来,那么浏览器是如果实现的呢?下面我们介绍一下SSL的基本实现方法。 首先我们有两种基本的加解密算法类型:对称加密,非对称加密(公私钥加密),现在介绍一下这两种加密算法的特点: 对称加密:密钥只有一个,加密解密为同一个密码,且加解密速度快,典型的对称加密算法有DES、AES等,示意图如下: 图1 对称加密 非对称加密:密钥成对出现(且根据公钥无法推知私钥,根据私钥也无法推知公钥),加密解密使用不同密钥(公钥加密需要私钥解密,私钥加密需要公钥解密),相对对称加密速度较慢,典型的非对称加密算法有RSA、DSA等,示意图如下: 图2 非对称加密 根据上面的两种加密方法,现在我们就可以设计一种无法让他人在互联网上知道你的通讯信息的加密方法: 1.在服务器端存在一个公钥及私钥 2.客户端从服务器取得这个公钥 3.客户端产生一个随机的密钥 4.客户端通过公钥对密钥加密(非对称加密) 5.客户端发送到服务器端 6.服务器端接受这个密钥并且以后的服务器端和客户端的数据全部通过这个密钥加 密(对称加密) HTTPS通信过程的时序图如下:

图3 HTTPS通信时序图 正如上图所示,我们能保证下面几点: 1.客户端产生的密钥只有客户端和服务器端能得到 2.加密的数据只有客户端和服务器端才能得到明文 3.客户端到服务端的通信是安全的 当然实际的SSL实现算法复杂的多,并有数据校验、身份验证等功能,如果需要更多了角请参看RFC2246及RFC4346文档。 参考文献: [1] RFC2246 T. Dierks, C. Allen The TLS Protocol Version 1.0 [2] RFC4346 T.Dierks, E. Rescorla The Transport Layer Security (TLS) Protocol Version 1.1

大型互联网站点HTTPS实践(一):详解HTTPS协议和原理

大型互联网站点HTTPS实践(一):详解HTTPS协议和原理1 前言 百度作为搜索巨头,一举一动都牵动着大家神经。近日百度率先实行全站https加密搜索,默认将HTTP请求跳转成HTTPS,这一举措引起公众广泛关注和讨论。那么到底什么是https呢?全站部署https有什么重大意义?本文将重点介绍。 2 HTTPS 协议概述 HTTPS 可以认为是HTTP + TLS。HTTP 协议大家耳熟能详了,目前大部分WEB 应用和网站都是使用HTTP 协议传输的。 TLS 是传输层加密协议,它的前身是SSL 协议,最早由netscape 公司于1995 年发布,1999 年经过IETF 讨论和规范后,改名为TLS。如果没有特别说明,SSL 和TLS 说的都是同一个协议。 HTTP 和TLS 在协议层的位置以及TLS 协议的组成如下图: 图1 TLS 协议格式 TLS 协议主要有五部分:应用数据层协议,握手协议,报警协议,加密消息确认协议,心跳协议。

TLS 协议本身又是由record 协议传输的,record 协议的格式如上图最右所示。 目前常用的HTTP 协议是HTTP1.1,常用的TLS 协议版本有如下几个:TLS1.2, TLS1.1, TLS1.0 和SSL3.0。其中SSL3.0 由于POODLE 攻击已经被证明不安全,但统计发现依然有不到1% 的浏览器使用SSL3.0。TLS1.0 也存在部分安全漏洞,比如RC4 和BEAST 攻击。 TLS1.2 和TLS1.1 暂时没有已知的安全漏洞,比较安全,同时有大量扩展提升速度和性能,推荐大家使用。 需要关注一点的就是TLS1.3 将会是TLS 协议一个非常重大的改革。不管是安全性还是用户访问速度都会有质的提升。不过目前没有明确的发布时间。 同时HTTP2也已经正式定稿,这个由SPDY 协议演化而来的协议相比HTTP1.1 又是一个非常重大的变动,能够明显提升应用层数据的传输效率。 3 HTTPS 功能介绍 百度使用HTTPS 协议主要是为了保护用户隐私,防止流量劫持。 HTTP 本身是明文传输的,没有经过任何安全处理。例如用户在百度搜索了一个关键字,比如“苹果手机”,中间者完全能够查看到这个信息,并且有可能打电话过来骚扰用户。也有一些用户投诉使用百度时,发现首页或者结果页面浮了一个很长很大的广告,这也肯定是中间者往页面插的广告内容。如果劫持技术比较低劣的话,用户甚至无法访问百度。 这里提到的中间者主要指一些网络节点,是用户数据在浏览器和百度服务器中间传输必须要经过的节点。比如WIFI 热点,路由器,防火墙,反向代理,缓存服务器等。 在HTTP 协议下,中间者可以随意嗅探用户搜索内容,窃取隐私甚至篡改网页。不过HTTPS 是这些劫持行为的克星,能够完全有效地防御。

HTTPS协议

https HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。这个系统的最初研发由网景公司进行,提供了身份验证与加密通讯方法,现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面。 一、信任主机的问题. 采用https的服务器必须从CA (Certificate Authority)申请一个用于证明服务器用途类型的证书。该证书只有用于对应的服务器的时候,客户端才信任此主机。所以目前所有的银行系统网站,关键部分应用都是

https 的。客户通过信任该证书,从而信任了该主机。其实这样做效率很低,但是银行更侧重安全。这一点对我们没有任何意义,我们的服务器,采用的证书不管是自己发布的还是从公众的地方发布的,其客户端都是自己人,所以我们也就肯定信任该服务器。 二、通讯过程中的数据的泄密和被篡改 1.一般意义上的https,就是服务器有一个证书。 a) 主要目的是保证服务器就是他声称的服务器,这个跟第一点一样。 b) 服务端和客户端之间的所有通讯,都是加密的。 i. 具体讲,是客户端产生一个对称的密钥,通过服务器的证书来交换密钥,即一般意义上的握手过程。 ii. 接下来所有的信息往来就都是加密的。第三方即使截获,也没有任何意义,因为他没有密钥,当然篡改也就没有什么意义了。 2.少许对客户端有要求的情况下,会要求客户端也必须有一个证书。 a) 这里客户端证书,其实就类似表示个人信息的时候,除了用户名/密码,还有一个CA 认证过的身份。因为个人证书一般来说是别人无法模拟的,所有这样能够更深的确认自己的身份。 b) 目前少数个人银行的专业版是这种做法,具体证书可能是拿U盘(即U盾)作为一个备份的载体。[1] 限制 概述 它的安全保护依赖浏览器的正确实现以及服务器软件、实际加密算法的支持. 一种常见的误解是“银行用户在线使用https:就能充分彻底保障他们的银行卡号不被偷窃。”实际上,与服务器的加密连接中能保护银行卡号的部分,只有用户到服务器之间的连接及服务器自身。并不能绝对确保服务器自己是安全的,这点甚至已被攻击者利用,常见例子是模仿银行域名的钓鱼攻击。少数罕见攻击在网站传输客户数据时发生,攻击者会尝试窃听传输中的数据。 商业网站被人们期望迅速尽早引入新的特殊处理程序到金融网关,仅保留传输码(transaction number)。不过他们常常存储银行卡号在同一个数据库里。那些数据库和服务器少数情况有可能被未授权用户攻击和损害。 TLS 1.1之前 这段仅针对TLS 1.1之前的状况。因为SSL位于http的下一层,并不能理解更高层协议,通常SSL服务器仅能颁证给特定的IP/端口组合。这是指它经常不能在虚拟主机(基于域名)上与HTTP正常组合成HTTPS。

HTTPS协议

HTTPS(Secure Hypertext Transfer Protocol)--安全超文本传输协议 它是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作,并返回网络上传送回的结果。HTTPS实际上应用了Netscape的完全套接字层(SSL)作为HTTP 应用层的子层。(HTTPS使用端口443,而不是象HTTP那样使用端口80来和TCP/IP进行通信。)SSL使用40 位关键字作为RC4流加密算法,这对于商业信息的加密是合适的。HTTPS和SSL支持使用X.509数字认证,如果需要的话用户可以确认发送者是谁。 WWW的核心——HTTP协议 众所周知,Internet的基本协议是TCP/IP协议,目前广泛采用的FTP、Archie Gopher等是建立在TCP/IP协议之上的应用层协议,不同的协议对应着不同的应用。
WWW 服务器使用的主要协议是HTTP协议,即超文体传输协议。由于HTTP协议支持的服务不限于WWW,还可以是其它服务,因而HTTP协议允许用户在统一的界面下,采用不同的协议访问不同的服务,如FTP、Archie、SMTP、NNTP等。另外,HTTP协议还可用于名字服务器和分布式对象管理。 2.1 HTTP协议简介 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。 HTTP协议的主要特点可概括如下: 1.支持客户/服务器模式。 2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。 由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。 3.灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。 4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。 5.无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。 2.2 HTTP协议的几个重要概念 1.连接(Connection):一个传输层的实际环流,它是建立在两个相互通讯的应用程序之间。 2.消息(Message):HTTP通讯的基本单位,包括一个结构化的八元组序列并通过连接传输。 3.请求(Request):一个从客户端到服务器的请求信息包括应用于资源的方法、资源的标识符和协议的版本号 4.响应(Response):一个从服务器返回的信息包括HTTP协议的版本号、请求的状态(例如“成功”或“没找到”)和文档的MIME类型。

https协议的全称呢

竭诚为您提供优质文档/双击可除 https协议的全称呢 篇一:https协议 https https(全称:hypertexttransferprotocoloversecuresocketlayer),是以安全为目标的http通道,简单讲是http的安全版。即http 下加入ssl层,https的安全基础是ssl,因此加密的详细内容就需要ssl。它是一个uRischeme(抽象标识符体系),句法类同http:体系。用于安全的http数据传输。https:uRl 表明它使用了http,但https存在不同于http的默认端口及一个加密/身份验证层(在http与tcp之间)。这个系统的最初研发由网景公司进行,提供了身份验证与加密通讯方法,现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面。 一、信任主机的问题. 采用https的服务器必须从ca(certificateauthority)申请一个用于证明服务器用途类型的证书。该证书只有用于对应的服务器的时候,客户端才信任此主机。所以目前所有

的银行系统网站,关键部分应用都是 https的。客户通过信任该证书,从而信任了该主机。其实这样做效率很低,但是银行更侧重安全。这一点对我们没有任何意义,我们的服务器,采用的证书不管是自己发布的还是从公众的地方发布的,其客户端都是自己人,所以我们也就肯定信任该服务器。 二、通讯过程中的数据的泄密和被篡改 1.一般意义上的https,就是服务器有一个证书。 a)主要目的是保证服务器就是他声称的服务器,这个跟第一点一样。b)服务端和客户端之间的所有通讯,都是加密的。 i.具体讲,是客户端产生一个对称的密钥,通过服务器的证书来交换密钥,即一般意义上的握手过程。 ii.接下来所有的信息往来就都是加密的。第三方即使截获,也没有任何意义,因为他没有密钥,当然篡改也就没有什么意义了。 2.少许对客户端有要求的情况下,会要求客户端也必须有一个证书。a)这里客户端证书,其实就类似表示个人信息的时候,除了用户名/密码,还有一个ca认证过的身份。因为个人证书一般来说是别人无法模拟的,所有这样能够更深的确认自己的身份。 b)目前少数个人银行的专业版是这种做法,具体证书可

HTTPS协议研究

HTTPS协议研究 原理:HTTPS协议位于TCP/IP协议与应用层各协议之间,是基于HTTP协议的一种 对传输数据加密的协议。可以将其简要分解为:HTTP+SSL.它建立在可靠的传输协议之上(如TCP协议等。)当数据经过TCP协议封装之后,SSL会对数据包进行进一步的加密和封装,然后让加密之后的数据包经过HTTP协议的进一步封装之后走在公共信道之上,加密之后的数据包能保证即使数据包被第三方截取之后也不能看到数据包里面的明文。 SSL协议可以提供以下三方面的安全功能服务(也可由下图1.1.1给出): (1)信息加密:在信息传输之前对需要传输的信息进行加密,主要的机密技术有对称加密技术(如DES、IDEA),也有非对称加密技术(如RSA),本文采用的是 RSA技术,在后文将进一步讲述。 (2)身份认证:SSL协议要求在握手交换数据之前进行身份验证,其中包括对服务器的验证和对客户的验证,主要的身份认证技术有RSA(数字签名技术)、DSA(数 字签名算法)、和ECDSA(椭圆曲线数字签名算法),本文采用的是RSA。 (3)信息完整性校验:在客户和服务器接收到数据后,双方需要验证数据在传送或者存储过程中未被篡改、删除或者插入等。即通信的发送方通过散列函数产生消息 验证码(MAC),接收方通过验证MAC来保证信息的完整性,此文运用MD5 算法来进行信息完整性的校验。 图1.1.1(来自百度)

解说上面的SSL会话过程: (注:SSL会话建立的前提是服务器端在本地通过非对称加密算法(RSA)生成一对密钥(包含密钥和公钥),并将公钥信息发送给CA证书颁发机构,CA给服务器端颁发数字证书,并将证书发送至服务器端。在本次实验中,服务器端也是证书颁发机构。) SSL会话建立过程: 第一步:客户端向服务器端建立连接请求(TCP/IP) 第二步:当TCP/IP建立完成后,客户端和服务器之间协商使用哪种加密算法,本文加密算法为RSA。 第三步:协商完成后,服务器将公钥发送给客户端,客户端接收公钥信息。 第四步:客户端到CA证书颁发机构下载CA公钥信息,并对服务器端发送的证书做验证。第五步:随后,客户端在本地通过对称加密算法生成密钥,然后用服务器端发送的公钥进行对这段密钥进行加密,发送至服务器端,其保证了数据的机密性。 第六步:服务器用自己的私钥对这段数据进行解密,得到密钥,然后将客户端的请求数据进行加密发送给客户端。 第七步:客户端接到响应,并用密钥进行解密,得到数据。 第八步:通信结束后,断开会话通道(TCP/IP) 实现: 环境:在windows server 2003 下建立站点,用windows server 2003 以及windows 7去访问加密的站点 安装软件以及服务:Ethereal 抓包工具 iis服务证书服务 思想: (1)安装虚拟机 windows server 2003 虚拟机连接的方式设为NAT连接,通过虚拟网卡来连接网络。 (2)在windows server 2003 上安装iis组件 主要步骤: 1.在windows server 2003 中利用信息服务(iis)创建站点 2.然后安装证书服务 3.在Web服务器上设置ssl,生成证书申请 4.在IE浏览器中提交证书申请 5.在证书颁发机构颁发证书 6.在IE浏览器中下载证书并在Web服务器中安装证书 7.完成证书的申请和下载后,可以访问站点。 具体实现步骤以及截图: 1,安装iis,创建站点

HTTP协议转换成HTTPS协议

HTTP协议转换成HTTPS协议 考虑到数据的安全敏感性采用https是超文本传输协议(HTTP)加SSL/TLS(数据链接层加密技术)的组合,用以鉴定网络服务器身份并且提供用户与服务器加密通讯。 本文以jboss-4.2.3.GA版本为例讲解配置https方法。(tomcat在后面) 一、为服务器生成证书keystore密钥文件 1.以下是我在cmd中的操作: %JAVA_HOME%\bin\keytool -genkey -alias server -keyalg RSA -keystore f:\server.keystore -validity 3650 或有相应提示输入提示信息 在F盘生成了一个server.keystore密钥文件。 -alias server key的别名。具体参数见本文档附录最后。 二、将生成好的server.keystore放入你的jboss安装目录 生成完后server.keystore放入D:\ jboss-4.2.3.GA\server\default\conf中。 三、修改server.xml文件 1.修改D:\jboss-4. 2. 3.GA\server\default\deploy\jboss-web.deployer 目录下的 server.xml文件。 2.找到

keystoreFile="${jboss.server.home.dir}/conf/server.keystore" keystorePass="123456" clientAuth="false" sslProtocol="TLS" 也可不去掉注释增加如下代码: keystoreFile:server.keystore 在jboss中的位置,在第二步中放的位置 keystorePass:在cmd命令中输入的key密码一定要一直 sslProtocol="TLS":加密方式 可以参考官网https://www.wendangku.net/doc/3617523805.html,/jbossweb/3.0.x/ssl-howto.html 四、修改项目中web.xml配置文件增加如下配置。 HtmlAdaptor An example security config that only allows users with the role JBossAdmin to access the HTML JMX console web application *.do Protection should be CONFIDENTIAL CONFIDENTIAL

HTTPS协议工作原理介绍

HTTPS协议工作原理介绍 随着网络越来越普及,应用越来越广泛,一些网络安全问题也会越来越引起网民的关注。近日百度开放收录HTTPS引起了大家对HTTPS讨论的热潮,那么什么是https,HTTPS的工作原理又是什么?本位给大家介绍HTTPS协议工作原理。 一、什么是HTTPS 在说HTTPS之前先说说什么是HTTP,HTTP就是我们平时浏览网页时候使用的一种协议。HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全。为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。 二、HTTPS安全吗 这个答案是肯定的,很安全。谷歌公司已经行动起来要大力推广HTTPS的使用。百度也率先启用了全站HTTPS搜索,并且开放收录HTTPS站点。个人站长可到沃通CA等机构去申请免费SSL证书进行网站HTTPS加密。 三、HTTPS工作原理 HTTPS在传输数据之前需要客户端(浏览器)与服务端(网站)之间进行一次握手,在握手过程中将确立双方加密传输数据的密码信息。TLS/SSL中使用了非对称加密,对称加密以及HASH算法。握手过程的简单描述如下: 1.浏览器将自己支持的一套加密规则发送给网站。 2.网站从中选出一组加密算法与HASH算法,并将自己的身份信息以证书的形式发回给浏览器。证书里面包含了网站地址,加密公钥,以及证书的颁发机构等信息。 3.获得网站证书之后浏览器要做以下工作: a) 验证证书的合法性(颁发证书的机构是否合法,证书中包含的网站地址是否与正在访问的地址一致等),如果证书受信任,则浏览器栏里面会显示一个小锁头,否则会给出证书不受信的提示。 b) 如果证书受信任,或者是用户接受了不受信的证书,浏览器会生成一串随机数的密码,并用证书中提供的公钥加密。 c) 使用约定好的HASH计算握手消息,并使用生成的随机数对消息进行加密,最后将之前生成的所有信息发送给网站。 4.网站接收浏览器发来的数据之后要做以下的操作: a) 使用自己的私钥将信息解密取出密码,使用密码解密浏览器发来的握手消息,并验证HASH是否与浏览器发来的一致。

IIS上如何发布HTTPS协议的网站(详细图解)

IIS6使用指南之六:在IIS中部署HTTPS服务 【来源:https://www.wendangku.net/doc/3617523805.html, 作者:风间子更新时间:2007-05-14 | 字体:大中小】 分享到新浪微博 在IIS中部署HTTPS服务非常简单,所需要的就是在Web服务器上具有服务器身份验证证书,并将证书绑定在Web站点。如果Web服务器属于活动目录并且活动目录中具有在线的企业证书颁发机构,则可以在配置过程中在线申请并自动安装Web服务器证书,否则你需要离线申请Web服务器证书。 申请Web服务器证书的步骤如下: 在Web服务器上运行管理工具下的Internet信息服务管理控制台,在左面板展开Web站点节点,然后右击需要部署HTTPS服务的网站,在此我右击默认网站,选择属性; 在默认网站属性对话框,点击目录安全性标签,然后点击服务器证书按钮;

在欢迎使用Web服务器证书向导页,点击下一步; 在服务器证书页,选择新建证书,点击下一步;如果已经具有其他的服务器身份验证证书,则可以选择分配现有证书来将现有证书分配给此Web站点;

接下来的操作步骤我根据证书申请方式的不同,分别进行介绍: 离线申请证书 如果活动目录中没有在线的企业证书颁发机构或者Web服务器并不位于活动目录环境中,那么你必须离线申请Web服务器证书。 在延迟或立即请求页,选择现在准备证书请求,但稍后发送,然后点击下一步;

在名字和安全性设置页,在名称栏为新证书输入一个容易分辨的名字,然后点击下一步;

在单位信息页,在单位和部门栏中分别输入相关信息,然后点击下一步; 在站点公用名称页,输入Web站点的FQDN https://www.wendangku.net/doc/3617523805.html,,然后点击下一步;

http协议与https协议的区别

http协议与https协议的区别 大家打开网页时,会发现大多数网站都是以http协议开头的,当然也有发现少部分以https开头,例如淘宝,那么,http协议和https协议哪个更安全呢? 小编在这里详细介绍给大家。 HTTP,即超文本传输协议,是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP 最初的目的是为了提供一种发布和接收HTML页面的方法。1960年美国人Ted Nelson构思了一种通过计算机处理文本信息的方法,并称之为超文本(hypertext),这成为了HTTP超文本传输协议标准架构的发展根基。 虽然是当前使用最广泛的协议,但是HTTP协议以明文方式发送内容,不提供任何方式的数据加密,这导致这种方式特别不安全。如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此HTTP协议不适合传输一些敏感信息,比如信用卡号、密码等。 所以HTTPS协议正是为解决该问题而生,它可以称之为HTTP协议的安全版。

安全套接字层超文本传输协议HTTPS为了数据传输的安全,在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。 相比之下,HTTPS和HTTP的不同主要有以下四点: 一、https协议需要到ca申请证书,一般免费证书很少,需要交费。 二、http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。 三、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。 四、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

相关文档