Ubuntu/WSL下生产密钥脚本

说明:

     有时候需要为开发人员配发密钥,为方便写了个小脚本,在linux下运行,要求 python10, putty-tools。

     使用时,在staffList定义用户列表,运行后程序自动产生对应目录及密钥。

安装:

apt install putty-tools

脚本:

#!/usr/bin/env pythonimport subprocess
import sys
import os@staticmethod
def __external_cmd(cmd, code="utf8"):print(cmd)process = subprocess.Popen(cmd, shell=True, stdin=subprocess.PIPE,stdout=subprocess.PIPE, stderr=subprocess.STDOUT)while process.poll() is None:line = process.stdout.readline()line = line.strip()if line:print(line.decode(code, 'ignore'))staffList = {'developer1','developer2',}
keyname = 'id_rsa'
alg = 'rsa'for name in staffList:if not os.path.exists(f"./{name}"):os.makedirs(f"./{name}")print(name + " 密钥产生中:")cmd1 = f"ssh-keygen -t ed25519 -f {name}/id_rsa"# cmd1 = f"ssh-keygen -t rsa -f {name}/id_rsa"__external_cmd(cmd1)cmd2 = f"puttygen {name}/id_rsa -o {name}/id_rsa.ppk -O private"__external_cmd(cmd2)

运行结果

root@ZS-HOME-MH001:/auths/StaffKeys# python generate_keys.py
developer2 密钥产生中:
ssh-keygen -t ed25519 -f developer2/id_rsa
Generating public/private ed25519 key pair.
ssh_askpass: exec(/usr/bin/ssh-askpass): No such file or directory
ssh_askpass: exec(/usr/bin/ssh-askpass): No such file or directory
Your identification has been saved in developer2/id_rsa
Your public key has been saved in developer2/id_rsa.pub
The key fingerprint is:
SHA256:fvcJwyhUaUYRw7fH/GjPmeeTWoqiyZGA322y0mJI4fw root@ZS-HOME-MH001
The key's randomart image is:
+--[ED25519 256]--+
|         .=o     |
|         ..o.    |
|          =. +   |
|   ..    +  . +  |
|  o...  S    . o |
|   +. ooo  o  o .|
|  . o..=ooo =. ++|
|   . E..*+ ..+o*+|
|    . o=. .. o+.+|
+----[SHA256]-----+
puttygen developer2/id_rsa -o developer2/id_rsa.ppk -O private
developer1 密钥产生中:
ssh-keygen -t ed25519 -f developer1/id_rsa
Generating public/private ed25519 key pair.
ssh_askpass: exec(/usr/bin/ssh-askpass): No such file or directory
ssh_askpass: exec(/usr/bin/ssh-askpass): No such file or directory
Your identification has been saved in developer1/id_rsa
Your public key has been saved in developer1/id_rsa.pub
The key fingerprint is:
SHA256:Lrbn7A9Qat6yKalfGMPMdejKgj2llJnHhSAP2P4ofAI root@ZS-HOME-MH001
The key's randomart image is:
+--[ED25519 256]--+
|+..              |
|.+.. . .         |
| .. . + o        |
|E .O + +         |
|o =oX = S        |
|.*.*.B +         |
|..B +.* +        |
|   ooo B..       |
|  .o..+++..      |
+----[SHA256]-----+
puttygen developer1/id_rsa -o developer1/id_rsa.ppk -O private

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/697702.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jenkins报错:Pseudo-terminal will not be allocated because stdin is not a terminal

jenkins的流水线部分代码如下 sh ssh root192.168.2.234 << remotessh cd /var/lib/jenkins/workspace/txkc /usr/local/maven/apache-maven-3.8.6/bin/mvn clean package -U ls remotessh执行流水线出现报错&#xff1a;Pseudo-terminal will not be allocated because…

如何把电脑上的png图片变为jpg?图片格式在线转化的方法

由于jpg文件比较小&#xff0c;把png格式转换后更适合我们的保存和使用&#xff0c;尤其是对于一些平台上传来说&#xff0c;很多地方都要求图片格式为jpg&#xff0c;为了能更顺利的上传&#xff0c;本文就叫大家一个图片格式转换的方法&#xff0c;使用压缩图网站&#xff0c…

第2.1章 StarRocks表设计——概述

注&#xff1a;本篇文章阐述的是StarRocks-3.2版本的表设计相关内容。 建表是使用StarRocks非常重要的一环&#xff0c;规范化的表设计在某些场景下能使查询性能有数倍的提升。StarRocks的表设计涉及到的知识点主要包括数据表类型、数据分布&#xff08;分区分桶及排序键&#…

golang命令行工具gtcli,实现了完美集成与结构化的gin脚手架,gin-restful-api开箱即用

关于gtools golang非常奈斯&#xff0c;gin作为web框架也非常奈斯&#xff0c;但我们在开发过程中&#xff0c;前期搭建会花费大量的时间&#xff0c;且还不尽人意。 为此我集成了gin-restful-api的模板gin-layout&#xff0c;还有脚手架一键生成项目。 集成相关 ginviperz…

【Android】性能优化之内存、网络、布局、卡顿、安装包、启动速度优化

欢迎来到 Android 开发老生常谈的性能优化篇&#xff0c;本文将性能优化划分为内存、网络、布局、卡顿、安装包、启动速度七块&#xff0c;从这七块优化出发&#xff0c;阐述优化的 Application 的方式。 目录 内存优化避免内存泄漏使用内存分析工具优化数据结构和算法数据缓存…

Jmeter基础(1) Mac下载安装启动

目录 Jmeter下载安装启动下载启动 Jmeter下载安装启动 注意⚠️&#xff1a;使用jmeter需要有java环境 下载 官网下载地址&#xff1a;https://jmeter.apache.org/ 会看到这里有两个版本&#xff0c;那么有什么区别么&#xff1f; Binaries是可执行版&#xff0c;直接下载解…

Python算法题集_图论(课程表)

Python算法题集_课程表 题207&#xff1a;课程表1. 示例说明2. 题目解析- 题意分解- 优化思路- 测量工具 3. 代码展开1) 标准求解【循环递归全算】2) 改进版一【循环递归缓存】3) 改进版二【循环递归缓存反向计算】4) 改进版三【迭代剥离计数器检测】 4. 最优算法5. 相关资源 本…

Spring整合Junit4和Junit5

1、整合的好处 好处1&#xff1a;不需要自己创建IOC容器对象了好处2&#xff1a;任何需要的bean都可以在测试类中直接享受自动装配 2、操作 整合junit4 ①加入依赖 <dependency><groupId>junit</groupId><artifactId>junit</artifactId><…

代码随想录算法训练营第二十三天补|669. 修剪二叉搜索树 ● 108.将有序数组转换为二叉搜索树 ● 538.把二叉搜索树转换为累加树

平衡树、二叉树、灵活应用中序遍历&#xff08;值大小有序&#xff09; 669. 修剪二叉搜索树 给你二叉搜索树的根节点 root &#xff0c;同时给定最小边界low 和最大边界 high。通过修剪二叉搜索树&#xff0c;使得所有节点的值在[low, high]中。修剪树 不应该 改变保留在树中…

Window部署SkyWalking

SkyWalking mysql的驱动依赖 选择下载版本 v9.4 现在后解压缩目录结构 一、修改config目录文件 application.yml 修改1&#xff1a; selector: ${SW_STORAGE:h2} 修改后&#xff1a; selector: ${SW_STORAGE:mysql} 修改2&#xff1a;使用mysql数据库 mysql: properti…

通俗易懂分析:Vite和Webpack的区别

1、对项目构建的理解 先从浏览器出发&#xff0c; 浏览器是由浏览器内核和JS引擎组成&#xff1b;浏览器内核编译解析html代码和css代码&#xff0c;js引擎编译解析JavaScript代码&#xff1b;所以从本质上&#xff0c;浏览器只能识别运行JavaScript、CSS、HTML代码。 而我们在…

敏捷开发最佳实践:领导力维度实践案例——走动式激励

在本节实践案例中&#xff0c;某财险公司信息技术部高级工程师分享了组织级数字化转型中的优秀敏捷领导力实践&#xff0c;不仅解决了产品上市周期长、响应市场变化慢的难题&#xff0c;还打破了部门墙、提升了客户满意度&#xff0c;该案例将为同类企业在组织层面进行有效敏捷…

Centos7配置静态IP详细步骤

使用Centos虚拟机测试时一到切换网段就头疼&#xff0c;总是会有ping不通网关、同段IP和外网的情况。下面出一个尽可能完整的排查思路和配置静态IP的过程。以下为配置nat模式后&#xff0c;出现以上情况的网络不通的排查思路&#xff0c;并配置win10vm8静态IP和centos7虚机nat模…

vue3路由切换过渡动画实现

<router-view v-slot"{ Component }"><transition name"fade" mode"out-in" appear><keep-alive><component :is"Component" /></keep-alive></transition> </router-view>/* 路由切换动画…

SQL字符集

目标:了解字符集的概念&#xff0c;掌握MySQL数据库存储数据的字符集逻辑以及设置方式 字符集概念 MySQL字符集关系 解决乱码问题 字符集设置原理 1、字符集概念 目标:了解字符集概念&#xff0c;掌握字符集存储和读取的实现原理 概念 字符集:charset或者character set&am…

(十二)【Jmeter】线程(Threads(Users))之setUp 线程组

简述 操作路径如下: 作用:在正式测试开始前执行预加载或预热操作,为测试做准备。配置:设置预加载或预热操作的采样器、循环次数等参数。使用场景:确保在正式测试开始前应用程序已经达到稳定状态,减少测试结果的偏差。优点:提供预加载或预热操作,确保测试的准确性。缺…

Centos开机网卡自启动失败

问题背景 每次都要手动启动在这里插入代码片 解决方案: 关闭 NetworkManager 服务 systemctl disable NetworkManager systemctl stop NetworkManager重启就会发现网卡已经可以自动启动了

2024幻兽帕鲁游戏服务器租用价格表_一年和1个月报价明细

游戏服务器租用多少钱一年&#xff1f;1个月游戏服务器费用多少&#xff1f;阿里云4核16G10M游戏服务器26元1个月、149元半年&#xff0c;腾讯云4核16G游戏服务器32元、312元一年&#xff0c;华为云26元&#xff0c;京东云主机也是26元起&#xff0c;游戏服务器配置从4核16G、4…

代码随想录算法刷题训练营day22

代码随想录算法刷题训练营day22&#xff1a;LeetCode(236)二叉树的最近公共祖先、LeetCode(235) 二叉搜索树的最近公共祖先、LeetCode(701)二叉搜索树中的插入操作、LeetCode(450)删除二叉搜索树中的节点 LeetCode(236)二叉树的最近公共祖先 题目 代码 /*** Definition for…

【鸿蒙 HarmonyOS 4.0】路由router

一、介绍 页面路由指在应用程序中实现不同页面之间的跳转和数据传递。HarmonyOS提供了Router模块&#xff0c;通过不同的url地址&#xff0c;可以方便地进行页面路由&#xff0c;轻松地访问不同的页面。 二、页面跳转 2.1、两种跳转模式&#xff1a; router.pushUrl()&…