【问题标题】:Mac OS X Terminal getting wrong SSH path? [closed]Mac OS X 终端获取错误的 SSH 路径? [关闭]
【发布时间】:2012-01-19 19:57:45
【问题描述】:

在 Mac OS X 终端中,我通过 ssh 使用 dsa 密钥对登录到远程服务器。当我执行这个命令时:

ssh -v -l root -p 22 [remote ip address]

我在调试代码中看到终端正在寻找我的密钥

/var/root/.ssh/

实际路径是:

/Users/danny/.ssh/

如果我执行这个命令:

ssh -v -i /Users/danny/.ssh/inno_dsa -l root -p [remote IP address]

...那我就没事了。

所以我的问题是有没有办法告诉终端自动查看 /Users/danny/.ssh/ 所以我不必总是明确指定路径?

【问题讨论】:

    标签: shell ssh terminal


    【解决方案1】:

    将此添加到您的~/.ssh/config

    Host myremoteroot
    HostName [remote IP address]
    User root
    IdentityFile /Users/danny/.ssh/inno_dsa
    

    然后通过执行ssh myremoteroot进行连接。

    (顺便说一句,你为什么要明确指定默认端口?)

    【讨论】:

    • 您好,感谢您提供的信息。这种工作,这是一个很好的解决方案。当我没有添加端口 22 时,它不会连接。请注意,在新的配置文件中,我还必须添加 port 22。所以现在它似乎正在连接,但我得到了Address [remote IP] maps to vps.mydomain.com but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!,所以它似乎确实建立了连接,但后来我不被允许进入。我做了一些谷歌搜索,找到了GSSAPIAuthentication no,但这似乎并没有解决它。
    • 原来在 /private/etc 中有一个配置文件,所以一旦我将代码添加到其中,它现在可以很好地与ssh myremoteroot 连接。但是,我不确定这是否是更改该文件的最佳做法。
    • 我特别不熟悉 Mac。一般来说,升级软件时可能会覆盖全局配置文件 --- 我不知道 OS X 是否会专门这样做。
    • 好的,谢谢。事实证明我以 root 身份在终端中,所以它没有写入正确的配置文件。一旦我在终端中以我的用户身份退出,它似乎可以识别配置文件,但我遇到了另一个错误。不过,我想我会为此提出一个新问题。
    • 明白了,我的错误是User Danny,而不是我的远程用户,当然是root。因此,将其更改为User Root,正如您在上面修复的那样。再次感谢!
    猜你喜欢
    • 2013-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-23
    • 1970-01-01
    • 2010-12-05
    • 2013-03-10
    • 2011-09-26
    相关资源
    最近更新 更多