Centos 6.5 头疼的https

一直以来都是对HTTPS加密一知半解,想找个时间,格物致知.

  HTTPS其实是有两部分组成:HTTP + SSL / TLS,也就是在HTTP上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据。具体是如何进行加密,解密,验证的.

      CA(Certificate Authority)是证书的签发机构,它是负责管理和签发证书的第三方机构,是受到广泛信任的机构。一般在我们的电脑中,浏览器里,或者手机里都会内置一批这样的受信机构的根证书。

      公钥密码体制:

      公钥密码体制分为三个部分,公钥、私钥、加密解密算法,它的加密解密过程如下:

      加密:通过加密算法和公钥对内容(或者说明文)进行加密,得到密文。加密过程需要用到公钥。 

      解密:通过解密算法和私钥对密文进行解密,得到明文。解密过程需要用到解密算法和私钥。注意,由公钥加密的内容,只能由私钥进行解密,也就是说,由公钥加密的内容,如果不知道私钥,是无法解密的。

      公钥密码体制的公钥和算法都是公开的(这是为什么叫公钥密码体制的原因),私钥是保密的。一般来说都是,公钥加密,私钥解密.在实际的使用中,有需要的人会生成一对公钥和私钥,把公钥发布出去给别人使用,自己保留私钥.

   查了查资料.

   CSR文件用来申请证书(提供给证书供应商)

   KEY文件是私钥,用来配置ssl(放到服务器)

   CERT是证书供应商颁发的证书(放到服务器)

  • .key文件:密钥文件,SSL证书的私钥就包含在其中
  • .crt文件:证书文件,证书打开会就会看到申请的域名
  • .crs文件或者.cer:证书请求

在Centos6.5来说,我们已经安装好了apache.配置如下

在   /var/www/html 编写访问内容,文件名为index.html

在  /etc/httpd/conf.d/在 编写文件vhost.conf

其中还要放行防火墙的80端口,重启iptables,httpd服务,然后就能访问到网页.

 

 安装,openssl,mod_ssl

 

利用 OpenSSL 来产生一张自我签署的凭证。

制作私钥

 

制作csr

 

制作crt

 

复制文件到正确位置

 

更改/etc/httpd/conf.d中  mod文件的后缀名.

 

 

复制钥匙

cp ca.crt /etc/pki/tls/certs
cp ca.key /etc/pki/tls/private/ca.key
cp ca.csr /etc/pki/tls/private/ca.csr

不知道大家有没有想过,为什么把钥匙放在这些目录下,放别的地方不可以嘛?

好,我们来找找为什么

下载yum -y  install  mod_ssl

然后再/etc/httpd/conf.d里面有一个配置文件

 

我们进去看看,我们把localhost.crt,改成我们做的ca.crt,同理,把localhost.key,改成ca.key.    注意文件路径

 

编辑

[root@orz conf.d]# cat vhost.conf 
listen 443
<virtualhost *:443>
documentroot /var/www/html
servername 127.0.0.1
sslengine on
sslcertificatefile /etc/pki/tls/certs
sslcertificatekeyfile /etc/pki/tls/private/ca.key
</virtualhost>
 

 

放防火墙,重启防火墙,http服务.

然后访问,会有验证界面,点一下,就能看到已下网页了.            步骤全是一样的,在Centos6.5上没报错但访问不了,然后用redhat7.0就能访问.还在研究到底是问题

 

 

最后提供Centos6.5搭建https的官方实验手册供大家参考学习

https://wiki.centos.org/zh/HowTos/Https

 

=============================================================================

写得有点乱,还是鼓捣研究了一会  Centos6.5前面步骤都是一样的

配置文件得改一改

vim  /etc/httpd/conf.d/vhost.conf

<VirtualHost _default_:443>   
DocumentRoot "/home/store/webroot"
Servername domain
ErrorLog logs/ssl_error_log
TransferLog logs/ssl_access_log
LogLevel warn
SSLEngine on
 SSLCertificateFile /etc/httpd/certs/ca.crt
SSLCertificateKeyFile /etc/pki/tls/private/ca.key
</VirtualHost>
 

重启服务

(网上找了资料,could  not  determine the server's ....    这个错误   说是改ssl.conf   里面的

改了之后 去掉#,加端口,并没有什么用)

 

 先不管那边多,放行443端口,重启httpd服务.

 

打开firefox 输入https://127.0.0.1

 

 

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值