当我通过本地计算机连接到服务器时,我可以使用 ssh 成功连接到 Github。
我使用本教程来设置 ssh 密钥。
但是,当使用 Github 操作时,我收到此错误:
err: git@github.com: Permission denied (publickey).
err: fatal: Could not read from remote repository.
err:
err: Please make sure you have the correct access rights
err: and the repository exists.
Run Code Online (Sandbox Code Playgroud)
这是我的 Github 操作 YML:
name: CI App to DO
on:
push:
branches: [master]
pull_request:
branches: [master]
jobs:
deploy-do:
runs-on: ubuntu-latest
steps:
- name: SSH to server and Deploy App
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.SSH_HOST }}
username: ${{ secrets.SSH_USERNAME …Run Code Online (Sandbox Code Playgroud) 我正在Windows Server 2016上运行的Jenkins 2.152中创建一个工作,需要从bitbucket.org上托管的git repo中提取.我通过git-bash测试了ssh密钥,所以我知道它有效并且没有密码短语.当我尝试使用与Jenkins完全相同的私钥时,我收到一条错误消息.
Failed to connect to repository : Command "git.exe ls-remote -h
git@bitbucket.org:mygroup/myrepo HEAD" returned status code 128:
stdout:
stderr: Load key
"C:\\Users\\JE~1\\AppData\\Local\\Temp\\ssh2142299850576289882.key": invalid format
git@bitbucket.org: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Run Code Online (Sandbox Code Playgroud)
凭据设置为
scope: Global
user: git
Private Key -> Enter Directly -> copy and past - generated by ssh-keygen -t rsa in gitbash
Passphrase: empty
ID: empty
description: bitbucket.org …Run Code Online (Sandbox Code Playgroud) 我想通过ssh访问我的github存储库.当我第一次访问存储库时,系统会询问是否要将github ssh服务器添加到我的known_hosts文件中,这样可以正常工作.该请求也让我发现服务器的RSA密钥的指纹,我可以手动验证它是由github上提供的相同位置.
这些是OpenSSH 6.8和更新版本(以base64格式)显示的SHA256哈希:
SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8 (RSA)
SHA256:br9IjFspm1vxR3iA35FWE+4VTyz1hYVLIE2t1/CeyWQ (DSA)
Run Code Online (Sandbox Code Playgroud)
问题是我想known_hosts在第一次访问我的git存储库之前通过向我的文件添加公钥来阻止该请求.这可以通过使用ssh-keyscan -t rsa www.github.com命令来完成,该命令将以known_hosts文件所需的格式提供公钥.但人们反复提到,这不安全,容易受到中间人攻击.他们没有提到的是如何正确地做到这一点.
那么如何使用github页面上提供的RSA指纹安全地获取ssh服务器的公共主机密钥呢?我或多或少地寻找一个ssh-keyscan命令的选项,让我添加预期的rsa指纹,并导致命令失败,如果主机指纹与给定的指纹不匹配.
感谢您的时间!
所以基本上我通过sublimegit将我的项目推送到gitlab.
现在我为我的windows7制作了一个格式并安装了windows10,我将项目文件夹放在与旧操作系统上相同的路径上.
我有我可以生成的id_rsa私钥 - 我检查了它,它也生成了与gitlab相同的公钥.
我放置id_rsa到Users/Me/.ssh文件夹,Program files/Git/etc/ssh并在Git中创建了一个文件夹.ssh,并将其放在那里.
Pushing to git@gitlab.placeholder.ee:HTML/stuff.git
Host key verification failed.
fatal: Could not read from remote repository.
Run Code Online (Sandbox Code Playgroud)
任何人都能看到我在做什么样的错误?