1.前言

现在的web应用对安全越来越重视了,很多应用必须采用https来传输数据。但是https必须要有证书,在开发和测试环境一般我们在没条件采用ca签发的可信证书的情况下,我们可以使用openssl,或者keytool等ssl的密码库工具制作证书。

2.使用openssl制作证书

2.1 生成私钥

openssl genrsa -out private.key 2048

genrsa: 表示使用rsa算法,openssl还支持RSA, DSA, ECDSA, and EdDSA,
2048:表示私钥的大小,单位为位
私钥生成后可使用cat 命令查看,其内容为pem格式

如果生成的私钥需要密码保护,则可在生成私钥时指定加密算法(后续每次使用私钥时都会要求输入访问秘钥的密码)

openssl genrsa  -aes256 -passout pass:123456 -out rsa_private.key 2048

其中 passout 代替shell 进行密码输入,否则会提示输入密码;

2.2 生成rsa 公钥

openssl rsa -in rsa_private.key -pubout -out rsa_public.key

2.3 生成自签名证书(不基于csr)

openssl req -new -x509 -days 3650 -key private.key -out cert.crt

-x509:表示证书格式
-day: 表示证书的有效天数
根据提示输入相关信息,Common Name 可绑定域名或ip地址,域名可配通配符。

2.4 证书的转换

一般web服务器常用的证书格式为 pkcs12,jks等,即证书包含私钥。我们需要将pem证书和私钥合成p12证书

openssl pkcs12 -export -in cert.crt -inkey private.key  -out server.p12

shell 会提示你输入p12证书的访问密码。

openssl还有很多特性可以参考下官方文档
https://www.feistyduck.com/library/openssl-cookbook/online/ch-openssl.html

使用openssl制作https的证书相关推荐

  1. primekey证书服务器,使用 OpenSSL 制作 ECDH 密钥交换证书

    前言 对于 ECDH,Wikipedia 如下描述: Elliptic curve Diffie–Hellman (ECDH) is an anonymous key agreement protoc ...

  2. OpenSSL创建HTTPS的证书认证

    一.HTTPS的证书 HTTPS是HTTP+TLS结合的产物. HTTPS利用TLS可以完成: ①身份认证(防止冒充身份) ②加密数据(防止监听到数据) ③保证信息的完整性(防止信息的篡改) 而HTT ...

  3. Ubuntu18.04 使用 openssl制作自签名证书

    执行"openssl verison",判断系统是否已安装openssl,若没有安装,请使用apt安装openssl. 一.图解自签名过程 二.关于 CRT PEM KEY CST ...

  4. Java使用openssl详解(openssl安装教程、openssl制作证书、java代码实现openssl、浏览器通过https访问后端)入门

    安装openssl 通过官网的下载源码编译或者直接通过exe文件直接下一步下一步安装完成,网上教程很多! openssl制作证书 先创建3个目录 certificate.service .client ...

  5. 如何使用Openssl 制作CA证书

    一.SSL协议百科名片 SSL是Secure Socket Layer(安全套接层协议),可以在Internet上提供秘密性传输.Netscape公司在推出第一个Web浏览器的同时,提出了SSL协议标 ...

  6. 使用OpenSSL工具制作X.509证书的方法及其注意事项总结

    如何使用OpenSSL工具生成根证书与应用证书 // 生成顶级CA的公钥证书和私钥文件,有效期10年(RSA 1024bits,默认) openssl req -new -x509 -days 365 ...

  7. Nginx通过OpenSSL创建自签名证书配置HTTPS及二级目录

    目录 配置Https Nginx配置二级目录 升级示例 部署HTTP 升级为HTTPS 配置Https Nginx通过OpenSSL配置Https及二级虚拟目录 1.创建私钥秘钥和证书 mkdir - ...

  8. 转载:Openssl生成rsa和椭圆曲线加密公钥密钥创建根ca签名https服务器证书签名...

    转载:Openssl生成rsa和椭圆曲线加密公钥密钥创建根ca签名https服务器证书签名 Openssl生成rsa和椭圆曲线加密公钥密钥创建根ca签名https服务器证书签名 July 20, 20 ...

  9. nginx--基于openssl自颁发SSL证书实现HTTPS协议安全访问网站

    学习背景 大家在nginx安装(nginx安装教程)后,启动nginx,访问静态页面时,一般都是直接通过HTTP协议进行访问页面,如下图所示: 但实际应用中,有很多网站基于安全方面上的考虑,都有自己的 ...

最新文章

  1. Mysql 批量写入数据 性能优化
  2. 【Tools】cmake 常用变量和常用环境变量查表手册---整理
  3. windows 2008 域 删除不活动计算机账号,如何删除域内非活动计算机账号?
  4. 话说模式匹配(5) for表达式中的模式匹配
  5. MAX_VALUE的最大值和最小值是多少
  6. 页面载入时在导航栏显示背景图片
  7. 关于JSTL的简单说明
  8. CF321E Ciel and Gondolas BZOJ 5311 贞鱼
  9. 把SWT包装成Plugin需要修改的地方
  10. [cocos2d-x]动作+场景切换
  11. 【图像融合】基于matlab GUI小波变换彩色图像融合(带面板)【含Matlab源码 782期】
  12. 区块链java开源框架_github上的java三大开源区块链类库?
  13. 申报软件著作权时,怎样快捷计算源代码行数
  14. XMPP即时通讯协议使用(一)——Openfire安装
  15. 一个php网站加入背景音乐,html页面中如何添加背景音乐
  16. sftp 中文乱码 连接后_LINUX SFTP 中文 乱码
  17. 外链平台怎么找?什么形式的外链最好?
  18. 故障恢复控制台应用指南
  19. 销售书籍推荐:做销售你究竟该看什么书?
  20. JMeter接口自动化发包与示例

热门文章

  1. 互联网日报 | 2月24日 星期三 | 华为去年收入利润保持正增长;特斯拉公开全国统一维保价目表;途虎养车回应赴美上市传闻...
  2. WordPress 函数大全
  3. linux下CUPS学习心得
  4. 使用TF Service搭建在线服务:part-1
  5. 【原创】Unity3D 模仿《魔兽世界》的第三人称角色控制器
  6. 已知一点经纬度和距离,计算另一点的经纬度
  7. php artisan 命令详解,Artisan命令详解
  8. inversion 矩阵_inversion是什么意思_inversion怎么读_inversion翻译_用法_发音_词组_同反义词_倒置-新东方在线英语词典...
  9. 解决无字幕问题--射手影音VS迅雷影音
  10. beyond compare