日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

前言

當我們從 GitHub 克隆某個倉庫時,往往使用 HTTPS 協議,除此之外,也可以使用 SSH 協議;當我們的客戶機與遠端服務器連接時,更加離不開 SSH 協議。如果我們需要連接多個遠程終端,那么合理配置多個 SSH 密鑰就顯得很有必要。


一、SSH 是什么

SSH 全稱為:Secure Shell,是一種加密的網絡傳輸協議,通過在網絡中創建安全隧道來實現客戶端與服務器之間的連接。SSH 在 數據傳輸 時基本上都采用對稱加密方式,但是在進行 身份驗證 時卻需要采用非對稱加密的形式,也就是 公鑰—私鑰對 的形式。

二、密鑰生成工具

生成 SSH 密鑰對需要使用 ssh-keygen,如今的主流操作系統 windows、linux 和 macOS 等往往事先已經安裝好了。

三、密鑰類型

SSH 生成密鑰對時可以使用多種加密算法,這些加密算法生成的最常用的密鑰類型是 rsa 和 ed25519。

  • rsa:最常用的公鑰加密算法,使用極其廣泛,并且支持較好。密鑰位數越多,安全性越好,但是性能會有所降低,常見的有 RSA 2048 和 RSA 4096 等。
  • ed25519:橢圓曲線算法生成的密鑰,密鑰長度短,安全可靠并且具有高性能。它的安全性在 RSA 2048 與 RSA 4096 之間,但是性能卻在數十倍以上。(推薦使用

ed25519 需要 OpenSSH 版本大于 6.5(2014 年的古老版本),應該不會有人的客戶端和服務器不滿足吧(不會吧不會吧!)

四、本地配置

ssh-keygen 生成的密鑰對默認存儲于家目錄(Windows 的 C:Usersxxx,Linux/macOS 的 ~)的 .ssh 文件夾中

1.單密鑰配置

使用 ssh-keygen 命令選擇一種密鑰類型來創建

# 生成 RSA 2048 密鑰ssh-keygen -t rsa -b 2048 -C "[email protected]" # 生成 RSA 4096 密鑰ssh-keygen -t rsa -b 4096 -C "[email protected]" # 生成 ed25519 密鑰ssh-keygen -t ed25519 -C "[email protected]"
  • -t:選擇生成密鑰的類型
  • -b:設置密鑰位數
  • -C:密鑰注釋,這里要改為你自己的郵箱地址

執行以上命令后,會提示你設置密鑰存儲路徑,按 Enter 默認即可。

然后會提示你設置密碼,根據需要自行選擇設不設置(不設置按 Enter 即可,已經非對稱加密過,不設置也問題不大;設置的話安全性會提高,但是每次連接時需要輸入密碼,會麻煩一點)。

以生成密鑰 ed25519 為例,操作完后會在家目錄的 .ssh 文件夾中生成私鑰 id_ed25519 和公鑰 id_ed25519.pub 兩個文件。

權限設置

在 Linux 中,還需要設置私鑰文件的權限才可使用:

chmod 600 ~/.ssh/id_ed25519

2.多密鑰配置

如果你同時使用 GitHub、Gitee 和 阿里云,都需要設置 SSH 密鑰,可以將常用 SSH 登陸信息寫進全局配置文件

打開終端,輸入

# 創建 .ssh 文件夾mkdir -p ~/.ssh # 進入 .ssh 文件夾cd ~/.ssh

以下介紹以生成 ed25519 密鑰為例:

# 生成 GitHub 密鑰ssh-keygen -t ed25519 -f github_ed25519  -C "[email protected]" # 生成 Gitee 密鑰ssh-keygen -t ed25519 -f gitee_ed25519  -C "[email protected]" # 生成 阿里云 密鑰ssh-keygen -t ed25519 -f aliyun_ed25519  -C "[email protected]"
  • -f:生成密鑰的名稱,可自行修改

在 .ssh 文件夾下創建 config 文件(~/.ssh/config)

# ------------ 配置說明(始) ------------ # Host:別名,HostName:服務器域名或 IP 地址# User:用戶名# 例:在 git clone [email protected]:torvalds/linux.git 中# User 是 git,Host 是 github.com# IdentityFile:私鑰路徑 # ------------ 配置說明(末) ------------  # ------------ 具體配置(始) ------------ # GitHub 密鑰Host github.comHostName github.comUser gitPreferredAuthentications publickeyIdentityFile ~/.ssh/github_ed25519 # GiteeHost gitee.comHostName gitee.comUser gitPreferredAuthentications publickeyIdentityFile ~/.ssh/gitee_ed25519 # AliyunHost my_aliyunHostName xxx.xxx.xxx.xxxUser xxxPort 22PreferredAuthentications publickeyIdentityFile ~/.ssh/aliyun_ed25519 # ------------ 具體配置(末) ------------折疊 

權限設置

在 Linux 中,配置文件 config 和私鑰文件的權限都需要設置才可使用:

chmod 600 config github_ed25519 gitee_ed25519 aliyun_ed25519

五、遠端配置

1.GitHub/Gitee

登陸 GitHub,依次打開 Settings => SSH and GPG keys => New SSH key

然后將公鑰(切記是公鑰)內容粘貼過去

最后,使用 ssh 命令測試與 GitHub 的連接

ssh -T [email protected]

提示時輸入 yes 即可,如果出錯,可以在 -T 后面加上 -v 參數查看具體錯誤信息

Gitee 和 GitHub 添加方法類似,不做贅述

2.服務器

在服務器系統中找到 ~/.ssh/authorized_keys 文件(沒有則創建),另起一行,將本地公鑰(切記是公鑰)內容粘貼過去,并設置權限:

chmod 600 ~/.ssh/authorized_keys

測試連接,以 多密鑰配置 中 阿里云 為例:

# 使用 Host 別名ssh my_aliyun # 不使用 Host 別名ssh [email protected]

來源:
https://www.cnblogs.com/oranhext/p/ssh-keys-config.html

分享到:
標簽:SSH
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定