当前位置: 首页>>技术问答>>正文


SSH到本地网络上的计算机的最佳方法是什么?

, ,

问题描述

我有两台电脑,一台是我用的,一台是给孩子们的。我希望能够在他们的计算机上控制它(比如关闭它等),但我很好奇这是做到这一点的最好方法。我们都在同一个房子里,共享相同的互联网连接。

最好的方法是什么?从研究中,我读到了在远程计算机上安装openssh-server但是在尝试连接时难以使用主机名。通常对于VPS’s it’s外部IP但由于我们都共享一个wifi连接,它是硬件IP吗?我们应该通过局域网直接连接还是通过互联网连接?

最佳解决方案

跑:

avahi-browse -tl _workstation._tcp

要获取本地网络中的Ubuntu工作站列表,您可以通过运行以下命令连接到它们:

ssh <username>@<computer-name>.local

次佳解决方案

您可以使用IP地址ssh到孩子的计算机。如果要使用计算机名称,请编辑/etc /hosts文件以包含计算机名称。

192.168.1.104  dad
192.168.1.105  kids

第三种解决方案

我使用ssh自动分析的文件〜/.ssh /config,这是一个例子:

Host *
ControlMaster auto
ControlPath /tmp/%r@%h:%p

KeepAlive yes 
ServerAliveInterval 60
ServerAliveCountMax 10
ControlPersist 1h

Host server1
        User user1
        HostName server1-web.example.org

Host server2
        User user2
        HostName server2-db.example.org
        Compression yes
        IdentityFile /home/user/.ssh/different_key.pem

请注意,您可以在此文件中使用任何(clientside)变量,并将其设置为全局或每个服务器。

第四种方案

在执行ssh之前,请检查ssh客户端和服务器。如果您没有安装这些服务

 sudo apt-get install openssh-client

 sudo apt-get install openssh-server

如果你已经做了

 ssh username@ipaddress

 Enter connecting device login password.

示例:

 ssh prem@192.168.1.145

 prem@192.168.1.145's password:********

如果您收到任何错误消息:“权限被拒绝,请再试一次。”

请检查两次用户名和IP。

第五种方案

  1. 如果LAN使用静态IP,您可以直接ssh到本地IP,例如ssh someuser@192.168.1.2

  2. 您可以在两台计算机中编辑主机文件,如Ed Manet在其answer中所述。这样你就可以使用计算机的主机名ssh,即ssh someuser@some_hostname

  3. 您可以设置本地DNS服务器来解析LAN的主机。通过这种方式,您可以使用计算机的主机名进行ssh,如同在选项2中一样,但通过将DNS服务器指向Ubuntu的网络设置,可以避免编辑每个主机文件。

DNSMasq是非常好的DNS服务器,易于设置。另一种选择是BIND

第六种方案

使用本地LAN IP地址。备用方法要求某些端口对Internet开放,以允许您登录。

此外,您需要端口映射(在路由器上)。使用’public’ IP地址(在路由器上)作为目标将无法连接到您的两台PC。


最简单的方法是永久分配路由器上的每个IP地址(对于您的2台计算机)。然后只需连接到该IP地址即可。

如果您希望变得聪明(稍后),请设置服务器并开始使用本地DNS服务为每个设备分配有意义的名称。只有2台电脑不值得麻烦。

第七种方案

如果您共享相同的互联网连接,则很可能是在同一个wifi路由器后面。所以你直接连接到你的孩子电脑:

ssh <IP-address>

要么:

ssh <user-name>@<IP-address>

显然,如果孩子的计算机具有静态IP地址,这种方法会更好。否则,您始终需要检查IP是什么。大多数路由器都可以选择为所选设备分配静态(始终相同)IP。某些路由器还可以选择将主机名分配给某个设备 – 然后对于同一网络地址中的任何设备,”kids”意味着相同。如果使用/etc /hosts文件分配主机名,则只有该主机文件所在的计算机才知道主机名。还假设孩子的计算机具有静态IP地址。

你也可以在那台机器上为孩子计算机设置静态IP,但我建议在路由器中完成网络设置的设置。一个控制点 – 更易于管理。如果事情不清楚,请发表评论,我会扩大我的答案。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1417.html,未经允许,请勿转载。