git - Visual Studio Code 和 Git 在我的 NAS 上阻止了我的 IP

标签 git ubuntu visual-studio-code ssh synology

我不知道这是否是 Visual Studio Code、Ubuntu、Git、SSH 或 Synology 的问题。因此,我在这里问这个问题,在我认为是万事通的网站上。

我有一台 Ubuntu 台式电脑和一台 Synology NAS(操作系统是 DSM)。我已在 NAS 上安装了 Git 服务器。在 PC 上,我有一个使用 Git 的私有(private)编程爱好项目。我在 NAS 上有一个裸存储库,它充当该项目的 Git 远程。使用命令 git remote add origin ssh://<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="d5b2bca1a0a6b0a795e4ece7fbe4e3edfb8d8d8dfb8d8d8d" rel="noreferrer noopener nofollow">[email protected]</a>:/path/to/remote/repository/name.git 添加 Remote 。我已经在 PC 上创建了一个私钥-公钥,并且公钥已移动到 NAS 的路径 ~/.ssh/authorized_keys gituser 的。

在PC上,如果我手动cd我进入 Git-project 文件夹并使用 git push ,然后远程服务器询问我的 Synology 密码,我输入密码,按 ENTER 键,一切正常。我还可以将 Remote 克隆到电脑上的另一个位置,并且它可以工作。

但是,如果我启动 Visual Studio Code 并将项目作为文件夹打开,则由于超过允许的失败登录尝试次数上限,我很快就会被 Synology NAS 禁止 IP。

所以问题是:这里出了什么问题以及如何让它发挥作用?

我猜测发生这种情况是因为 VSCode 尝试自动从远程获取可能的更新,但由于 DSM 需要密码而未能成功。我尝试添加行 PasswordAuthentication no/etc/ssh/sshd_config在 NAS 上,但这没有做任何事情。

最佳答案

我确实设法让一切正常运转。我不确定最终解决这个问题的是什么,但我做了什么:

在我的 Synology NAS 上

我决定使用我的管理员帐户进行 Git 远程连接。

我在 /volume1/homes/adminaccount/volume1/homes/adminaccount/.ssh/ 上使用了 sudo chmod 700 >/volume1/homes/adminaccount/.ssh/authorized_keys

我编辑了 /etc/ssh/sshd_config 并取消注释 #PubkeyAuthentication yes#AuthorizedKeysFile .ssh/authorized_keys

在我的 Ubuntu PC 上

我编辑了我的~/.ssh/config,现在看起来像这样:

# My NAS
Host 192.168.XXX.XXX
  Port 12345
  Preferredauthentications publickey
  IdentityFile ~/.ssh/myrsakey

结果

一切似乎都正常。我可以启动 Visual Studio Code、处理项目并推送到远程,而不会禁止我的 IP。

感谢@VonC 引导我走向正确的方向。

关于git - Visual Studio Code 和 Git 在我的 NAS 上阻止了我的 IP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62582160/

相关文章:

mysql - 无法在ubuntu上使用tomcat6连接到mysql数据库

python-2.7 - PYTHONPATH 在 ubuntu 13.04 中显示为空

android - 在终端中找不到命令 'aapt v' 和 'android list'

linux - 无法连接到 vscode 服务器,scp : No such file or directory

python - 如何在 VSCode Python REPL 中执行整个当前文件?

git - 如何计算 Git 存储库中作者对每个文件路径名的提交次数?

git - 不小心在git中犯了

Github 页面 : Scripts from vendor directory are not getting loaded

git - 无法从远程服务器 pull

python - 导入破坏了 pytest 的 VSCode 测试