在linux中实现https访问web站点的配置
2012-08-24 18:51
537 查看
HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。它的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。
HTTPS解决的问题:
一、解决了信任主机的问题:::采用https的服务器必须从CA (Certificate Authority)申请一个用于证明服务器用途类型的证书。该证书只有用于对应的服务器的时候,客户端才信任此主机。客户通过信任该证书,从而信任了该主机。
二、解决了通讯过程中的数据的泄密和被篡改的问题:服务器和客户端之间的所有通讯,都是加密的,加密的详细内容就需要SSL
客户端通过https方式访问服务器的过程:
1.客户机通过https访问web服务器,web服务器向客户机出示自己的证书
2. 客户机验证证书的有效性,包括发证时间,发证机关,执行者标识。
3.如果客户机验证证书通过,客户机随机产生128位的key,再利用证书文件传递的public key对该随即key机进行加密。
4.加密后传送至服务器端,服务器再利用自己的public key 对加密的key进行解密,得到客户机的随机key值。
5.这时两端的key值相同,利用该key进行加密通讯。
下面我们看配置的详细过程:
开启一台linux机器作为web服务器,地址为192.168.145.100,先在web服务器上安装好httpd;
建立一个挂载点:
因为要用到yum,所以先编辑yum文件:
编辑好后,保存退出。
安装httpd软件包,建立www服务器:
在这个www服务器的机器上做个小的页面,里面内容就是“hello internet”:
编辑httpd的主配置文档:
改变328命令行,开启身份验证:
然后编辑.htaccess文件(这是个隐藏文件),是用来创建身份验证的一个文件:
添加几行命令:
验证用户文件的位置;验证的基本方式;提示语;设置只有有效账户才能访问
编辑好后保存退出;
添加登陆web的用户:
用户user1添加完成;
当再次增加一个用户是,不要再加参数 -c了,:
如果加上是 -c时,user1就会被挤掉,所以只是第一次增加用户是才加上参数 -c;
查看信息:
启动httpd服务:
完成了httpd的一系列动作,这样也可以用http服务web站点了,但是不安全,我们要用https安全访问web站点,这样我们要做CA服务器。
再创建证书CA服务器:
回到pki目录:
编辑CA的配置文件:
把原来的参数改为optional,这样外来站点可以访问CA:
更改默认值,当向CA提出申请时候,可以简单明了:
创建上面文件中提到的目录和文件:
创建序列号,并追加到serial中:
先产生CA服务器自己的私钥:
添加1024位的非对称钥匙:
把产生的私钥放在private/cakey.pem文件中:
为了安全起见去掉里面的权限:
有了钥匙,再来产生CA服务器自己的证书:
根据自己的情况填写里面的内容:
然后做WEB服务器的证书和私钥:
新建一个文件,来存放私钥和证书:
创建Web服务器的私钥:
Web服务器通过自己的私钥创建一个证书请求:
CA服务器根据请求给web服务器一个证书:
为了证书的安全性,修改证书文件的权限:
Web服务器有了证书和私钥,必须向客户端显示自己的证书,需要安装ssl模块:
回到Server目录,可以看到mod-ssl的包:
上面已经安装了yum,所以直接用yum安装mod-ssl软件包即可:
回到httpd的配置文件的目录下,可以看到一个新产生的文件ssl.conf:
编辑这个文件:
更改几个命令行,112行填上web服务器证书的存放位置;
119行web私钥位置;128行原先是注释,是个证书链,现在打开并写上证书的路径;
检测编辑的是否有语法错误:
重启httpd服务:
完成后就可以安全的访问了:
测试结果:
进入一个xp系统的客户机:
在客户端的pc中的hosts文件中加上一条信息:
然后再浏览器中打开访问的站点www.zzdx.com
输入登陆的用户和密码:
可以看到我们在web服务器上做的网页内容:
当然我们能在弹出的安全警报上看到证书的详细内容:
这样我们完成了https访问web站点的操作;
本文出自 “网络技术之红帽” 博客,请务必保留此出处http://sf418.blog.51cto.com/5627295/972281
HTTPS解决的问题:
一、解决了信任主机的问题:::采用https的服务器必须从CA (Certificate Authority)申请一个用于证明服务器用途类型的证书。该证书只有用于对应的服务器的时候,客户端才信任此主机。客户通过信任该证书,从而信任了该主机。
二、解决了通讯过程中的数据的泄密和被篡改的问题:服务器和客户端之间的所有通讯,都是加密的,加密的详细内容就需要SSL
客户端通过https方式访问服务器的过程:
1.客户机通过https访问web服务器,web服务器向客户机出示自己的证书
2. 客户机验证证书的有效性,包括发证时间,发证机关,执行者标识。
3.如果客户机验证证书通过,客户机随机产生128位的key,再利用证书文件传递的public key对该随即key机进行加密。
4.加密后传送至服务器端,服务器再利用自己的public key 对加密的key进行解密,得到客户机的随机key值。
5.这时两端的key值相同,利用该key进行加密通讯。
下面我们看配置的详细过程:
开启一台linux机器作为web服务器,地址为192.168.145.100,先在web服务器上安装好httpd;
建立一个挂载点:
因为要用到yum,所以先编辑yum文件:
编辑好后,保存退出。
安装httpd软件包,建立www服务器:
在这个www服务器的机器上做个小的页面,里面内容就是“hello internet”:
编辑httpd的主配置文档:
改变328命令行,开启身份验证:
然后编辑.htaccess文件(这是个隐藏文件),是用来创建身份验证的一个文件:
添加几行命令:
验证用户文件的位置;验证的基本方式;提示语;设置只有有效账户才能访问
编辑好后保存退出;
添加登陆web的用户:
用户user1添加完成;
当再次增加一个用户是,不要再加参数 -c了,:
如果加上是 -c时,user1就会被挤掉,所以只是第一次增加用户是才加上参数 -c;
查看信息:
启动httpd服务:
完成了httpd的一系列动作,这样也可以用http服务web站点了,但是不安全,我们要用https安全访问web站点,这样我们要做CA服务器。
再创建证书CA服务器:
回到pki目录:
编辑CA的配置文件:
把原来的参数改为optional,这样外来站点可以访问CA:
更改默认值,当向CA提出申请时候,可以简单明了:
创建上面文件中提到的目录和文件:
创建序列号,并追加到serial中:
先产生CA服务器自己的私钥:
添加1024位的非对称钥匙:
把产生的私钥放在private/cakey.pem文件中:
为了安全起见去掉里面的权限:
有了钥匙,再来产生CA服务器自己的证书:
根据自己的情况填写里面的内容:
然后做WEB服务器的证书和私钥:
新建一个文件,来存放私钥和证书:
创建Web服务器的私钥:
Web服务器通过自己的私钥创建一个证书请求:
CA服务器根据请求给web服务器一个证书:
为了证书的安全性,修改证书文件的权限:
Web服务器有了证书和私钥,必须向客户端显示自己的证书,需要安装ssl模块:
回到Server目录,可以看到mod-ssl的包:
上面已经安装了yum,所以直接用yum安装mod-ssl软件包即可:
回到httpd的配置文件的目录下,可以看到一个新产生的文件ssl.conf:
编辑这个文件:
更改几个命令行,112行填上web服务器证书的存放位置;
119行web私钥位置;128行原先是注释,是个证书链,现在打开并写上证书的路径;
检测编辑的是否有语法错误:
重启httpd服务:
完成后就可以安全的访问了:
测试结果:
进入一个xp系统的客户机:
在客户端的pc中的hosts文件中加上一条信息:
然后再浏览器中打开访问的站点www.zzdx.com
输入登陆的用户和密码:
可以看到我们在web服务器上做的网页内容:
当然我们能在弹出的安全警报上看到证书的详细内容:
这样我们完成了https访问web站点的操作;
本文出自 “网络技术之红帽” 博客,请务必保留此出处http://sf418.blog.51cto.com/5627295/972281
相关文章推荐
- 在Linux中实现https访问web站点
- 在Linux中实现https访问web站点
- https加密访问web站点的实现
- 在linux安装配置svn并实现支持ssl认证https安全访问方式
- linux下利用https实现站点访问
- linux实现https方式访问站点
- Linux实现https方式访问站点
- HTTPS加密访问Web站点的实现和虚拟站点的实现例析(一)
- WDCP上配置SSL证书即https 2017-08-28 百度总结 操作环境:linux的WDCP操作面板(没有操作面板就在命令行操作) wdcp 安装ssl证书教程实现https访问 1.申请
- Linux下利用Https实现站点访问
- Linux如何利用https访问web站点
- 蛙蛙推荐:用TLS实现安全TCP传输及配置和访问https的web服务
- Linux实现https方式访问站点
- HTTPS加密访问Web站点的实现和虚拟站点的实现例析(二)
- 在Linux中实现https访问站点
- Linux下SVN部署/安全及权限配置,实现web同步更新
- 在ubuntu10.04环境下配置samba服务器——实现windows直接访问linux
- Linux下SVN部署/安全及权限配置,实现web同步更新
- apache配置,禁止ip访问web站点
- Nginx下配置网站SSL实现https访问本站就是用的这方法