[个人笔记] ssh-keygen和openssl工具的使用
Linux - 运维篇
第三章 ssh-keygen和openssl工具的使用
- Linux - 运维篇
- 系列文章回顾
- ssh-keygen
- ssh-keygen 生成密钥对
- openssl
- openssl 生成密钥对
系列文章回顾
第一章 Linux扩容LVM分区
第二章 Linux虚拟机安装VMware Tools插件
ssh-keygen
ssh-keygen -m 编码格式 -t 密钥类型 -f 文件路径 -b 密钥长度 -N 私钥密码 -C 备注( xxx@xxx.com格式)
ssh-keygen -e:导出
ssh-keygen -i:导入
ssh-keygen -e -m pem -f xxx.pub # 将xxx.pub公钥转换成pem格式的编码格式
ssh-keygen -e -m pem -f xxx.pub | egrep -v "BEGIN|END" | base64 -d | od -t x1 -An -w4 | tr 'a-f' 'A-F' | tr -d ' ' | fmt -w 48 # 将xxx.pub转换成十六进制的pem格式编码格式egrep "BEGIN|END" # 等同grep -E "BEGIN|END" # 过滤显示指定值, 以 | 为分隔符做匹配
egrep -v "BEGIN|END" # 等同grep -Ev "BEGIN|END" # 原文中去除过滤出来的指定值
base64 -d # base64解码
od -t x1 -An -w4 #
tr 'a-f' 'A-F' # 原文中将小写a-f字符转换成大写A-F字符
tr -d ' ' # 去除空白字符
fmt -w 48 # 格式化成一行显示,并且每行最多48个字符
ssh-keygen
-m rfc4716 | pkcs8 | pem # 编码格式,不区分大小写
-t rsa | ecdsa | ed25519 | dsa # 密钥格式,不区分大小写
ssh密钥里推荐用sha256 + ssh-ed25519或sha25 + ssh-rsa。 # ecc 基于椭圆曲线数学的公开密钥加密算法,ecdsa是ecc和dsa的结合,叫椭圆曲线数字签名算法。ssh密钥公钥算法的RSA算法也相对容易被撞库破解,判定为不安全算法,被逐渐淘汰。ssh密钥公钥算法的ECDSA使用了SECP256r1椭圆曲线随机算法做随机数的产生,但由于2013年棱镜门事件曝光,美国国家安全局NSA对SECP256r1曲线安置了后门陷阱,之后ECDSA判定为不安全算法,被逐渐淘汰,但市场上仍然有部分产品在使用ECDSA算法。ssh密钥公钥算法的ED25519是curve25519曲线即蒙哥马利曲线。而交换机系列目前只支持ECDSA(即ecdsa-sha2-nistp521)和RSA(即ssh-rsa),从密钥强度和计算效率来看,ecdsa比rsa要强。又破解消耗的时间来看,ecdsa仍然比rsa更安全,而且是难以破解的。
ssh-keygen 生成密钥对
### 生成RSA算法的密钥对(私钥+公钥)
ssh-keygen -t rsa -b 2048 -m pem -f rsa2048pem -N '' -C 'xxx@xxx' # 生成2048位的RSA密钥对### 生成ECC算法的密钥对(私钥+公钥)
ssh-keygen -t ecdsa -b 521 -m pem -f ecdsa521pem -N '' -C 'xxx@xxx' # 生成521位的ECDSA密钥对### RSA公钥转换成PEM格式
ssh-keygen -e -m pem -f rsa2048pem.pub # 将2048位的RSA公钥转换成PEM格式显示### RSA公钥转换成PEM格式的十六进制显示
ssh-keygen -e -m pem -f rsa2048pem.pub | egrep -v "BEGIN|END" | base64 -d | od -t x1 -An -w4 | tr 'a-f' 'A-F' | tr -d ' ' | fmt -w 48
openssl
ecdsa-sha2-nistp521、curve25519-sha256、ssh-ed25519:密钥交换算法
ecdsa:签名算法
sha2:加密算法
secp256k1:椭圆曲线算法 # SECG 曲线P-256 密码标准化组织,比特币使用的算法
nistp384(secp384r1): 椭圆曲线算法 # NIST/SECG 曲线P-384 美国国家标准(棱镜门有曝光NAS对此算法植入后门)
nistp521(secp521r1):椭圆曲线算法 # NIST/SECG 曲线P-521 美国国家标准(棱镜门有曝光NAS对此算法植入后门)
prime256v1: X9.62/SECG curve over a 256 bit prime field # X9.62/SECG 曲线P-256
openssl 生成密钥对
### 生成RSA算法私钥
openssl genrsa -out rsa2048.key 2048 # 输出2048位的rsa私钥### 生成RSA算法公钥
openssl rsa -in rsa2048.key -pubout -out rsa2048.pub # 输出私钥rsa2048.key对应的公钥
### 生成ECC算法私钥
openssl ecparam -name secp521r1 -out ecc521.pem # 生成secp521r1算法的ecc参数,默认pem格式
openssl ecparam -name secp521r1 -outform der|pem -out ecc521.pem # 生成secp521r1算法的ecc参数,用outform指定der或pem格式
openssl ecparam -name secp521r1 -outform pem -genkey -out ecc521.pem # 生成secp521r1算法的ecc参数和ecc私钥,用outform指定pem格式
openssl ecparam -name secp521r1 -outform pem -genkey -noout -out ecc521.pem # 生成secp521r1算法的ecc私钥,用noout去除ecc参数输出,用outform指定pem格式
# ecdsa-sha2-nistp521 密钥交换算法 # ecc+dsa的签名算法 & sha2加密算法 & nistp521(secp521r1) 椭圆曲线算法openssl ecparam -list_curves # 输出ecc算法里支持的椭圆曲线算法列表### 生成ECC算法公钥
openssl ec -in ecc521.pem -pubout -out ecc521.pub # 生成私钥ecc521.pem对应的公钥
[个人笔记] ssh-keygen和openssl工具的使用相关推荐
- linux运维笔记:Rsync数据同步工具
linux运维笔记:Rsync数据同步工具 1-Rsync简介 Rsync英文全称是Remote synchronization,Rsync具有可以使本地和远程两台主机之间的数据快速复制和同步镜像.远 ...
- SSH-Auditor:一款SSH弱密码探测工具
SSH-Auditor:一款SSH弱密码探测工具 freebuf 2018-09-16 ssh-auditor是一款可帮助你探测所在网络中ssh弱密码的工具. 特性 以下操作ssh-auditor都 ...
- 《Go语言圣经》学习笔记 第十章 包和工具
<Go语言圣经>学习笔记 第十章 包和工具 目录 包简介 导入路径 包声明 导入声明 包的匿名导入 包和命名 工具 注:学习<Go语言圣经>笔记,PDF点击下载,建议看书. G ...
- 使用OpenSSL工具制作X.509证书的方法及其注意事项总结
如何使用OpenSSL工具生成根证书与应用证书 // 生成顶级CA的公钥证书和私钥文件,有效期10年(RSA 1024bits,默认) openssl req -new -x509 -days 365 ...
- 分享:玩Linux笔记(2) —— 神奇的curl工具
玩Linux笔记(2) -- 神奇的curl工具 http://my.oschina.net/chihz/blog/96101
- mac 连接linux sh,ssh工具 – windows和mac 上ssh连接linux 服务器工具推荐 – The Hu Post...
Views: 1,051 内容概要: ssh工具 xshell finalshell关于生产力的更多内容, 可以看看我的专栏 一些效率工具可以可以看看我整理的常用工具推荐. ssh工具 在工作中经常回 ...
- 优秀笔记软件盘点—好看、强大的可视化笔记软件、知识图谱工具
只推荐优质应用,推荐真正的思维工具. Heptabase.氢图.Walling.Reflect.InfraNodus.TiddlyWiki.FlowUs Heptabase 介绍 一款融合白板的可视化 ...
- 电脑ssl协议 linux,基于ssl协议和openssl工具建立私有CA
前言 要自建CA需先了解openssl工具和ssl协议还有各加密类型 ssl(Secure Socket Layer)安全套接字层当前版本为3.0,浏览器与Web服务器之间的身份认证和加密数据传输,它 ...
- 基于ssl协议和基于openssl工具创建私有CA
目录 前言 加密类型 对称加密: 公钥加密: 单项加密: ssl会话模型 openssl工具 建立私有CA: 服务器端自建CA ...
- openssl工具详解及自建CA方法
前言: openssl是一款很强大的多用途的开源加密解密的命令行工具,比如创建私钥,创建证书签名请求,测试各种加密算法耗时等等. 在我们进入openssl工具讲解之前,我们有必要先了解先Linux下的 ...
最新文章
- hdu 1272 小希的迷宫
- 企业级java springcloud b2bc商城系统开源源码二次开发-负载均衡策略...
- 线程同步synchronized
- 【UAV】陀螺仪数据分析,以维特智能 JY901B 为例
- 百度语音识别技术负责人李先刚:如何利用Deep CNN大幅提升识别准确率?
- apmserv mysql密码_apmserv中修改mysql的root与phpmyadmin密码方法介绍_PHP教程
- SAP CRM中的文本类型 - Text Type
- CXF 客服端调用报错
- 异常处理准则和最佳实践
- iOS用workspace和cocoapods管理多个项目
- Android基础 写给新手的Android环境配置
- 一分钟了解阿里云产品:专有网络VPC五大热点技术问题分析
- mysql和mybaits自增长序列详解_MyBatis Oracle 自增序列的实现方法
- js控制元素左右缓慢移动和页面上下缓慢移动
- 强化学习策略梯度方法之: REINFORCE 算法(从原理到代码实现)
- go 进阶 多路复用支持: 一. netpoller 初始化
- 应聘恩智浦时考察正则表达式
- Apache Traffic Server 安装部署
- 长春理工计算机研究生就业,计算机学专业长春理工大学在职研究生火热吗
- java 当天最晚时间毫秒_java 日期和字符串互转,根据当天整天时间 得到当天最后一秒的日期时间...