除了关闭未使用的端口是好的之外,我对网络安全了解不多。这就是我想要实现的目标:
我需要能够使我的服务器(虚线)对互联网的访问受到限制,但对网络上的其他设备具有完全的访问权限。我只想让我的家庭服务器连接到网络进行更新(通过apt-get
)或wget
有时“处理一些文件”。有没有一种方法可以阻止网络,但可以轻松地让其通过以进行软件更新?
我将从服务器运行 apache Web 服务器,但它只能供我网络上的其他设备使用。我不希望有人能够通过网络连接到它。我怎样才能安全地做到这一点?
基本上我需要一个完整的网络服务器,可以从我的网络访问,但不能从互联网访问(除非我特别要求)。
答案1
我假设您的互联网网关设备确实NAT(网络地址转换),即您的家庭网络使用诸如 192.168.0.* 之类的专用网络,并且您可以从您的家庭动态获取一个 IP互联网服务供应商由网关使用。
在这种情况下,当您明确配置了一个网络服务器时,互联网上的某人只能访问您的家庭网络 Web 服务器上的端口 80转发端口端口 80 到网关上的 Web 服务器。
除了检查网关配置之外,您还可以从具有不同 IP 的系统进行检查。获取网关当前的外部IP,并尝试从其他IP访问80端口。和/或使用nmap
在上面。
编辑:
在 LAN 上,在 Linux 系统上,您可以通过以下方式查找配置的 IP 地址:
$ ifconfig | grep -A1 encap
eth0 Link encap:Ethernet HWaddr 01:02:de:ad:be:af
inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
--
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
在此示例中,它位于 192.168.1.* 网络上,这是一个私有地址范围,即需要一个执行 NAT 的网关来访问互联网:
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0
0.0.0.0 192.168.1.42 0.0.0.0 UG 0 0 0 eth0
这意味着网关在 LAN 上的 IP 为 192.168.1.42。
通常所有这些都是通过自动配置的动态主机配置协议- 例如,DHCP 服务器在网关设备上运行。
要获取网关的外部 IP 地址,可以使用它的管理界面或浏览显示它的互联网站点,例如
$ curl -s http://www.lawrencegoetz.com/programs/ipinfo/ | grep -A1 'Your IP'
<h1>Your IP address is<BR>
64.34.119.12
(不知道这项服务 - 通过谷歌你可以找到很多替代品)