首先,我还不是经过全面培训的 IT 专业人士,而只是一名大学生,所以如果我要问的一些问题可能显得“愚蠢”,请原谅我,因为答案对你来说是显而易见的。
我几乎已经为我们的家庭网络设置好了 Windows Server 2012 Foundation 服务器。它配置了以下角色:
趋势科技无忧商务安全的文件服务器、打印服务器、DHCP 服务器、DNS 服务器和安全服务器。所有这些都已启动并运行 - 到目前为止一切顺利。
概述和目标
除此之外,我还想将服务器用作 OpenVPN 路由器和防火墙,使用“高级安全 Windows 防火墙”和 RRAS。我想我也基本完成了这些服务的设置,但正如我之前提到的,我不是经过全面培训的 IT 专业人士,而且这是我第一次这样做,如果你们中的一些人能在我将其连接到公共/不安全的网络之前告诉我我的配置是否正确,我将不胜感激。
首先,这是我拥有的网络以及我希望服务器执行的操作:
家庭内部网络:192.168.0.0/24 - 服务器 IP 192.168.0.1 - 连接到 NIC1
本地“不安全”网络:192.168.3.0/24 - 服务器的 IP 192.168.3.2 - 连接到 NIC2
OpenVPN 互联网连接:10.8.1.52/30 - 服务器的 IP 10.8.1.54 - 连接到 OpenVPN 的虚拟 NIC
现在我想要做的是让 Windows Server 2012 服务器通过该 OpenVPN 互联网连接路由我的内部家庭网络的互联网流量。它还必须阻止来自 OpenVPN 互联网连接的所有未经请求的传入流量,无论它是针对服务器本身还是我的内部家庭网络,此外,它还必须阻止所有往返于本地“使用安全”网络的流量,但 OpenVPN 与我的 VPN 服务提供商的 VPN 服务器的连接除外。我这样做的主要原因是我住在德国,通过路由所有互联网流量到我位于美国的提供商的 VPN 连接,我的整个家庭网络将使用美国的 IP 地址连接,这使我能够使用 Netflix、Hulu、Vevo 等无法与德国 IP 地址配合使用的服务。另一个原因是,通过将我的内部家庭网络(在 NIC1 上)与外部“不安全”网络(在 NIC2 上)完全分开,我可以使用“不安全”网络通过德国 ADSL 连接直接为不太安全/不受信任的设备(如智能手机、网络电台或客人带来的设备)提供互联网访问,而不会有这些设备以某种方式危及我的内部家庭网络的风险。
在“不安全”网络上,有一个标准的 ADSL 路由器设备,其 IP 地址为 192.168.3.1,OpenVPN 应使用该设备与我的 VPN 服务提供商的服务器建立安全加密的连接。除此之外,通过 NIC2 的所有其他传入和传出流量都应被服务器完全阻止。
我目前所做的:
高级安全 Windows 防火墙
一般的:
-使用“gpedit.msc”,我设置了“高级安全 Windows 防火墙”,其参数如下:
(我使用相同的设置配置了“域”、“公共”和“私人”配置文件,这样我就不必处理网络位置感知)
防火墙状态:开启(推荐)
入站连接:阻止(默认)
出站连接:阻止
允许单播响应:否
应用本地防火墙规则和应用本地连接安全规则:否(我这样做是为了防止第三方应用程序通过添加自己的规则“弄乱”防火墙设置)
入境规则:
如果本地地址 = 192.168.0.1 且远程地址 = 192.168.0.0/24,则允许(这应该允许来自我的内部家庭网络的所有入站连接通过 NIC1)
出站规则:
如果本地地址 = 192.168.0.1 或 10.8.1.54 则允许(这应该允许通过 NIC1 和 OpenVPN 的虚拟 NIC 的所有出站连接)
如果程序 = “%ProgramFiles%\OpenVPN\bin\openvpn.exe” 且本地地址 = 192.168.3.2 且远程地址 = “我的 VPN 提供商服务器的公共 IP 地址” 且协议 = “UDP” 且远程端口 = 1194,则允许(这应该允许 OpenVPN 通过 NIC2 建立与我的 VPN 提供商服务器的安全加密连接)
“控制面板\网络和 Internet\网络连接”
NIC1
在 NIC1 的属性中,我取消选中 IPv6 协议,因为我没有使用它,并且我将 IPv4 配置为使用静态 IP 地址 192.168.0.1、网络掩码 255.255.255.0、无默认网关和首选 DNS 服务器 192.168.0.1
NIC2
对于 NIC2,它显示“此连接使用以下项目”,我取消选中除 IPv4 之外的所有内容,然后将 IPv4 配置为使用静态 IP 地址 192.168.3.2、网络掩码 255.255.255.0、无默认网关、无首选 DNS 服务器
OpenVPN 的虚拟网卡
对于 OpenVPN 的虚拟 NIC,上面显示“此连接使用以下项目”,我取消选中除 IPv4 之外的所有项目,然后将 IPv4 配置为使用静态 IP 地址 10.8.1.54、网络掩码 255.255.255.252、默认网关 10.8.1.53、首选 DNS 服务器 127.0.0.1 [我必须在 OpenVPN 的配置文件中添加一行,告诉它不要“弄乱”那些手动配置的参数,但我认为这应该不是问题]
“路由和远程访问”
一般的
在“配置路由和远程访问”向导中,我选择了“NAT”选项,然后选择NIC1作为私有接口,OpenVPN的虚拟NIC作为公共接口
我进入服务器属性,在“常规”选项卡上取消选中“IPv6 路由器”,然后进入“IPv6”选项卡,取消选中“启用 IPv6 转发”
“IPv4 \ 常规”
NIC2 属性
在 NIC2 的属性中,我选中了“启用碎片检查”[这是必要的/推荐的吗???],然后设置了以下静态过滤器
入站过滤器:
选择“丢弃除满足以下条件的数据包之外的所有数据包”,然后添加以下过滤器
源地址 = ANY,源网络掩码 = ANY,目标地址 = 192.168.3.2,目标掩码 = 255.255.255.255
出站过滤器:
选择“丢弃除满足以下条件的数据包之外的所有数据包”,然后添加以下过滤器
源地址 = 192.168.3.2,源网络掩码 = 255.255.255.255,目标地址 = ANY,目标掩码 = ANY
(这些过滤器应防止任何入站或出站路由通过 NIC2 发生,并且应仅允许来自服务器本身或针对服务器本身的数据包 - 然后此类连接应由“高级安全 Windows 防火墙”处理)
OpenVPN 的虚拟网卡属性
在 OpenVPN 虚拟网卡的属性中,我选中了“启用碎片检查”[这是必要的/推荐的吗???],然后设置了以下静态过滤器
入站过滤器:
选择“丢弃除满足以下条件的数据包之外的所有数据包”,然后添加以下过滤器
源地址 = ANY,源网络掩码 = ANY,目标地址 = 10.8.1.54,目标掩码 = 255.255.255.255
出站过滤器:
选择“丢弃除满足以下条件的数据包之外的所有数据包”,然后添加以下过滤器
源地址 = 10.8.1.54,源网络掩码 = 255.255.255.255,目标地址 = ANY,目标掩码 = ANY
(这些过滤器应该阻止任何入站或出站路由通过 OpenVPN 的虚拟 NIC 发生,同时它们不应该影响 NAT,因为所有 NATed 数据包都应将 10.8.1.54 作为其源地址或目标地址)
“IPv4 \ 静态路由”
我添加了以下路线
目的地:“我的 VPN 提供商服务器的公共 IP 地址”
网络掩码:255.255.255.255
网关:192.168.3.1
接口: NIC2
度量:1
“IPv6 \ 常规”
由于我已经在 NIC 属性中取消选中 IPv6,并且在 RRAS 中取消选中“IPv6 路由器”和“启用 IPv6 转发”,所以我认为我不需要再担心 IPv6,但为了安全起见,我转到“IPv6 \ 常规”并为 NIC2 和 OpenVPN 的虚拟 NIC 配置了静态过滤器,以阻止通过这些 NIC 的任何入站或出站 IPv6 流量。
感谢您的阅读!
我知道这需要阅读和理解的内容非常多,但因为这是我第一次进行这样的设置,所以在将服务器连接到我的“不安全”网络和互联网之前,有比我更有经验的人查看了这些设置,我可以睡得更安稳。因此,我非常感激。
提前感谢您,祝您周末愉快!
亚历山大