###### tags: `tutorials` `ubuntu` `linux` `SSH` `git` # git with ssh key ## 設定 SSH 金鑰 ```bash= ! $ ssh-keygen -t rsa -C "username@PC" ``` - `username`: 使用者名稱,可自訂 - `PC`: 使用者電腦,可自訂 :::info 另一種金鑰格式是使用信箱 ```bash= ! $ ssh-keygen -t rsa -C "useremail" ``` - `useremail`: 使用者信箱 ::: > 輸出: > ```= ! > Generating public/private rsa key pair. > Enter file in which to save the key (~/.ssh/id_rsa): > Created directory '/home/jaycelin/.ssh'. > Enter passphrase (empty for no passphrase): > Enter same passphrase again: > The key fingerprint is: > ``` > 輸入指令之後會有一連串互動指令和輸出如上 > > - 第 `2` 行: 可以輸入金鑰存放位置,預設是放在 `~/.ssh/id_rsa`,如果使用預設值不修改直接按 `Enter` (一般對私鑰是對 `~/.ssh/id_rsa` 內的 private key) > - 第 `4` 行: 可以設定金鑰密碼,如果設定值之後,以後每次 push 都要輸入該金鑰密碼,如果不使用密碼直接按 `Enter` > - 第 `5` 行: 再次確認金鑰密碼,如果不使用密碼直接按 `Enter` ## 檢視並複製公鑰 ```bash= ! $ cat ~/.ssh/id_rsa.pub ``` > 輸出: > ssh-rsa \~一連串金鑰\~ username@PC 之後再複製該內容 :::warning 要從 `ssh-rsa` 複製到最後 `username@PC` ::: ## 將公鑰貼到 github 上 1. 先進入帳號設定 ![](https://i.imgur.com/YsjMuco.png) 2. 選擇 `SSH and GPG keys` ![](https://i.imgur.com/Tj6Gkbf.png) 3. 選擇 `New SSH key` 加入新的 SSH KEY ![](https://i.imgur.com/xoUW2b3.png) 4. 貼上金鑰 ![](https://i.imgur.com/3cfztoP.png) 5. 之後就可以使用 SSH git ![](https://i.imgur.com/lWirjX0.png)