ssh连接github(window10)

连接步骤:

1.查看是否存在.ssh

cd ~/.ssh
dir
  • 查看是否存在  id_rsaid_rsa.pub
目录: C:\Users\Administrator\.ssh


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----       2018/10/24     14:08           1675 id_rsa
-a----       2018/10/24     14:08            404 id_rsa.pub
-a----       2018/10/24     14:19            408 known_hosts

 

  • 如果存在直接跳到第三点 

2. 生成ssh

ssh-keygen -t rsa -C "[email protected]"

双引号内,填写自己的邮箱账号

enter键,并输入密码(如果不想输密码,可以按enter键直接跳过)

ssh-keygen -t rsa -C  "XXXXXX@gmail.com"   #双引号中输入你的邮箱
Generating public/private rsa key pair.
Enter file in which to save the key (C:\Users\Administrator/.ssh/id_rsa):  #默认路径-->直接enter
Created directory 'C:\Users\Administrator/.ssh'.  #此时会看到此路径下多了一个.ssh
Enter passphrase (empty for no passphrase):  #直接enter 
Enter same passphrase again:    #直接enter 

你将得到以下结果: 

Your identification has been saved in C:\Users\Administrator/.ssh/id_rsa.
Your public key has been saved in C:\Users\Administrator/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:L+UPeE3k1WjplZIG3J2q43Dlvqx8UzBdvG4CbOCRc XXXXXX@gmail.com
The key's randomart image is:
+---[RSA 2048]----+
|                 |
|            Eoo= |
|            oo@*.|
|          .ooX+.*|
|        S .==++++|
|         = o+..+=|
|        o = o.o+o|
|         o o *=  |
|           .*+.. |
+----[SHA256]-----+

 

3.将ssh添加到github

cat ~/.ssh/id_rsa.pub

复制公钥添加到ssh

具体步骤指路github官网 Adding a new SSH key to your GitHub account:https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/

4.测试是否成功

指路github官网 Testing your SSH connection:https://help.github.com/articles/testing-your-ssh-connection/

ssh -T git@github.com

看最后一句,成啦~ 

ssh -T git@github.com
The authenticity of host 'github.com (192.30.253.112)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'github.com,192.30.253.112' (RSA) to the list of known hosts.
Hi yourname! You've successfully authenticated, but GitHub does not provide shell access.

 我遇到的问题:

1.ssh未启动

ssh-agent

如果出现错误信息: unable to start ssh-agent service, error :1058 

处理方法:

 打开服务应用程序

  • 按组合键:win+r 
  • 输入:services.msc

找到 OpenSSH Authentication Agent 启动并设置为自动

2.未以管理员身份运行

 

Windows 系统上生成 SSH 密钥用于 Git,可以通过以下步骤完成: 1. **安装 Git** 如果尚未安装 Git,请先从 [Git 官方网站](https://git-scm.com/)下载并安装 Git 软件。安装过程中可以选择默认配置,确保 Git Bash 工具被包含在内。 2. **打开 Git Bash** 安装完成后,右键点击桌面或文件夹空白处,选择 `Git Bash Here` 或者在开始菜单中找到 Git Bash 并打开。 3. **检查现有 SSH 密钥** 在生成新的密钥之前,建议先检查是否存在已有的 SSH 密钥: ```bash ls -al ~/.ssh ``` 如果输出结果中已经存在 `id_rsa` 和 `id_rsa.pub`(或者 `id_ed25519` 及其公钥),则说明你已经有一个可用的 SSH 密钥对 [^1]。 4. **生成新的 SSH 密钥** 如果没有现有的密钥,或者你想为特定账户(如 GitHub)生成新的密钥,可以使用如下命令生成: ```bash ssh-keygen -t rsa -b 4096 -C "your_email@example.com" ``` 其中 `-t` 指定密钥类型(例如 rsa、ed25519),`-b` 设置密钥长度,`-C` 后面跟的是标签,通常使用你的邮箱地址作为标识 [^2]。 执行该命令后,系统会提示你输入保存密钥的文件路径,默认是 `~/.ssh/id_rsa`。如果需要不同的文件名,比如为了区分不同用途的密钥,可以自定义输入路径,例如 `~/.ssh/id_github`。 5. **设置密码(可选)** 接下来,系统会询问是否要为私钥设置一个密码。这一步是可选的,但推荐设置以增强安全性。 6. **将 SSH 密钥添加到 SSH 代理** 生成密钥后,需要将其添加到 SSH 代理中以便于管理和使用: ```bash eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa ``` 注意:Windows 上的 Git Bash 支持 OpenSSHssh-agent 服务,因此可以直接使用上述命令进行操作 [^3]。 7. **复制公钥内容** 使用以下命令查看并复制公钥内容: ```bash cat ~/.ssh/id_rsa.pub ``` 将输出的结果完整复制,并粘贴到目标平台(如 GitHub、GitLab)的 SSH Keys 设置中。 8. **测试连接** 最后,你可以通过以下命令测试与远程服务器的连接情况: ```bash ssh -T git@github.com ``` 如果一切正常,应该会看到欢迎信息,表明你已成功通过 SSH 登录到该平台。 ### 配置多个 SSH 密钥(针对多个账户) 如果你有多个 Git 账户(例如个人账户和公司账户),可以分别为它们生成独立的 SSH 密钥,并通过修改 `~/.ssh/config` 文件来指定每个主机使用的密钥。示例配置如下: ```text # Default account (Personal) Host github.com HostName github.com User git IdentityFile ~/.ssh/id_rsa # Work account Host github-work HostName github.com User git IdentityFile ~/.ssh/id_work ``` 之后,在克隆仓库时应替换远程 URL 中的主机名为对应的别名,例如: ```bash git clone git@github-work:username/repo.git ``` 这样就可以根据不同的项目自动选择正确的 SSH 密钥进行认证。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值