如何配置家庭网络以便外部访问特定的计算机?

如何配置家庭网络以便外部访问特定的计算机?

我想配置我的家庭网络,以便可以从家庭网络外部访问特定计算机。例如,通过 SSH 连接到我家里的台式计算机,或运行 Web 服务器(路由端口 80 请求),或使用 VNC 进行屏幕共享。我使用的是 Mac,并使用 Airport Extreme 作为路由器。我认为我需要配置路由器以转发端口,以便我可以使用外部 IP 地址访问它,但我对这类事情还不熟悉,所以我不知道正确的做法。

人们怎样通过这种方式来配置家庭网络呢?

答案1

从外到内的 NAT 转发规则只是从公共端口到内部 IP 地址和端口的简单映射,表示“如果在这个公共端口上接收到数据包,则将其转发到端口 Y 上的服务器 X”。

http://portforward.com并查找您的路由器模型以获取有关如何制定转发规则的说明。您通常需要为您计划公开的每项服务制定一条转发规则。

如果所有服务都在同一台服务器上,并且您的路由器可以支持它,那么您可以创建一个 DMZ 规则,将所有未经请求的入站流量发送到您的服务器,这样您就不需要为每个协议创建多个规则,但这意味着您的服务器完全暴露,因此您必须将其锁定才能安全地执行此操作。

如果将 SSH 配置为使用密钥而不是密码,则可以安全地转发 SSH,但对 ssh 使用弱密码非常危险,而使用强密码也不太安全。转移端口是个好主意,但远非万无一失。本周 slashdot 上有一篇关于分布式暴力扫描器在高端口搜索 ssh 的文章。http://micheljansen.org/blog/entry/123 http://macnugget.org/projects/publickeys/

如果没有某种包装器(如 ssh),VNC 转发是不安全的。一旦您设置了端口转发,您应该能够找到大量有关如何设置 vnc 进行隧道访问而无需将 vnc 直接暴露到互联网的教程。

http://www.mactech.com/articles/mactech/Vol.20/20.07/VNCOverSSH/index.html http://www.cyberciti.biz/tips/tunneling-vnc-connections-over-ssh-howto.html

祝你好运

答案2

你是对的,你需要配置 Airport Extreme 来转发端口,这很简单。

首先,你需要知道涉及哪些端口号(参见知识库文章),就你的情况而言:

  • 22/tcp(SSH)
  • 80/tcp (HTTP)
  • 5900/tcp (VNC)(注意,VNC不安全

其次,你想从外部访问的 Mac 必须有一个已知的静态 IP 地址. 像这样配置:

  1. 打开系统偏好设置>网络> kWi-Fi>高级> TCP/IP。
  2. 将‘配置 IPv4’条目更改为‘使用 DHCP 和手动地址’。
  3. 输入一个与路由器字段中的 IP 地址一致的 IP 地址,但用 201 到 254 之间的高位数字替换最后一个数字(下图中我输入了10.0.1.201),因为 DHCP 通常保留从地址 .2 到 .200 的范围(请参阅本文了解更多信息):

在此处输入图片描述

第三,在 Applications/Utilities 文件夹中打开 Airport Utility,选择您的 Airport Extreme,然后按Edit

在此处输入图片描述

选择“网络”选项卡并按下+“端口设置”​​部分:

在此处输入图片描述

为每个协议添加一个端口转发条目,并将 Mac 的静态 IP 地址指定为私有 IP 地址,如上配置:

在此处输入图片描述

私有 TCP 端口是 Mac 上的端口。这些是我上面列出的端口。公共 TCP 端口是 Airport Extreme 上的端口。您可以在此处使用任何端口,但为了简单起见,我建议您使用与 Mac 上相同的端口。

保存每个条目,应用新配置并等待基站重新启动。

现在您可以使用 Aiport Extreme 的 IP 地址连接到您的 Mac。

相关内容