开发者社区> 科技小能手> 正文

使用openssl给web站点颁发证书

简介:
+关注继续查看

背景介绍

在生产环境中,有时会需要用到自签名的证书,而谷歌浏览器从2016年开始就降低了sha1的算法级别,openssl默认使用的是sha1的算法,以下就来介绍openssl如何使用sha256的加密算法对web站点进行加密。拓扑图如下:

spacer.gifwKiom1e5QVagqSrKAAA5EWBA0HE807.png-wh_50

操作步骤

1.安装httpd服务

 yum -y install httpd 

 chkconfig httpd on

 service httpd start

没有域名解析的话,httpd会启动很慢同时提示

spacer.gifwKiom1e5QVbRxNpBAAAlqmkVtbU073.png-wh_50

解决的方法是修改httpd配置文件vim /etc/httpd/conf/httpd.conf

spacer.gifwKioL1e5QVfBPutPAAAvVqK3gg0417.png-wh_50

在/var/www/html目录下创建个index.html文件,随便写点内容作为主页,然后查看80端口是否正常侦听

spacer.gifwKiom1e5QVeiR4pNAAA0JyA95O4110.png-wh_50

2.为CA颁发自签名证书

首先需要说明的是,证书是一个由公钥和私钥组成的密钥对,所以颁发证书时需要先生成密钥对,所以进入/etc/pki/CA目录上生成一个密钥对并保存到/etc/pki/CA/private目录下取名为cakey.pem

spacer.gifwKioL1e5QVeQXNnCAAAs0g3ifPQ030.png-wh_50

Linux和windows不同不会因后缀名来区分文件类型,此处密钥对需要放在/etc/pki/CA/private目录下取名为cakey.pem的原因是在/etc/pki/tls/openssl配置文件中默认了CA密钥对和证书的路径和名称,如果不按照默认存放,请记得修改配置文件

spacer.gifwKiom1e5QVjwxAOsAACAaHILb70198.png-wh_50

还需要求改[ CA_dfault ]字段的default_md,此处是设置由这台CA颁发出去证书的加密算法

spacer.gifwKioL1e5QViwV0QhAABMYh9XJSE573.png-wh_50

同时还要修改[ req ]字段的default_md,此处是设置CA自签名证书的加密算法,如果只给颁发证书的算法设置为sha256,在谷歌浏览器下仍会不被信任,原因是一个受信任的证书除了自身外,必须整个证书链都是受信任

spacer.gifwKioL1e5QViiJargAAA_JjMYZlY265.png-wh_50

生成CA的自签名证书,证书名和路径要和配置文件保持一致,不再赘述,重点注意红框部分后面详细介绍

spacer.gifwKiom1e5QVnDcLSfAABESidAoK4357.png-wh_50

-new   申请一个新证书

-x509  证书格式标准

-key   密钥文件位置

-days  证书有效期

填写证书信息时要注意Common Name一定要和你要申请的名称保持一致

spacer.gifwKioL1e5QVnTt3feAABBjXecy00054.png-wh_50

此时的/etc/pki/CA路径下并没有配置文件中的index.txt、serial、crlnumber文件,所以还需要手动创建

spacer.gifwKiom1e5QVnAh-J9AAAvk-e8Eak996.png-wh_50

创建完成后设置一个初始证书颁发号,至此CA上的操作完成

spacer.gifwKioL1e5QVqSn1pmAAAWKVoDBsk018.png-wh_50

3.Web站点申请证书

进入/etc/httpd目录下创建一个ssl目录,在该目录下为web服务器生成一个密钥http.key

spacer.gifwKiom1e5QVrxXme1AAAeteAXy9U072.png-wh_50

再为Web服务器生成一个证书申请

spacer.gifwKioL1e5QVrjLRs0AAB1bbgbnho266.png-wh_50

仔细观察会发现,他和CA的自签名证书很相似,相比较CA的自签名证书少了-x509和-days两个参数,通过man req文档得知req命令使用-x509参数生成的是一个自签名证书而取代证书申请,所以此处不能使用-x509,且这只是个证书申请,证书的有效期应该有CA来指定,所以此处也不需要-days选项

spacer.gifwKiom1e5QVvREgsSAAAvavnf134030.png-wh_50

由于CA与Web是同一台机器,所以不需要将申请拷贝到其他机器,直接颁发证书

spacer.gifwKioL1e5QVuCpmfoAAAhzR5xrco555.png-wh_50

httpd默认不会安装mod_ssl模块,无法使用https的方式访问,需要yum -y install mod_ssl手动安装,并找到mod_ssl的配置文件

spacer.gifwKiom1e5QVzyveVGAAApN3i-gDE445.png-wh_50

打开mod_ssl的配置文件,按实际指定Web站点的证书文件与私钥文件路径,退出后使用httpd -t检查配置文件,然后重启httpd服务,至此Web站点配置完成

spacer.gifwKiom1e5QVzBT3yJAABrTLsn2Es194.png-wh_50

4.Client端配置

将CA的自签名证书/etc/pki/CA/cacert.pem导出到桌面,并改名为cacert.crt,然后通过MMC导入到受信任的根证书颁发机构

spacer.gifwKioL1e5QV2CltnsAADbTZfgnDw426.png-wh_50

修改Client端本地host文件,至此Client端配置完成

spacer.gifwKioL1e5QV2jJNZkAAAU8D8pKUg226.png-wh_50

5.检测

使用谷歌浏览器输入地址打开验证效果

spacer.gifwKiom1e5QV2RME6dAABmYohgLQ0585.png-wh_50




本文转自 qiao645 51CTO博客,原文链接:http://blog.51cto.com/arkling/1840800

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
天人合一物我相融,站点升级渐进式Web应用PWA(Progressive Web Apps)实践
PWA(Progressive web apps,渐进式 Web 应用)使用现代的 Web API 以及传统的渐进式增强策略来创建跨平台 Web 应用程序,说白了,PWA可以让我们的站点以原生APP的形式运行,但相比于安装原生APP应用,访问PWA显然更加容易和迅速,还可以通过链接来分享PWA应用。
95 0
现代化Web 站点构建介绍——端云调试
现代化Web 站点构建介绍——端云调试自制脑图 介绍了具体怎么在 Serverless Hub 实施。
13 0
Serverless 带给 web 开发的改变——现代化Web 站点构建介绍
Serverless 带给 web 开发的改变——现代化Web 站点构建介绍自制脑图, 介绍了建站演示和端云调试
25 0
分布式服务器框架之服务器+Web站点+类库工程创建
类库Servers.Core、Servers.Common、Servers.Model、Servers.Hotfix 四个库项目都选择.Net Core平台,如果找不到这个模板的话需要安装.Net通用开发工具包,因为这个框架可以实现跨平台,所以选择了.Net Core。是微软最新一代的平台虚拟机框架。一直点击下一步
18 0
阿里云服务器购买后如何使用?阿里云服务器搭建Web站点图文教程
阿里云服务器购买后如何使用?本文为大家介绍两种最常见且简单的搭建Web站点的方式,第一种是在Windows Server 2012 R2 64位系统的ECS实例上使用IIS服务器搭建多个Web站点。第二种是通过阿里云云市场镜像在Windows操作系统的ECS实例上快速部署Web环境。利用宝塔Windows面板一键安装IIS组件、PHP环境、MySQL数据库。
303 0
2 Web站点信息收集
2 Web站点信息收集
49 0
使用Flask构建一个web站点
flask—website,是flask曾经的主站源码,使用flask制作,包含模版渲染,数据库操作,openID认证, 全文检索等功能。对于学习如何使用flask制作一个完备的web站点,很有参考价值,我们一起来学习它。
107 0
阿里云服务器ECS购买、部署Web站点流程详解
讲述阿里云服务器购买细节,以及如何使用ECS服务器部署Web站点
13417 0
gitee+宝塔实现本地代码svn提交到仓库之后自动同步到web站点教程
gitee又叫码云是和github类似的国内代码托管平台,之所有选择码云也是因为它在国内速度比较快,地址:https://gitee.com/
277 0
文章
问答
文章排行榜
最热
最新
相关电子书
更多
边缘安全,让Web加速有保障
立即下载
使用CNFS搭建弹性Web服务
立即下载
WEB框架0day漏洞的发掘及分析经验分享
立即下载