如何在Windows中手动生成SSH密钥?(转)
在Windows上,您可以通过多种方式创建SSH密钥。Windows需要SSH客户端,但在其操作系统上没有默认的SSH客户端。请注意,Windows目前正在测试本机OpenSSH应用程序,一般,不提倡在生产环境中使用beta应用程序。
那如何使用两个SSH应用程序PuTTY和Git Bash呢?
如何在Windows中手动生成SSH密钥?
1。概论
SSH(安全shell)通常用于访问远程Linux系统。但其身份验证机制(私有本地密钥与公共远程密钥配对)用于保护各种在线服务,从GitHub和Launchpad到运行在Microsoft Azure云上的 Linux 。
从Linux生成这些密钥非常简单,并且由于Windows上的Ubuntu,您可以在Windows 10中执行相同的过程。但即使没有Ubuntu,也可以使用免费的开源Windows应用程序生成SSH密钥,PuTTy
通过以下几个步骤,我们将指导您使用Windows和PuTTY 上的Ubuntu生成SSH密钥的过程。
要求
您只需要一台运行Windows 10且安装了以下任一项的PC:
- Windows上的Ubuntu
puttygen.exe来自PuTTY的可执行文件
如果您还没有Windows上的Ubuntu,请查看我们在Windows 10上安装Ubuntu教程。

2。密码短语考虑因素
创建SSH密钥对时,如以下步骤所示,您可以选择使用密码锁定私钥或根本不使用密码。
无论何时使用密钥对,添加密码短语都需要输入相同的密码短语。不添加密码短语会删除此要求。因此,创建没有密码的密钥对更方便,对于某些脚本和自动化任务可能是必不可少的。但它也不太安全。
如果第三方在没有密码短语的情况下获得对私钥的访问权限,则他们将能够使用公钥访问所有连接和服务。
方便性和安全性之间的良好折衷是为您要使用的每个服务或连接生成单独的密钥对,仅为关键服务添加密码。如果您怀疑密钥已被泄露,只需为该服务生成一对新密钥并删除不太安全的密钥。

3。使用Ubuntu生成密钥
从开始菜单在Windows上的Ubuntu上启动Bash,并通过在命令提示符处输入以下命令来确保安装了SSH:
sudo apt install ssh
密钥生成过程与本机Linux或Ubuntu安装上的过程相同。安装SSH后,键入以下命令运行SSH密钥生成器:
ssh-keygen -t rsa
你会被问到两个问题。第一个询问保存密钥的位置,您可以按return接受默认值。第二个问题要求密码短语。如上所述,输入密码短语将要求您在访问密钥时使用相同的密码短语。
但是,密码短语不是必需的,按回车键(两次)将生成一个没有密码对的密钥对。因此,使用密钥时不会要求您输入密码。
完成此过程后,可以~/.ssh在Ubuntu终端可访问的目录中找到私钥和公钥,或者从Windows文件管理器中找到以下文件夹:
C:\Users\<Windows username>\AppData\Local\lxss\home\<Ubuntu username>\.ssh
无论是应用程序数据和lxss目录从默认视图中隐藏的,需要手动输入。

4。使用PuTTY生成密钥
要使用PuTTY密钥生成器生成密钥对,只需运行puttygen.exe并单击出现的窗口中的Generate按钮。
您将被要求移动鼠标并按下键以改善SSH安全性核心的随机数生成。在此之后,公钥的原始内容将与其指纹和时间戳注释一起显示。
两个重要字段,密钥密码和确认密码,允许您输入密码来保护私钥。
最后,您需要分别导出私钥和公钥:
- 要导出私钥,请从“ 转换”菜单中选择“ 导出OpenSSH”键
- 要导出公钥,请单击主窗口中的“ 保存公钥 ”
公钥通常使用.pub后缀。按照惯例,通常调用私钥id_rsa和公钥id_rsa.pub,但这不是必需的。例如,通常有许多键具有更具描述性的文件名。

如何在Windows中手动生成SSH密钥?(转)的更多相关文章
- 如何在windows中编写R程序包(转载)
网上有不少R包的编译过程介绍,挑选了一篇比较详细的,做了稍许修改后转载至此,与大家分享 如何在windows中编写R程序包 created by helixcn modified by binaryf ...
- jenkins SSH登录 Git配置(通过eclipse生成SSH 密钥)
1.通过eclipse生成SSH 密钥 菜单栏的windows-->preferences-->General-->Network Connections-->SSH2--&g ...
- 如何在Windows中打开多个Windows Media Player
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:如何在Windows中打开多个Windows Media Player.
- 生成ssh密钥
打开Git Bash,生成ssh密钥: ssh-keygen -t rsa -C "your_email@youremail.com"
- 查看、生成 SSH 密钥用于安全登陆
SSH 可以用来登陆服务器,远程执行命令,并用强加密算法编码保护通信安全,目前广泛应用于远程命令控制.文件加密传输等方面.SSH 登陆服务器的方法一般有两种:密码登陆和密钥登陆. 在受信任的设备上使用 ...
- 生成SSH密钥添加到GitHub
将自己的过程和踩坑写下来 一.检查是否有SSH 1.打开Git的目录文件,下图是我电脑中git的文件目录 2.点击git-bash.exe,输入ssh查看电脑中是否已存在ssh,会出现以下结果,证明已 ...
- 在windows中,使用SSH登录VMware ubuntu linux虚拟机
测试环境 主机:window7 sp1 64位 专业版 虚拟机:VMware workstation 12 player 虚拟机操作系统: ubuntu 16.4 目标:在ubuntu下运行SSH服务 ...
- 034_非交互自动生成 SSH 密钥文件
#!/bin/bash#-t 指定 SSH 密钥的算法为 RSA 算法;-N 设置密钥的密码为空;-f 指定生成的密钥文件存放在哪里 rm -rf ~/.ssh/{known_hosts,id_rsa ...
- 如何在Windows中编译Linux Unix的代码(采用cygwin)?
来源:http://www.cnblogs.com/rocky_yi/archive/2009/12/08/cygwin.html 作者:rocky_y 很多经典算法往往是用C++在linux下实 ...
随机推荐
- 移动端rem使用及理解
先上代码 window.onload = function(){ getRem(720,100) }; window.onresize = function(){ getRem(720,100) }; ...
- easyui datagrid 去除单击行选中事件
转:http://www.xue163.com/588880/39049/390490560.html 解决方案: onClickRow: function (rowIndex, rowData) { ...
- 圆桌游戏(区间DP)
2.圆桌游戏 (game.cpp/c/pas) [问题描述] 有一种圆桌游戏是这样进行的:n个人围着圆桌坐成一圈,按顺时针顺序依次标号为1号至n号.对1<=i<=n的i来说,i号的左边是i ...
- 创建docker静态化IP
配置桥接网络 桥接本地物理网络的目的,是为了局域网内用户方便访问 docker 实例中服务,不需要各种端口映射即可访问服务. 但是这样做,又违背了 docker 容器的安全隔离的原则,工作中辩证的选择 ...
- cmake 工具使用
cmake_minimum_required(VERSION 3.5)#cmake版本 project( DisplayImage )#项目名称 find_package( OpenCV REQUIR ...
- GUI输入数据并保存
from tkinter import * def write_to_file(): fileContent = open("deliveries.txt","a&quo ...
- 如何在Linux上安装Composer
我们可以通过 Composer 镜像安装 composer ,在这之前,请确认您的机器上已经安装了PHP,并可以通过php来执行命令.如果您的服务器上必须通过全路径来执行(/usr/local/php ...
- Python定时框架 Apscheduler 详解【转】
内容来自网络: https://www.cnblogs.com/luxiaojun/p/6567132.html 在平常的工作中几乎有一半的功能模块都需要定时任务来推动,例如项目中有一个定时统计程序, ...
- react 路由
react 提供了实现路由的方式,不过需要我们下载插件 react-router-dom 当我们下载好了插件,然后我们可以通过 import {} from 'react-router-dom' 来引 ...
- Linux配置Key,禁止root实现免密码登陆
前言: 我所理解的是Key登陆认证方式,其实就是拿私钥去解密公钥,私钥需要自己妥善保管,公钥可以随意公开. 废话少说,准备2台服务器,Server1:192.168.1.1 Serv ...