OpenVPN Site2Site使用PFSense

我目前正在使用2个pfsense设备(2.0.2)构build一个s2s VPN。 隧道得到build设,但我无法将stream量从一边路由到另一边,检查我的testlab:


好吧,我build立一个新的testing实验来缩小错误。 这是我在做什么:

  • 要确定它不是一个版本问题,我切换到pfsense 2.0.1
  • networkingA:192.168.3.0/24
  • networkingB:192.168.2.0/24
  • “互联网模拟networking”:10.10.10.0/24

PFSense网站A:

  • em0:WAN,10.10.10.10
  • em1:LAN,192.168.3.10

客户站点A:

  • if0:LAN,192.168.3.100,gw:192.168.3.10
  • 防火墙被禁用,ping gw工作。

PFSense网站B:

  • em0:WAN,10.10.10.20
  • em1:LAN,192.168.2.20

客户站点B:

  • if0:LAN,192.168.2.100,gw:192.168.2.20
  • 防火墙被禁用,ping gw工作。

PFSense站点Bconfiguration:

  • 每个单一接口上的所有防火墙规则设置为允许任何
  • 没有GW或路由添加,所以只有默认的接口networking已知pfsense
  • testing使用pfsense gui创build的CA.
  • 使用pfsense gui和创build的ca创build的服务器(types:服务器)证书
  • 客户端(types:用户)使用pfsense gui创build的证书
  • 导出客户端证书的私钥和公钥
  • 导出CA证书的公钥
  • 创build一个新的Open VPN服务器不使用向导,但点击“添加”(因为我想要一个对等的OVPN向导dosnt提供)
  • 如下configuration:#服务器模式:对等(SSL / TLS)#协议TCP#设备模式:TUN#接口:WAN #Port 443 #Disabled TLSvalidationtesting#使用创build的CA和创build的服务器证书。 #默认密码#Tunnelnetworking:172.16.0.0/24

    本地networking:192.168.2.0/24#远程networking:192.168.3.0/24#并发连接数:2 #rest default / blank

  • 增加了新的接口OPT1(ovpnc1)
  • 启用了OTP1接口(types:无)
  • 是:OVPN接口上的FW规则也被设置为允许任意
  • 禁用并重新启用openvpn服务器
  • 已检查的路由:使用ovpnc1 NIC存在到远程networking的路由

PFSense站点configuration:

  • 每个单一接口上的所有防火墙规则设置为允许任何
  • 没有GW或路由添加,所以只有默认的接口networking已知pfsense
  • 使用其公钥从站点B导入CA
  • 使用公钥和私钥导入客户端证书站点B.
  • 通过单击打开的VPN客户端部分中的“添加”图标创build一个新的Open VPN客户端
  • 像这样configuration它:
  • 服务器模式:对等(SSL / TLS)#协议TCP#设备模式:TUN#接口:广域网#Port 443#服务器主机或地址:10.10.10.20

    服务器端口:443 #Disabled TLS Auth进行testing#使用导入的CA和导入的客户端证书。 #默认密码#Tunnel

    networking:172.16.0.0/24 #Remotenetworking:192.168.2.0/24 #rest默认/空白

  • 增加了新的接口OPT1(ovpnc1)
  • 启用了OTP1接口(types:无)
  • 是:OVPN接口上的FW规则也被设置为允许任意
  • 禁用并重新启用openvpn服务器
  • 已检查的路由:使用ovpnc1 NIC存在到远程networking的路由

– > VPN隧道出现,我看到两个pfsense结束上的状态。 NOTHEELSE是在pfsense中configuration的

testing:

站点A上的客户端无法在站点B上ping客户端,反之亦然。 path显示路由在客户端的gw(PFSense LAN端口)结束。

站点A上的PFSense无法使用LAN和WAN接口在站点B上ping客户端,但使用OTP1接口成功。 但是,站点B上的客户端无法在站点A上ping PFSense。

但是,从站点B上的PFSense到站点A上的客户端执行Ping操作并非如此:ping无法从任何接口工作。 这里又一次:从站点A的客户端在站点B上ping PFSense失败。

此外,站点B上的PFSense无法在站点A上ping客户端,反之亦然。 使用广域网,局域网和OTP1接口进行testing,发送出去。

奇怪:站点A上的PFsense能够在站点B上ping PFSense,但反之亦然!

结果:

只有站点A上的pfsense的直接客户似乎能够在远程networking(pfsense或任何客户端)上与任何人交谈。 尝试通过pfsense进行路由的客户端通信失败,甚至与pfsense处于同一子网,所以networking应该被传送到远程站点。 在服务器站点(B)上的通信启动似乎也达不到客户端站点(A)上的任何内容。

这带来了两个问题: – 我如何告诉PFsense / OpenVPN的VPN传输stream量从任何客户端路由通过pfsense(从相同的子网)(我猜NAT的工作,但真的没有其他方式?) – 怎么做我允许我的服务器站点(B)生成的stream量通过VPN到客户端站点?

编辑号码 2

我把这个添加到服务器端的高级configuration中,没有上面在testing中所描述的那种效果:

route 192.168.2.0 255.255.255.0;push "route 192.168.3.0 255.255.255.0"; 

另外,使用pfsense 2.0.1我意识到,当vpn连接build立时,我现在有一个网关,将ovpn接口的IP添加到我的网关,这使我可以使用该接口向远程networking添加静态路由。 我做了这两个:网站A和网站B(或客户端和服务器,如果你喜欢的话)。

编辑号码 3

这里显示路线的屏幕:站点B(服务器)路线: 站点B(服务器)路由

网站A(客户): 网站A(客户)

我会使用静态路由,而不是在s2s情况下推送路由。 或者取决于networking使用OSPF交换路由的复杂程度。 但说实话,我从来没有试图在S2S情况下推行路线。 对于简单的设置它可能工作得很好。

在pfsense上用openvpn设置s2s,一旦你configuration了openvpn服务器/客户端,就需要做2件事情。

  1. 您需要在每个路由器上的Interfaces-> Assign中添加s2s隧道作为接口。
  2. 默认情况下,防火墙将阻止这些接口上的所有stream量,因此您需要添加一些允许这些接口的所有规则。 一旦你有了工作,你可以根据需要应用规则