前言
本文介绍了linux和window环境rsa密钥生成方法, ssh免密登录linux以及gitee和github的密钥使用场景.
目录
正文
ssh-keygen常用参数
参数名示例值参数说明-C“ssh_test”注释内容: 可写邮箱加用途-trsa密钥类型: rsa1(SSH-1), rsa(SSH-2), dsa(SSH-2)-b2048密钥长度: RSA密钥默认是2048位, DSA密钥必须是1024位-mPEM密钥格式: PEM-f/test/id_rsa_ssh_test密钥路径文件名, 未填写路径则为当前路径生成文件
生成密钥
linux环境生成密钥
ssh-keygen -t rsa -b 2048 -C "ssh_test"
- 提示以哪个路径文件名保存, 默认是 /root/.ssh/id_rsa文件, 我们输入自定义文件名id_rsa_ssh_test
- 提示输入密码(可以填写之后使用时会用到或者不填写直接回车)和确认密码后会在当前文件夹生成密钥文件
- 公钥的扩展名.pub,另一个没有扩展名的为私钥
win环境生成密钥
- win10默认安装了OpenSSH客户端可以直接在cmd命令窗口使用, 生成步骤与linux环境类似, 建议生成过程中自定义文件名避免覆盖以前的密钥, 使用密钥时可以采用配置多密钥的方式 (见下文gitee使用场景)
- 如果有安装git工具也可以使用,在任意文件夹内空白处右键点击 Git Bash Here, 注意生成时要加参数 -m PEM
密钥使用场景
ssh免密登录linux
- 配置公钥
cd ~/.ssh
vim authorized_keys
i键进入编辑模式, 将公钥文件里的内容新起一行黏贴
Esc退出编辑模式, :冒号键进入底行模式, 输入wq回车保存退出
- xshell配置私钥 连接 / 用户身份验证, 导入私钥
若生成密钥时设置了密码则要输入密钥密码
- finalshell配置私钥 SSH连接 / 认证, 导入私钥
若生成密钥时设置了密码则要输入密钥密码
若是git生成的没有配置参数-m PEM, 则密钥是OPENSSL, 会提示不支持此密钥格式, 按照所示方法解决即可
gitee和github ssh免密
- gitee添加公钥, 设置 / SSH公钥
- github添加公钥, 设置 / SSH and GPG keys
- window系统配置私钥 打开文件 %userprofile%/.ssh, 新建config文件, IdentityFile根据实际情况配置私钥文件
# gitee
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile 私钥路径/id_ssh_test
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile 私钥路径/id_ssh_test_github
首次使用可以在cmd命令行输入 ssh -T git@gitee.com 以及 ssh -T git@github.com 确认并添加gitee和github到本机SSH可信列表
版权归原作者 道可道名可名 所有, 如有侵权,请联系我们删除。