云服务器网:购买云服务器和VPS必上的网站!

ssh密钥生成(ssh密钥生成命令)

本文目录:1、如何生成SSH密钥2、生成ssh公钥3、git如何使用ssh密钥4、SSH详解-3.密钥登陆5、换电脑之后生成git ssh密钥(mac版)6、git ssh 密钥生成以及配置如何生成SSH密钥打开你的终端窗口。 使用以下命令,将会以你的邮箱作为标签创建一个新的SSH密钥。 $ ssh

本文目录:

  • 1、如何生成SSH密钥
  • 2、生成ssh公钥
  • 3、git如何使用ssh密钥
  • 4、SSH详解-3.密钥登陆
  • 5、换电脑之后生成git ssh密钥(mac版)
  • 6、git ssh 密钥生成以及配置

如何生成SSH密钥

打开你的终端窗口。

使用以下命令,将会以你的邮箱作为标签创建一个新的SSH密钥。

$ ssh-keygen -t rsa -b 4096 -C “注册邮箱,比如:zhansan@xx.com”

Generating public/private rsa key pair.

当系统提示您“输入要保存密钥的文件”时,按Enter键。将接受默认文件位置。如下:

Enter a file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]

在提示符下,输入安全密码,即可生成一个新的ssh密钥。

Enter passphrase (empty for no passphrase): [Type a passphrase]

Enter same passphrase again: [Type passphrase again]

生成ssh公钥

许多 Git 服务器都使用 SSH 公钥进行认证。 为了向 Git 服务器提供 SSH 公钥,如果某系统用户尚未拥有密钥,必须事先为其生成一份。 这个过程在所有操作系统上都是相似的。

默认情况下,用户的 SSH 密钥存储在其 ~/.ssh 目录下。 我们需要寻找一对以 id_dsa 或 id_rsa 命名的文件,其中一个带有 .pub 扩展名。 .pub 文件是你的公钥,另一个则是与之对应的私钥。如果没有找到或者没有.ssh目录则需要生成。

你可以通过运行 ssh-keygen 程序来创建它们。 在 Linux/macOS 系统中,ssh-keygen 随 SSH 软件包提供;在 Windows 上,该程序包含于 MSysGit 软件包中。ssh-keygen 会确认密钥的存储位置(默认是 .ssh/id_rsa),然后它会要求你输入两次密钥口令。 如果你不想在使用密钥时输入口令,回车即可。 然而,如果你使用了密码,那么请确保添加了 -o 选项,它会以比默认格式更能抗暴力破解的格式保存私钥。 你也可以用 ssh-agent 工具来避免每次都要输入密码。

这时候再cat ~/.ssh/id_rsa.pub就可以看到你的sshkey了。

参考:

git如何使用ssh密钥

首先先来了解一下git的四种传输协议:本地、ssh、git和http,http协议应该说是最常见的一种,因为简单,以下是各个协议的优点与缺点:

地址:

初次使用git的用户要使用git协议大概需要三个步骤:

生成密钥对

大多数 Git 服务器都会选择使用 SSH 公钥来进行授权,生成密钥对:公钥和私钥,一般在~/.ssh 目录下(不管什么系统)

首先就先查看你的本地是否存在,可以自己创建目录:

ssh 目录都没有,可以用 ssh-keygen 来创建

保存文件名,然后输入密码,最后密钥对就生成啦~

ssh

ssh-agent bash //开启ssh代理

ssh-add key-file //添加ssh key文件

每次重启机器都执行一下,或者下个sourceTree/Tortoisegit来管理git项目

设置远程仓库

登陆你的gitlab帐户。点击你的头像,然后 Settings – SSH keys

git的 remote url 修改为git协议

sourceTree/Tortoisegit

SSH详解-3.密钥登陆

SSH详解-1.ssh基础知识

SSH详解-2.ssh基本用法

SSH详解-3.密钥登陆

SSH详解-4.多个ssh公钥

在上一篇中我们了解到了ssh基本用法,ssh通过密码进行登录。密码登录存在很多问题。密码太简单,又不安全。密码太复杂,不容易记,而且每次登录都要输入很麻烦。于是就有了密钥登陆。

什么是密钥(key)?

ssh密钥登录采用的是 非对称加密 。

非对称密钥加密系统,又称公钥密钥加密。它需要使用不同的密钥来分别完成加密和解密操作,一个公开发布,即公开密钥(public key)和,另一个由用户自己秘密保存,即私用密钥(private key)。

如果数据使用公钥加密,那么只有使用对应的私钥才能解密,其他密钥都不行;反过来,如果使用私钥加密(这个过程一般称为“签名”),也只有使用对应的公钥解密。

了解完密钥后,接下来看看密钥登录的过程,SSH 密钥登录分为以下的步骤。

第零步,准备步骤客户端通过 ssh-keygen 生成自己的公钥和私钥,并将公钥放入远程服务器的指定位置。

第一步,用户客户端向服务器发起SSH登录的请求。

第二步,服务器收到用户SSH登录的请求,服务器生成一些随机数据发送给客户端。

第三步,客户端接收到服务器发过来的数据,客户端使用私钥对数据进行签名后再返回给服务器。

第四步,服务器收到客户端加密后的数据,使用对应公钥进行解密。然后判断解密后的数据是否与原始数据一致,如果一致就允许用户登录。

ssh-keygen 是OpenSSH提供的一个命令行工具,用于生成密钥登录所需的公钥和私钥。

在上面的例子中,我使用了-t参数来指定加密算法,一遍会选择rsa或者dsa。

第一个问题,问我要保存在哪?(直接Enter默认会保存在~/.ssh/id_rsa中)因为我之前已经生成过密钥了,我就保存在tenxun里面。

第二个问题,询问是否要为私钥文件设定密码保护(passphrase)。这样的话,即使入侵者拿到私钥,还是需要破解密码。如果为了方便,不想设定密码保护,可以直接按回车键,密码就会为空。

最后,就会生成私钥和公钥,屏幕上还会给出公钥的指纹,以及当前的用户名和主机名作为注释,用来识别密钥的来源。

从上面的公钥中我们可以看到末尾的公钥注释 23696@DESKTOP-GKRBCVI

公钥注释可以用来识别不同的公钥,表示这是哪台主机(DESKTOP-GKRBCVI)的哪个用户(username)的公钥。

注意 ,公钥只有一行。因为它太长了,显示的时候可能自动换行了。

OpenSSH 规定,用户公钥保存在服务器的 ~/.ssh/authorized_keys 文件。你要以哪个用户的身份登录到服务器,密钥就必须保存在该用户主目录的~/.ssh/authorized_keys文件。只要把公钥添加到这个文件之中,就相当于公钥上传到服务器了。每个公钥占据一行。如果该文件不存在,可以手动创建。

-i 指定要上传公钥(公钥文件可以不指定路径和 .pub 后缀名),user是所要登录的用户名,hostname是主机名,这两个参数与ssh 登录命令是一致。

特别注意 ,不是把公钥上传上去就行了,还需要把 authorized_keys 文件的权限要设为644,即只有文件所有者才能写。如果权限设置不对,SSH服务器可能会拒绝读取该文件,导致密钥登录失效,登录的时候还需要输入密码。

提到输入密码,如果再生成公钥和私钥的时候设置了密码,使用密钥登录的时候也需要输入私钥的密码,这样可以防止他人非法窃取了私钥。

私钥设置了密码以后,每次使用都必须输入私钥密码,这个问题可以使用 ssh-agent 命令解决。

百度百科-密钥

Git – 生成 SSH 公钥 (git-scm.com)

ssh(1) – OpenBSD manual pages

换电脑之后生成git ssh密钥(mac版)

1.先安装Xcode,安装完后命令行输入git,测试git环境是否安装,如果显示没有文件夹则没有环境

如果显示下图,则表示git安装好

2.运行cat ~/.ssh/id_rsa.pub,查看是否有ssh的文件。有文件直接复制就行

3.运行ssh-keygen,(会要求输入新的文件夹名称和密码,可以不理会一直回车)生成新的密钥,然后再运行cat ~/.ssh/id_rsa.pub,将’ssh-rsa’那段全部复制(包括‘ssh-rsa’),粘贴到github的ssh密钥处(点击头像–setting–ssh key)即可

git ssh 密钥生成以及配置

如果此目录下没有找到,在Git Bash Here中输入如下命令

1、设置git的用户名和邮箱

2、生成公钥和私钥

成功会出现一个图形(一般不会失败。。。)

密钥的存储地址在:C盘 – 用户 – 当前用户 – .ssh目录下

1、打开.ssh文件,会显示id_rsa 和 id_rsa.pub两个文件,id_rsa是私钥, id_rsa.pub是公钥,用记事本打开 id_rsa.pub然后复制;

2、打开使用的git找到ssh keys然后新增ssh,将复制的公钥粘贴,名称可以根据自己的需求取;

3、测试是否成功

4、打开项目使用ssh克隆项目即可(可以用编辑器或者命令)

本文来源:https://www.yuntue.com/post/152888.html | 云服务器网,转载请注明出处!

关于作者: yuntue

云服务器(www.yuntue.com)是一家专门做阿里云服务器代金券、腾讯云服务器优惠券的网站,这里你可以找到阿里云服务器腾讯云服务器等国内主流云服务器优惠价格,以及海外云服务器、vps主机等优惠信息,我们会为你提供性价比最高的云服务器和域名、数据库、CDN、免费邮箱等企业常用互联网资源。

为您推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注