openssl req命令主要的功能有,生成证书请求文件, 查看验证证书请求文件,还有就是生成自签名证书。
本文就主要记录一下openssl命令选项的意义,并记录一下简单的命令示例。
首先说明下生成证书请求需要什么:申请者需要将自己的信息及其公钥放入证书请求中。但在实际操作过程中,
所需要提供的是私钥而非公钥,因为它会自动从私钥中提取公钥。另外,还需要将提供的数据进行数字签名
(使用单向加密),保证该证书请求文件的完整性和一致性,防止他人盗取后进行篡改,
主要命令选项:
     -new    :说明生成证书请求文件
     -x509   :说明生成自签名证书
     -key    :指定已有的秘钥文件生成秘钥请求,只与生成证书请求选项-new配合。
     -newkey :-newkey是与-key互斥的,-newkey是指在生成证书请求或者自签名证书的时候自动生成密钥,
              然后生成的密钥名称由-keyout参数指定。当指定newkey选项时,后面指定rsa:bits说明产生
              rsa密钥,位数由bits指定。 如果没有指定选项-key和-newkey,默认自动生成秘钥。
     -out    :-out 指定生成的证书请求或者自签名证书名称
     -config :默认参数在ubuntu上为 /etc/ssl/openssl.cnf, 可以使用-config指定特殊路径的配置文件
     -nodes  :如果指定-newkey自动生成秘钥,那么-nodes选项说明生成的秘钥不需要加密,即不需要输入passphase.  
     -batch  :指定非交互模式,直接读取config文件配置参数,或者使用默认参数值     
命令示例:
1.
#生成自签名证书,证书名client.crt,采用自动生成秘钥的方式,指定生成秘钥长度为1024,加密,秘钥文件client.key.
openssl req -x509 -newkey rsa:1024 -out client.crt -keyout client.key -batch -nodes  
#上面的命令加上-new选项是同样的执行效果
openssl req -new -x509 -newkey rsa:1024 -out client.crt -keyout client.key -batch -nodes  
2.
#生成自签名证书,证书名client.crt,指定秘钥文件,秘钥文件为rsa_private_key.pem。
openssl req -new -x509 -key ./rsa_private_key.pem -out client.crt -nodes -batch
#注意下面命令不能正确执行,不加-new 命令貌似不能指定秘钥文件
openssl req -x509 -key ./rsa_private_key.pem -out client.crt -nodes -batch
3.
#指定秘钥文件pri_key.pem,生成证书请求文件 req.csr
openssl req -new -key pri_key.pem -out req.csr
#使用req命令,以文本方式查看刚生成的证书请求文件
openssl req -in req1.csr -text
#查看证书请求文件的公钥, 这个公钥就是从pri_key.pem私钥文件导出的公钥
openssl req -in req1.csr -noout -pubkey
下列选项和-noout选项配合分别查看证书请求文件的部分内容
-noout -pubkey   #查看证书请求文件的公钥
-noout -subject  #查看证书请求文件的个人信息部分
最后可以通过man req 查看详细的openssl req的详细信息。
————————————————
版权声明:本文为CSDN博主「花括号」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/abccheng/article/details/82622899

(转)openssl 命令: openssl req 命令详解的更多相关文章

  1. linux管道命令grep命令参数及用法详解---附使用案例|grep

    功能说明:查找文件里符合条件的字符串. 语 法:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>] ...

  2. linux mount命令参数及用法详解

    linux mount命令参数及用法详解 非原创,主要来自 http://www.360doc.com/content/13/0608/14/12600778_291501907.shtml. htt ...

  3. 【转】linux expr命令参数及用法详解

    在抓包过程中,查看某个设定时间内,数据上下行多少,用命令expr 计算! --------------------------------------------------------------- ...

  4. linux useradd(adduser)命令参数及用法详解(linux创建新用户命令)

    linux useradd(adduser)命令参数及用法详解(linux创建新用户命令) useradd可用来建立用户帐号.帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号 ...

  5. linux dmesg命令参数及用法详解(linux显示开机信息命令)

    linux dmesg命令参数及用法详解(linux显示开机信息命令) http://blog.csdn.net/zhongyhc/article/details/8909905 功能说明:显示开机信 ...

  6. linux sed命令参数及用法详解

    linux sed命令参数及用法详解 http://blog.csdn.net/namecyf/article/details/7336308 1. Sed简介 sed 是一种在线编辑器,它一次处理一 ...

  7. Linux Bash命令关于程序调试详解

    转载:http://os.51cto.com/art/201006/207230.htm 参考:<Linux shell 脚本攻略>Page22-23 Linux bash程序在程序员的使 ...

  8. linux dd命令参数及用法详解---用指定大小的块拷贝一个文件(也可整盘备份)

    linux dd命令参数及用法详解---用指定大小的块拷贝一个文件 日期:2010-06-14 点击:3830 来源: 未知 分享至:            linux dd命令使用详解 dd 的主要 ...

  9. (转)linux expr命令参数及用法详解

    linux expr命令参数及用法详解 原文:http://blog.csdn.net/tianmohust/article/details/7628694 expr用法 expr命令一般用于整数值, ...

  10. (转)Linux命令之Ethtool用法详解

    Linux命令之Ethtool用法详解 原文:http://www.linuxidc.com/Linux/2012-01/52669.htm Linux/Unix命令之Ethtool描述:Ethtoo ...

随机推荐

  1. git使用以及对应sourceTree

    git上面的几条指令 (1)要想把A合并到B分支上,就需要先切换到B分支上,然后在合并A分支,执行指令: git checkout B // 这是切换到B分支上 git merge A // 这是将A ...

  2. 运维LVS三种模式十种调度算法

    一.LVS简介 LVS(Linux Virtual Server)即Linux虚拟服务器,是由章文嵩博士主导的开源负载均衡项目,目前LVS已经被集成到Linux内核模块中.该项目在Linux内核中实现 ...

  3. Restful 架构方式的 web service

    现在公司项目用的apache wink 搭建的web service ,感觉挺好用的.顺便学习一个这种架构方式 . 个人理解apache 实现Restful 架构方式技术有两种,如果有其他新的知识或不 ...

  4. MSDN上对yield关键字的示例

    public class PowersOf2 { static void Main() { // Display powers of 2 up to the exponent of 8: , )) { ...

  5. C++ 临时对象的生存周期

    C++ 临时对象的生存周期是一个不小的坑,参考 C++ standard 第十二章第二节,总结其规则如下: 基本原则:临时变量生存到其所在的完整表达式执行完毕之后(若作为函数参数,则以函数所在的完整表 ...

  6. 基于zynq XC7Z100 FMC接口通用计算平台 XC7Z100

      一.板卡概述 本板卡基于Xilinx公司的FPGA XC7Z100 FFG 9000 芯片, 该平台为设计和验证应用程序提供了一个完整的开发平台.该平台使设计师能够更加简单进行高性能的原型设计,并 ...

  7. mysql5.7.26做主从复制配置

    一.首先两台服务器安装好mysql数据库环境 参照linux rpm方式安装mysql5.1 https://www.cnblogs.com/sky-cheng/p/10564604.html 二.主 ...

  8. Django学习系列6:使用selenium测试用户交互

    学习系列5中的单元测试有报错信息,这儿来编写functional_tests.py文件,扩充其中的功能测试 # File: functional_test.py # Author: Rxf # Cre ...

  9. Django学习系列4:编写第一个简单的应用代码

    首页视图编写 lists/tests.py from django.test import TestCasefrom django.urls import resolvefrom lists.view ...

  10. SugarCRM开发入门

    SugarCRM官网下载地址:https://sourceforge.net/projects/sugarcrm/ 概述 Sugar最初是基于LAMP(Linux.Apache.MySQL和PHP)运 ...