通过SSH连接时如何提供用户服务器名称而不是ip?

bra*_*orm 12 ssh virtualbox networking

我有一个安装了 ubuntu 12.04 的虚拟机。我的主机是 Mac OS(小牛)。我将 SSH 密钥复制到我的远程服务器(这是 ubuntu 服务器,我称之为 myubuntu)。

当我做

ssh username@myubuntu
ssh: Could not resolve hostname ubuntuhadoop: nodename nor servname provided, or not known
Run Code Online (Sandbox Code Playgroud)

但是当我尝试:

ssh username@66.90.115.178
Run Code Online (Sandbox Code Playgroud)

我能够登录到远程服务器(这是 myubuntu)。

为什么需要我提供它正确连接的 IP 地址而不是服务器名称。

我不确定这是否可能。但我在 youtube 教程之一中找到了。 ssh myubuntu(不是 username@myubuntu)并登录到远程服务器,没有用户名。这可能吗?

Pan*_*her 15

你有几个选择。

如果您只需要从几个位置或单个位置进行访问,请更新 /etc/hosts

sudo nano /etc/hosts
Run Code Online (Sandbox Code Playgroud)

为您的服务器添加一个条目

66.90.115.178 myubuntu
Run Code Online (Sandbox Code Playgroud)

其次,购买或寻找免费的 DNS 服务,http://www.noip.com/free/或类似服务。

第三,ssh默认使用你当前的用户名,所以如果你在客户端和服务器上有相同的用户名,只需ssh server_name

ssh your_server
Run Code Online (Sandbox Code Playgroud)

如果名称不同或您想要一个新用户,您只需要指定一个用户名

ssh new_user@your_server
Run Code Online (Sandbox Code Playgroud)