在 Linux 上生成公钥并用于免密登录 GitLab
1. 生成 SSH 密钥对
首先,使用 ssh-keygen
命令生成一对 SSH 密钥(私钥和公钥)。默认情况下,密钥对存储在 ~/.ssh/
目录中。
执行以下命令:
ssh-keygen -t rsa -b 4096 -C "[email protected]"
-t rsa
:指定密钥类型为 RSA。-b 4096
:指定密钥长度为 4096 位,提供更高的安全性。-C "[email protected]"
:指定密钥的注释(通常使用 GitLab 注册时的邮箱)。
在执行命令后,系统将提示您选择保存密钥的路径和文件名:
Enter file in which to save the key (/home/your_user/.ssh/id_rsa):
按回车键以接受默认路径。
接着,系统会提示您输入密钥的密码(可以为空,即无密码):
Enter passphrase (empty for no passphrase):
再次输入密码确认(如设定了密码)。
2. 查看生成的公钥和私钥
生成的 SSH 密钥对将保存在默认目录 ~/.ssh/
中:
- 私钥:
~/.ssh/id_rsa
- 公钥:
~/.ssh/id_rsa.pub
您可以使用以下命令查看公钥内容:
cat ~/.ssh/id_rsa.pub
输出将是一个以 ssh-rsa
开头的长字符串,类似于:
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAtLSk6Kv8BzzmS47J9mChUuX9HXtIc+fKmG9dNfW8W5sB79dyvQ==
3. 将公钥添加到 GitLab
- 登录到 GitLab。
- 在 GitLab 右上角点击头像,选择 Settings(设置)。
- 在左侧菜单中,选择 SSH Keys。
- 在 Key 字段中,粘贴刚刚通过
cat ~/.ssh/id_rsa.pub
获取的公钥内容。 - 在 Title 字段中,可以输入描述信息(如 "My Linux SSH Key")。
- 点击 Add key 按钮。
4. 测试 SSH 连接到 GitLab
完成密钥添加后,使用以下命令测试 SSH 连接是否成功:
ssh -T [email protected]
首次连接时,系统可能会提示您确认 GitLab 服务器的公钥指纹。输入 yes
继续。
如果连接成功,您将看到类似于以下的消息:
Welcome to GitLab, @your_username!
这表示您已成功通过 SSH 密钥配置免密登录 GitLab。
总结
- 使用
ssh-keygen
命令生成 SSH 密钥对。 - 将生成的公钥内容添加到 GitLab 账户的 SSH Keys 页面。
- 测试 SSH 连接是否成功。
通过这种方式,您可以使用 SSH 密钥实现与 GitLab 的免密登录。
评论区