【问题标题】:is it possible to "ignore" your .ssh when accessing a server?访问服务器时是否可以“忽略”您的 .ssh?
【发布时间】:2014-08-07 14:49:26
【问题描述】:

我已经开始在某个地方工作了。我可以使用从我的计算机生成的公钥访问某些服务器。然而,虽然 ssh 登录一开始似乎很好,但我实际上无法使用这个 rsync 获取 repo。它需要一个我不需要的密码。我给之前的开发者发了电子邮件,并建议我的终端忽略了 ssh?这甚至可能吗?我该如何解决?

需要访问此代码:/

感谢您的帮助!

Last login: Fri Jun 13 11:51:30 on ttys000
Naomis-MacBook-Air:summerspirit.github.io Naomi$ cd
Naomis-MacBook-Air:~ Naomi$ ssh naomi@svn.civicrm.ca
Last login: Fri Jun 13 09:56:56 2014 from 76-10-147-186.dsl.teksavvy.com

[naomi@emily ~]$ ls
community.socialinnovation.ca socialinnovation.ca
[naomi@emily ~]$ ls -alt
total 28
-rw-------. 1 naomi naomi 183 Jun 13 12:43 .bash_history
drwx------. 3 naomi naomi 4096 Jun 13 10:03 .
lrwxrwxrwx. 1 naomi naomi 35 Jun 13 10:03 socialinnovation.ca -> /var/www/vhosts/socialinnovation.ca
lrwxrwxrwx. 1 naomi naomi 45 Jun 13 10:02 community.socialinnovation.ca -> /var/www/vhosts/community.socialinnovation.ca
drwx------. 2 naomi naomi 4096 Jun 13 09:56 .ssh
drwxr-xr-x. 15 root root 4096 Jun 13 09:12 ..
-rw-r--r--. 1 naomi naomi 18 Jul 18 2013 .bash_logout
-rw-r--r--. 1 naomi naomi 176 Jul 18 2013 .bash_profile
-rw-r--r--. 1 naomi naomi 124 Jul 18 2013 .bashrc
[naomi@emily ~]$ mkdir yolo
[naomi@emily ~]$ cd yolo
[naomi@emily yolo]$ rsync -avz naomi@svn.civicrm.ca:/var/www/vhosts/socialinnovation.ca .
The authenticity of host 'svn.civicrm.ca (209.15.213.70)' can't be established.
RSA key fingerprint is 63:99:92:28:c3:dd:b8:eb:c0:ec:c5:3a:11:7a:0f:88.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'svn.civicrm.ca,209.15.213.70' (RSA) to the list of known hosts.
naomi@svn.civicrm.ca's password:
Permission denied, please try again.
naomi@svn.civicrm.ca's password:
Connection closed by UNKNOWN
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: unexplained error (code 255) at io.c(600) [receiver=3.0.6]
[naomi@emily yolo]$
[naomi@emily yolo]$ rsync -avz naomi@svn.civicrm.ca:/var/www/vhosts/socialinnovation.ca .
naomi@svn.civicrm.ca's password:
Permission denied, please try again.
naomi@svn.civicrm.ca's password:
Permission denied, please try again.
naomi@svn.civicrm.ca's password:
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: unexplained error (code 255) at io.c(600) [receiver=3.0.6]
[naomi@emily yolo]$
[naomi@emily yolo]$ rsync -avz naomi@svn.civicrm.ca:/var/www/vhosts/community.socialinnovation.ca .
naomi@svn.civicrm.ca's password:
Permission denied, please try again.
naomi@svn.civicrm.ca's password:
Permission denied, please try again.
naomi@svn.civicrm.ca's password:
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: unexplained error (code 255) at io.c(600) [receiver=3.0.6]
[naomi@emily yolo]$

来自开发者下午 3:00(19 小时前)

对我来说,我认为您的 mac 以某种方式配置为在连接时忽略您的 .ssh 键。

莫名其妙,但提醒我为什么我不尝试运行公共服务器......

【问题讨论】:

  • 您在 Mac 上通过ssh-keygen 生成了您的公私钥?您是否使用您的公钥在服务器上设置了~/.ssh/authorized_keys
  • 我的 mac 中似乎已经有 id,所以我只是做了 pbcopy
  • 这玩意怎么跟SVN有关系?!
  • @summerspirit:下面我的第三个选项展示了如何在远程服务器上使用本地 .ssh/id_rsa 密钥对。但是,我建议不要使用该选项,而支持选项 1 或 2。
  • 我也同意,这似乎与 svn 没有任何关系,所以我会删除该标签。

标签: macos ssh terminal ssh-keys


【解决方案1】:

看起来您正在从 Naomis-MacBook-Air ssh 到 svn.civicrm.ca(又名 emily),然后您尝试再次(通过 rsync)从那里 ssh 到 svn.civicrm.ca

三种可能的解决方案:

1. rsync 没有网络

因为您正在尝试 rsync naomi@svn.civicrm.ca:/var/www/vhosts/socialinnovation.ca 来自 svn.civicrm.ca 您可以使用:

rsync -avz /var/www/vhosts/socialinnovation.ca .

完全绕过在网络上使用 ssh 的需要。

2。确保您正在转发您的代理

您在Naomis-MacBook-Air 上的.ssh 被忽略的原因是您没有允许ssh 转发您的代理。您可以通过运行来解决此问题:

echo "ForwardAgent yes" > ~/.ssh/config

开启Naomis-MacBook-Air。这应该允许您在 ssh 连接到该远程服务器后继续在 emily 上使用 ssh 和 rsync。

您可以通过反复运行 ssh localhost 来测试是否有效 - 它永远不会要求您输入密码!

3.将您的 .ssh/id_rsa.pub 和 .ssh/id_rsa 复制到远程服务器并在那里使用它们

这就是您在原始问题的评论中尝试使用 pbcopy 所做的事情。

一旦您在远程服务器上获得了/home/naomi/.ssh/id_rsa/home/naomi/.ssh/id_rsa.pub,并且一旦您拥有chmod 400 这两个文件,您应该能够:

naomi@emily:~$ ssh-agent bash
naomi@emily:~$ ssh-add
naomi@emily:~$ rsync ...

您必须手动执行ssh-agentssh-add 命令,因为目前还没有可以使用的代理正在运行。在您的 MacBook Air 上并非如此,因为 MacOS X 会在后台为您运行一个代理。

但我建议不要使用此选项,因为这意味着将您的私钥放在远程服务器上,任何在该服务器上具有 root 访问权限的人都可以访问。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-30
    • 2011-08-22
    • 1970-01-01
    • 1970-01-01
    • 2018-05-22
    • 1970-01-01
    相关资源
    最近更新 更多