Win10 环境的SSH管理
背景知识
ssh
: OpenSSH SSH client (remote login program) OpenSSH SSH客户端(远程登陆程序)ssh-keygen
: authentication key generation, management and conversion 生成、管理、转换用于认证的密钥ssh-agent
: authentication agent认证代理(复杂情景才可能用到,一般使用不到)
上面三个程序具体可以在Unix类系统输入man ssh
, man ssh-keygen
, man ssh-agent
,查看详细的说明和下述流程涉及的参数意思 ${variable}
按照变量字面意思,根据实际情况,写入具体的值[optional]
可选
管理流程
- 生成github的公私钥
ssh-keygen -t rsa -C ${github_email}
->Enter file name ${github_key}
->Password: null or ${custom_github_password}
- 生成gitlab的公私钥
ssh-keygen -t rsa -C "${gitlab_email}"
->Enter file name ${gitlab_key}
->Password: null or ${custom_gitlab_password}
- 将步骤1和步骤2生成的
${github_key}[.pub]
和${gitlab_key}[.pub]
公私钥放在C:\User\${Username}\.ssh
目录下面 - 将步骤1和步骤2生成的
${github_key}.pub
和${gitlab_key}.pub
文件内容用记事本打开,然后拷贝到相应的Github或Gitlab上面,操作路径为:settings -> SSH and GPG keys -> add new key
在
.ssh
目录创建config
文本文件,并将.txt
扩展后缀去掉。每个账号单独配置一个Host,每个Host取一个对应的域名或者IP地址,每个Host主要配置HostName和IdentityFile两个属性即可。- Host:实际的域名或准确的IP地址,用于
git@Host
中的Host
字段 - HostName: 实际的域名或准确的IP地址,与
Host
对应 - IdentityFile:
${github_key}
或${gitlab_key}
文件全路径 - PreferredAuthentications: 配置登陆使用的权限认证,可为
publickey, password publickey
- User: 用户名,可选
- Host:实际的域名或准确的IP地址,用于
示例配置文件
# github Host github.com HostName github.com IdentityFile C:\Users\${Username}\.ssh\github_id_rsa PreferredAuthentications publickey User github # custom gitlab Host ${gitlab_ip} HostName ${gitlab_ip} IdentityFile C:\Users\${Username}\.ssh\gitlab_id_rsa PreferredAuthentications publickey User gitlab
测试方法:
ssh -Tv [email protected]
根据显示的信息,跟踪整个ssh
的流程
注意事项
- 配置文件使用空格分割字段和值
Host
是域名或准确的IP地址,一定要配置填写正确ssh-keygen
若有使用密码,后续的ssh
也需要密码才能访问对应的本地私钥
相关推荐
BraveWangDev 2020-08-19
sshong 2020-06-12
LiHansiyuan 2020-06-14
projava 2020-11-14
WanKaShing 2020-11-12
airfish000 2020-09-11
tryfind 2020-09-14
yegen00 2020-09-10
kkaazz 2020-09-03
风语者 2020-09-02
lichuanlong00 2020-08-15
gsl 2020-08-15
pandaphinex 2020-08-09
yhuihon 2020-08-09
CheNorton 2020-08-02
xiangqiao 2020-07-28
hpujsj 2020-07-26
hpujsj 2020-07-26
sshong 2020-07-19