【问题标题】:Set up git to require a ssh keyfile设置 git 以要求 ssh 密钥文件
【发布时间】:2015-09-23 15:16:24
【问题描述】:

我关注the guide here 为我的网站创建了一个 git 存储库(不使用 github 或任何东西)。问题是我能够 ssh 并推送到 repo,甚至不需要密钥文件。

我正在使用 SourceTree,我所做的只是将源路径设置为 ssh://user@mydomain.com/var/repo/site.git,我可以在没有任何密钥或密码的情况下更新我的网站。

如何让我的网站的 git 需要一些身份验证?我拥有的服务器是 Ubuntu LAMP 服务器。

【问题讨论】:

  • 密钥与用于 SSH 的密钥相同。您可以在没有密钥或密码的情况下对服务器进行 SSH 连接吗?是否有可能您过去已经将公钥存储在服务器中以进行 SSH 连接?
  • 当我从命令提示符处执行此操作时,我无法在没有密码的情况下 ssh 到服务器,但是当我通过 SourceTree 进行 ssh 时,我从未将我的密码放在那里并且它仍然可以连接。

标签: git ubuntu ssh vps


【解决方案1】:

我发现了问题所在:它实际上一直在使用我的密钥文件。不知何故,它自动将我桌面上的 .ppk 文件与该存储库相关联。

只需在我的桌面上重命名我的密钥文件,它就不再允许我通过 ssh 进入我的服务器。在 SourceTree 中没有更改此文件路径的设置或配置。老实说,我不知道它是怎么做到的。

【讨论】:

    【解决方案2】:

    您应该能够运行ssh user@mydomain.com 以查看是否需要任何身份验证。如果没有,很可能有一个从.ssh/config 获取的 SSH 密钥,例如id_rsaid_dsa,并且在某个时候,您将相应的公钥放在远程服务器上的.ssh/authorized_keys 中。

    如果您想要密码,请删除该密钥(然后退回到标准用户/密码提示)或设置您的 SSH 密钥以要求输入密码。 (当您设置密码时,ssh-agent 可能会在询问您之间的一段时间内缓存您的密码。)

    【讨论】:

    • 感谢您的信息。按照你说的我发现了问题,看看我的答案。
    • 将答案标记为正确的正确方法是选择正确的答案,而不是将完全相同的答案附加到您的问题中。
    • 我不明白你的意思?我写的答案就是我的问题的答案。
    • 对,但重点是我给出的答案给了你答案。回答您自己的问题是一种不好的形式,尤其是当其他人首先为您提供了要寻找的解决方案时。
    • 啊,我知道了。这很奇怪,因为它就像一个 2 层的问答。不过感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-24
    • 2012-05-05
    • 2014-02-13
    相关资源
    最近更新 更多