SSH 简要说明   2021-10-09


SSH, 即 Secure Shell,是一项创建在应用层和传输层基础上的安全协议,为计算机 Shell 提供安全的传输和使用环境。
这个是他的定义, 但是我们使用 SSH 来做什么?
其实我之前也是不了解, 直到有一天, 我需要使用两个 github 帐号来建立不同的博客, 这个时候就遇到了 SSH, 因为 github 的连接就需要使用到 ssh 来配置。

下面的介绍, 仅仅是基于同一台电脑需要连接不同的 github 帐号而进行的, 并不是 SSH 的详细说明。

1. SSH 目录所在位置

1
C:\Users\xxxx\.ssh
  1. xxxx 是 windows 系统当前登录用户
  2. 这个目录是用来管理公匙私匙使用的
  3. 默认情况下系统只能识别一个密匙对, 对应私匙文件 id_rsa 和公匙文件 id_ras.pub 这两个文件, 如果想让系统识别多个密匙对, 需要在这个目录下创建 config 文件, 并在这个文件中进行配置才可以识别, 具体配置请查看
  4. config 文件没有后缀名

2. config 文件如何配置

1
2
3
4
5
6
7
8
9
10
11
# xwanlion
Host xwanlion
HostName ssh.github.com
IdentityFile C:\\Users\\xxxx\\.ssh\\id_rsa
User git

# todoline++
Host todoline-plus-plus
HostName ssh.github.com
IdentityFile C:\\Users\\xxxx\\.ssh\\id_rsa_todoline
User git
  1. Host 标识了一个配置区段, 可以使用通配符. 我个人理解为一个名称, 以方便引用, 可能理解有误
  2. HostName 指定远程主机名,可以直接使用数字IP地址
  3. User 登录远程主机的用户名
  4. IdentityFile 密匙对文件名, 公匙文件名或者私匙文件名没有扩展名的部分, 包括全路径
  5. 更多说明请看: daemon369.github.io/ssh/2015/03/21/using-ssh-config-file

3. SSH 命令

  1. 根据邮件生成一个密匙对文件

    1
    ssh-keygen -t rsa -C "xxxx@gmail.com"
  2. 添加密匙对, 让 SSH 可以识别

    1
    ssh-add id_rsa_todoline  #id_rsa_todoline 表示文件名
  3. 查看已经添加的密匙对有哪些

    1
    ssh-add -l
  4. 执行 ssh-add 时报错: Could not open a connection to your authentication agent

1
2
rem 请先执行下面的命令, 然后再执行 ssh-add 命令
eval `ssh-agent`

分享到:


  如果您觉得这篇文章对您的学习很有帮助, 请您也分享它, 让它能再次帮助到更多的需要学习的人. 您的支持将鼓励我继续创作 !
本文基于署名4.0国际许可协议发布,转载请保留本文署名和文章链接。 如您有任何授权方面的协商,请邮件联系我。

Contents

  1. 1. SSH 目录所在位置
  2. 2. config 文件如何配置
  3. 3. SSH 命令