我有一个作为路由器/防火墙运行的OpenBSD 6.0框。 它有三个物理networking连接和一个GRE隧道: em0:Internet(路由域0) em1:内部LAN专用IP(路由域0) em2:服务器networking公共IP(路由域2) gre0:提供连接到em2的通道(路由域2) 互联网和专用局域网是NAT的标准。 GRE隧道通过Internet连接(路由域0)进入,但隧道通信在路由域2中.EM2上的IP范围有一条通过GRE隧道回到Internet的路由。 当我从我的局域网中的一台服务器上下载文件时,它通过互联网出去,然后通过隧道,然后到达em2。 这实际上工作得很好,但是考虑到服务器距离我只有几英尺,而且我的内部链接比通过互联网要快得多,所以我希望路由器能够简单地在内部处理它。 我已经尝试了一些不同的教程(他们是PF的老版本),以及平淡的摆弄,但我没有太多的运气。 所以问题是,如何configurationPF,以便在路由域之间跳转,并且不需要通过Internet来访问本地连接的设备? 任何人都可以把我引向正确的方向吗?
我打算把我的OpenBSD升级到4.7(从4.6开始),你可能也可能不知道,他们改变了pf.conf的语法。 这是升级指南的相关部分: (4)NAT语法改变 正如在这个邮件列表文章中详细描述的那样,PF的单独的nat / rdr / binat(翻译)规则已被常规匹配/过滤规则的操作所取代。 简单的规则集可以像这样转换: nat on $ext_if from 10/8 -> ($ext_if) rdr on $ext_if to ($ext_if) -> 1.2.3.4 变 match out on $ext_if from 10/8 nat-to ($ext_if) match in on $ext_if to ($ext_if) rdr-to 1.2.3.4 和… binat on $ext_if from $web_serv_int to any -> $web_serv_ext 变 match on $ext_if from […]
我以非特权用户身份运行基于Java的Web服务器。 因此它监听端口8080和8443,而不是80和443。 现在我正在使用以下pf规则在内部转发端口: rdr pass on $ext_if proto tcp from any to $ext_ip port 80 -> $ext_ip port 8080 rdr pass on $ext_if proto tcp from any to $ext_ip port 443 -> $ext_ip port 8443 (显然为$ext_if和$ext_ip定义了macros) 现在我想添加更多的IP到接口(SSL vHosts) – 最好的方法是什么? 我是否必须为每个添加的IP重复这些规则? 或者,我可以以某种方式为“每个IP上的接口”做一个规则? 编辑:不幸的是,IP不是从同一个子网。 我试图列出他们在$ext_ipmacros,但我仍然更喜欢一个解决scheme,我不必明确添加每个IP。 谢谢!
我的U-Verse调制解调器被称为“自反ACL” Reflexive ACL:当启用IPv6时,您可以启用Reflexive Access Control Lists来拒绝入站IPv6stream量,除非此stream量是由于返回传出数据包(除非通过防火墙规则configuration)。 这似乎是一个非常好的方法,不必在路由器后面的每台计算机上维护一个防火墙,从而获得IPv6地址。 这听起来像是一个NAT,这对我的小家庭networking来说就是我现在想要的。 现在我的调制解调器就像路由器一样,所以我正在configuration一个OpenBSD路由器来完成这个任务。 我已经获得了IPv6的支持,所有这些以及我的OpenBSD路由器将通过rtadvd发布IPv6地址。 现在我想让人们不能通过IPv6即时访问我的本地networking。 在OpenBSD 5.0中,我怎样才能最好的使用pf的Reflexive ACL呢?
我正在寻找方法来监视networking上单个设备的互联网使用情况 – 传输的数据总量。 我使用FreeBSD 9.0-RELEASE和pf进行过滤和NAT。 我不知道如何去做这件事。 我目前正在使用Cacti来监视我的聚合Internet使用情况,并且可以将SNMP监视器挂接到某些设备,但不是networking上的所有设备都可以运行SNMP。 其他人如何使用FreeBSD(或者其他BSD)来监控他们networking中的单个设备?
简洁版本 服务器A(OpenBSD 4.7)连接到服务器B(Windows)。 服务器B的IP更改。 服务器A应该能够连接到服务器B旧的和新的IP。 我们无法在服务器B上configuration多个IP 长版 我们有一个OpenBSD服务器充当接入点(ssh + authpf规则),外部客户端连接,然后打开到另一个内部服务器上的服务的连接。 内部服务器IP将会改变。 为了让我们有更多的时间来重新configuration所有的客户端来使用新的IP地址,我想我们可以在OpenBSD框中实现相当于DNAT的function。 如果这是一个Linux机器,我可以使用下面的DNAT规则,这个规则可以让我从盒子本身连接到真实IP(10.68.32.215)或新IP上的远程服务。 $ sudo iptables -t nat -A OUTPUT -d 10.68.99.99 -j DNAT –to-dest 10.68.32.215 $ ssh-keyscan -t rsa 10.68.32.215 # 10.68.32.215 SSH-2.0-OpenSSH_4.3 10.68.32.215 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAy/GCd47aaRkBOu72v9Ysqk48Ngd6budStvdwnvMOTLiYoz6M81cTq7SskWctXx57cz6Ijnv1sbzcmDpFMUsN5vHk+6NxfrLzO0M1zh7UezY54FakgaavSdCiy15vGw/Lifntp5kMKkjgC5o42O+RUVw5iCpR8nsu/2/kR2smcVR1G3R8EunjCZWEptOCHz3Iup7FTMd4Pw/xmt+8u+5ZyHKu+uaLWQl6I12rzLiQJNyMLVdhba54FGiJDFUfcXtgM7cFli6xlrE3dnbboQE/7/cuj/N11QwTvHuU07NtrubefZE1VahWb146ph31blsW5NSiyFwL2I7rxFFoPQMbuQ== $ ssh-keyscan -t rsa 10.68.99.99 # 10.68.99.99 SSH-2.0-OpenSSH_4.3 10.68.99.99 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAy/GCd47aaRkBOu72v9Ysqk48Ngd6budStvdwnvMOTLiYoz6M81cTq7SskWctXx57cz6Ijnv1sbzcmDpFMUsN5vHk+6NxfrLzO0M1zh7UezY54FakgaavSdCiy15vGw/Lifntp5kMKkjgC5o42O+RUVw5iCpR8nsu/2/kR2smcVR1G3R8EunjCZWEptOCHz3Iup7FTMd4Pw/xmt+8u+5ZyHKu+uaLWQl6I12rzLiQJNyMLVdhba54FGiJDFUfcXtgM7cFli6xlrE3dnbboQE/7/cuj/N11QwTvHuU07NtrubefZE1VahWb146ph31blsW5NSiyFwL2I7rxFFoPQMbuQ== 我们的OpenBSD版本是4.7,但是我们可以根据需要进行升级。 如果这个DNAT不可能的话,我们可能会在防火墙上做一个NAT。 我能够在testing框中完成的最接近的是: pass out on em1 […]
我的目标是什么:知道员工在互联网上看什么(页面,多长时间等等;没有caching)。 我所做的:在openBSD上安装squid 问题:我看到整个stream量(tcpdump),但我不能将它redirect到鱿鱼 我如何连接它: [ internet ] | [ switch with port mirroring ] => [ squid server ] | [ LAN ] 我的鱿鱼服务器有两个网卡:sis0 IP地址10.0.0.100(pipe理连接)和rl0没有IP地址和promisc模式(没有桥;整个stream量去那个接口)。 我的pf.conf: pass # establish keep-state block in on ! lo0 proto tcp to port 6000:6010 pass in on rl0 proto tcp from any to any port {80 443 3128 8080} […]
我刚刚在PC Engines APU1D4上安装了pfSense,作为基于Soekris 5501 + OpenBSD的设置的替代品,我有一个PPPoE WANconfiguration。 pf规则,NAT和PPPoEconfiguration看起来和我的OpenBSD框一样,但是一些网站却无法加载,比如twitter.com。 我认为这可能是与广域网MTU,我试图改变这个1492年和1452年,但没有什么区别,我也跟着所有的build议在这里无济于事。 https://doc.pfsense.org/index.php/Unable_to_Access_Some_Websites 整个会话的数据包捕获在这里: https : //dl.dropboxusercontent.com/u/249827/packetcapture-twitter-wan.cap https://dl.dropboxusercontent.com/u/249827/packetcapture-twitter-lan.cap 任何想法可能会发生什么?
我在端口80上运行一个绑定到0.0.0.0的rails web应用服务器,如下所示: sudo rails s –port=80 –bind=0.0.0.0 我可以在我的私人地址http://192.168.0.13/访问它,通常我可以在回送地址http://127.0.0.1 / http://localhost 。 但是由于某些原因,回送地址并不指向这个专用地址。 我认为这个问题与我的机器上configuration的虚拟机有关,因为在安装虚拟机之后,这个问题就开始发生了。 stream浪的虚拟机设置(我没有configuration)运行第二个Web应用服务器,我可以在http://127.0.0.1访问。 但是,即使当我closures这个stream浪VM,我仍然无法访问上面提到的在回环地址这个rails web应用服务器。 什么是stream浪虚拟机做configuration到自己的回环? 如何configuration环回地址指向的私有地址? 这是我的ifconfig如果有帮助: lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384 options=3<RXCSUM,TXCSUM> inet6 ::1 prefixlen 128 inet 127.0.0.1 netmask 0xff000000 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 nd6 options=1<PERFORMNUD> gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280 stf0: flags=0<> mtu 1280 en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 ether 4c:8d:79:d7:a9:e4 inet6 […]
我正在设置一个环境,我有一台Linux服务器,一台OpenBSD路由器和一台Linux客户端,我希望能够限制客户端应该能够使用的带宽。 我一直在用“netcat”和“time”(使用时间来测量netcat传输的时间)执行这些testing,以及在尝试这些testing时发生了什么(使用TCP协议,队列由于某种原因不起作用与UDP)是队列是不完全的。 例如:设置10mbit的带宽限制时,客户端不能使用超过5Mbit,设置100mbit的限制时,客户端不能使用超过50mbit。 configuration看起来像(在例子中使用100mbit限制): #queue rules altq on { $int_if, $ext_if } cbq bandwidth 100Mb queue { def, low } queue def bandwidth 0Mb cbq(default) queue low bandwidth 100Mb cbq(default) #Passrules test pass out quick from $int_if to $ext_if queue low pass in quick from $ext_if to $int_if queue low pass out quick from $ext_if […]