openssl命令用法
openssl命令
配置文件:/etc/pki/tls/openssl.cnf
命令格式:
openssl command [ command_opts ] [ command_args ]
众多子命令,常用有以下几项:
1.对称加密
openssl enc -[e/d] [-a] [-salt] -Cipher -in /PATH/TO/SOMEFILE -out /PATH/TO/SOMEFILE
-e:加密
-d:解密
-a:将数据变为base64编码
-salt:添加随机数
-Cipher:加密的算法
示例:
openssl enc -e -a -des3 -in test.txt -out test3.txt //加密test.txt
openssl enc -d -a -des3 -in test3.txt -out test1.txt //解密test3.txt
2.单向加密
openssl dgst -Cipher /PATH/TO/SOMEFILE
示例:
openssl dgst -md5 test.txt
MD5(test.txt)= 83c16453b40e59f283211be8fa57d990 //加密结果
3.公钥加密
①生成私钥
(umask 077;openssl genrsa -out /PATH/TO/SOMEFILE NUM_BITS(位数,只能是2的倍数))
示例:
(umask 077;openssl genrsa -out test.key 1024)
②提取公钥
openssl rsa -in /PATH/TO/SOMEFILE -pubout
4.加密用户密码
openssl passwd -1 -salt PASSWORD
5.生成随机数
openssl rand -base64/-hex(16进制数字) NUM(字节数)
如何构建私有CA
1.在服务器主机生成证书
①生成私钥
(umask 077;openssl genrsa -out /etc/pki/CA/private/cakey.pem 1024)
②生成证书
openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days 365
③为证书提供所需的目录和文件
mkdir -pv /etc/pki/CA/{certs,ctl,newcerts}
touch /etc/pki/CA/{serial,index.txt}
echo 01 > /etc/pki/CA/serial //将序列号写入此文件
2.在客户端生成证书签署请求
①客户端主机生成私钥
(umask 077;openssl genrsa -out /root/mykey.key 1024)
②生成证书签署请求
openssl req -new -key /root/mykey.key -out /root/mykey.csr -days 365
③将证书签署请求通过可靠的方式发给CA主机
scp /root/mykey.csr root@192.168.1.1:/root
④在CA主机上签署证书
openssl ca -in /root/mykey.csr -out /root/mykey.crt -days 365
⑤将签好的证书再次发给请求签证的客户端即可
查看证书信息命令:openssl x509 -in /root/mykey.crt -noout -serial -subject
openssl命令用法的更多相关文章
- openssl命令行工具简介 - 指令x509
原文链接: http://blog.csdn.net/allwtg/article/details/4982507 openssl命令行工具简介 - 指令x509 用法: open ...
- openssl的用法
Openssl详细用法: OpenSSL 是一个开源项目,其组成主要包括一下三个组件: openssl:多用途的命令行工具 libcrypto:加密算法库 libssl:加密模块应用库,实现了ssl及 ...
- systemctl命令用法详解
systemctl命令用法详解系统环境:Fedora 16binpath:/bin/systemctlpackage:systemd-units systemctl enable httpd.serv ...
- cpio命令用法
[转自]流浪妖精のSKY http://www.cnitblog.com/flutist1225/articles/18974.html cpio命令用法 cpio命令 利用cpio 可 ...
- shutdown命令用法
首先我们先创建一个txt文件,添加shutdown -r -f -t 0 ,文件点击另存为,选择所有类型,保存格式为“重启.bat”文件. 说明:shutdown命令用法: /r 关闭 ...
- linux中comm命令用法
linux系统中comm命令用法详解 linux系统下的comm命令是一个非常实用的文件对比命令. comm命令功能: 选择或拒绝两个已排序的文件的公共的行. comm命令语法:comm [-12 ...
- OpenSSL命令系列
1.1 ssl命令系列前言 openssl命令的格式是"openssl command command-options args",command部分有很多种命令,这些命令需要依赖 ...
- Ubuntu kill命令用法详解
转自:Ubuntu kill命令用法详解 1. kill 作用:根据进程号杀死进程 用法: kill [信号代码] 进程ID root@fcola:/# ps -ef | grep sen ...
- install 命令用法详解
install 命令用法详解 http://man.linuxde.net/install install命令的作用是安装或升级软件或备份数据,它的使用权限是所有用户.install命令和cp命令类似 ...
随机推荐
- Lua与C++相互调用
{--1.环境--} 为了快速入手,使用了小巧快速的vc++6.0编译器 以及在官网下载了Lua安装包..官网地址{--http://10.21.210.18/seeyon/index.jsp--} ...
- 一个链式调用 setTimeout的例子
<div> 现在时间是:<input type="text" id="name1" size="16" value=&qu ...
- Maven学习8-使用Maven构建多模块项目
在平时的Javaweb项目开发中为了便于后期的维护,我们一般会进行分层开发,最常见的就是分为domain(域模型层).dao(数据库访问 层).service(业务逻辑层).web(表现层),这样分层 ...
- C# 给某个方法设定执行超时时间 C#如何控制方法的执行时间,超时则强制退出方法执行 C#函数运行超时则终止执行(任意参数类型及参数个数通用版)
我自己写的 /// <summary> /// 函数运行超时则终止执行(超时则返回true,否则返回false) /// </summary> /// <typepara ...
- [Spring] - Spring + Hibernate
Spring整合Hibernate,花了很长时间研究,其中碰到的比较多问题. 使用的是Spring3.0+Hibernate4.1.6,Spring整合最新版本的Hibernate4.5,会抛些奇奇怪 ...
- NSIS使用记录
; 该脚本使用 HM VNISEdit 脚本编辑器向导产生 ; 安装程序初始定义常量 !define PRODUCT_NAME "" !define PRODUCT_VERSION ...
- 【freemaker】之自定义指令<#macro>
测试代码 @Test public void test07(){ try { root.put("name", "张三"); freemakerUtil.fpr ...
- Android OpenCV 图像识别
最近打算写一个android 平台opencv 的小程序,着手查找了一下资料.网络上的资料参差不齐,有一些都比较老旧,我参考了前面的方法找到了一个简单的搭建方法,分享给大家. 0,环境的搭建: jav ...
- (Array)27. Remove Element
Given an array and a value, remove all instances of that value in place and return the new length. D ...
- FPGA基本原理之一
FPGA就好像一个平台,用简单的器件和复杂的逻辑构建起来的.这个平台大概由六部分组成,分别为基本可编程逻辑模块(CLB).可编程输入/输出模块(IOB).嵌入式块RAM.丰富的布线资源.底层嵌入功能单 ...