SSH 金鑰產生器(Ed25519、RSA)
產生 OpenSSH 格式的 Ed25519 或 RSA SSH 金鑰對。
Ed25519 是現代的預設選擇:金鑰短小,目前的 SSH 伺服器、GitHub 與 GitLab 都接受。
SSH 金鑰對讓你不需密碼就能登入伺服器,以及推送到 GitHub 或 GitLab:公鑰放在伺服器上,私鑰留在你身邊。本工具使用瀏覽器的 Web Crypto,產生與 ssh-keygen 相同的檔案——id_ed25519 與 id_ed25519.pub,RSA 則為 id_rsa。金鑰在你的裝置上產生,絕不會上傳或儲存;免費,也不需要註冊。
如何產生 SSH 金鑰
- 選擇 Ed25519(建議),或為舊伺服器選擇 RSA,並加上註解,例如 you@laptop。
- 點擊「產生 SSH 金鑰」。
- 把兩個檔案下載到 ~/.ssh,並執行 chmod 600 ~/.ssh/id_ed25519。
- 把公鑰那一行加到伺服器的 ~/.ssh/authorized_keys,或加到你的 GitHub 帳號。
功能
- Ed25519(預設)、RSA 3072 或 RSA 4096
- 與 ssh-keygen 輸出相同的 OpenSSH 檔案:id_ed25519 與 id_ed25519.pub,或 id_rsa 與 id_rsa.pub
- SHA256 指紋,與 ssh-keygen -l 印出的相同
- 可選的註解,例如 you@laptop;修改註解會為同一把金鑰重寫兩個檔案
- 可複製或下載每個檔案,並附上後續步驟與加上通關密語的 ssh-keygen 指令
- 以瀏覽器內建的 Web Crypto 產生
隱私安全嗎?
是的。金鑰由瀏覽器的 Web Crypto 產生,只存在於這個頁面:不會上傳或儲存任何內容。離開或重新載入頁面前,請下載兩個檔案。
常見問題
這些金鑰和 ssh-keygen 產生的一樣嗎?
一樣,格式同為 OpenSSH。ssh-keygen -y -f id_ed25519 會印出相同的公鑰行,ssh-keygen -l -f id_ed25519 也會印出與這裡相同的指紋(已用 OpenSSH 9.6 驗證 Ed25519 與 RSA)。
如何加上通關密語?
產生的金鑰沒有通關密語。儲存後,執行 ssh-keygen -p -f ~/.ssh/id_ed25519 並輸入新的通關密語:ssh-keygen 會直接加密原檔案。
該選 Ed25519 還是 RSA?
選 Ed25519:它短小又快速,OpenSSH 6.5 以上版本、GitHub 與 GitLab 都接受。在這裡產生需要 Chrome 137 以上、Firefox 129 以上或 Safari 17 以上。不接受 Ed25519 的舊系統,或使用較舊的瀏覽器時,請選 RSA(3072 或 4096 位元)。
如何把金鑰加到 GitHub?
複製公鑰那一行(id_ed25519.pub 的內容),貼到 GitHub 的 Settings → SSH and GPG keys → New SSH key。私鑰存放在 ~/.ssh 後,執行 ssh -T git@github.com,就會看到以你的使用者名稱打招呼的訊息。
為什麼 ssh 說權限太開放?
OpenSSH 會拒絕其他使用者也能讀取的私鑰檔。請執行 chmod 600 ~/.ssh/id_ed25519,並讓 ~/.ssh 資料夾維持 chmod 700。