Slashdot Mirror


Firewall Failover With pfsync And CARP

Daniel Hartmeier writes "OpenBSD developer Ryan McBride explains the new firewall redundancy features in the upcoming OpenBSD 3.5 release in his article Firewall Failover with pfsync and CARP. CARP (Common Address Redundancy Protocol) is a free alternative to the patent-encumbered VRRP, responsible for electing masters in a firewall cluster, while pfsync syncronizes packet filter state information among nodes. The combination allows to replace single-point-of-failure firewalls with clusters of two (or more) nodes, which continue to filter ongoing and new connections when nodes fail. Additional features like arpbalance allow one to share a single IP address for multiple servers, transparently balancing load among them, and adapting to servers failing. Pre-order for OpenBSD 3.5 has started, CDs will ship May 1st."

15 of 60 comments (clear)

  1. HSRP by bolix · · Score: 3, Interesting

    I love sniffing the Cisco equivalent to CARP. Lots of HSRP calls to 224.0.0.224 with no security built in. A simple ARP poison will fuck the switch. More advanced attack methods can be found c/o Phenolit

  2. Re:Mailto link? by dhartmei · · Score: 5, Insightful
    @openbsd.org addresses are already readily available for harvesters through cvsweb, mailing list archives and usenet gates, putting one in a /. posting couldn't make things any worse.

    The upside is that after a certain amount of spam received, people get really good at filtering it. That's where the motivation behind some of the anti-spam features in OpenBSD comes from, I guess :)

  3. Re:I wonder... by dhartmei · · Score: 5, Informative
    Filtering ordinary traffic (not extreme test-cases of minimal packets, average number of packets/connection) statefully at 100Mbps doesn't require much hardware. Even little Soekris boxes (embedded 486 133MHz) can do that.

    For Gbps, the limiting factor is the NIC and its driver. Some cards/drivers are reported to reach more than 70% of the maximum throughput. The reason they don't (yet) go further is not packet filtering, though.

    If you want specific names/models, the mailing list archives contain the reports.

  4. Re:I wonder... by hdw · · Score: 5, Informative

    I'm running an OpenBSD 3.4 firewall on a PII-400 with a 100Mb/s Internet feed.

    And I know that I've reached over 40Mb/s without any sign of problem with the firewall.

    So unless you're running lots of IpSec stuff or have a high rate of connects I don't think the firewall (or OpenBSD) will be the problem.

    I think the selecting a good NIC is more important. // hdw

    --
    Executive Pope (small) Kallisti Engineering
  5. Re:That's really cool by hdw · · Score: 3, Informative

    Yup, we have something like that too.

    Except that our 50.000USD firewall solution fails to handle state sync (they've got problems enough with rules sync) and the the failover works so bad that the dudes that run it have failed over to manual fail over :)

    I've been _soo_ tempted to suggest to replace the all the gunk with OpenBSD, since it has all the stuff we need, and it works ...

    And it is a little bit cheaper. // hdw

    --
    Executive Pope (small) Kallisti Engineering
  6. Re:This is awesome by dhartmei · · Score: 5, Informative
    What CARP/pfsync does is transparent balancing on IP level. Each client connection is redirected to an arbitrary available server. This works for applications where each server can independantly handle a client request, like serving stateless HTTP or DNS from multiple servers.

    For SQL, clustering is much more involved. One client might insert data that must propagate to the other server, or locks across all servers must be obtained, etc. This cannot be done transparently on IP level, the servers themselves must support it.

    Search for replication, clustering or redundancy together with postgresql, you'll find erserver etc. Except for very special cases (like read-only databases), this way beyond IP level packet filtering ;)

  7. Sad. by MisterP · · Score: 4, Insightful

    It's kinda of sad that something this cool gets so little discussion on a site like Slashdot. I guess it will be news when CARP gets ported to linux and iptables gets ip state sync'ing across hosts.

    1. Re:Sad. by hdw · · Score: 4, Informative

      Userland CARP is already ported to Linux.

      http://www.ucarp.org

      / hdw

      --
      Executive Pope (small) Kallisti Engineering
  8. Re:I wonder... by Homology · · Score: 4, Insightful
    I wonder how a "little" p2 can filter 40MB/s of packets. when it seems like the same p2 will bog down in other stuff (im not talking about a gui)

    can you explain this?

    The grandparent wrote 40Mb/s, like in 40 mega bit, and a PII can handle this. However, you should have a good NIC and not one of those pisspor Realtek that offloads the work to the CPU.

  9. Re:I'm a firewall admin amongst other things.. by harikiri · · Score: 4, Informative
    I'm very aware that I could put together my own 'deployment' script with a combination of ssh/scp and rsync.

    If you need a GUI and FW admin is your day job, I have to wonder why you're bothering with FW admin.

    I do not need a GUI. My colleagues do not need one either (we previously used PIX... shudder). But when you start dealing with a large number of firewalls (we have over 25 deployed), and not simply firewall rules, but NAT, PAT, authentication and VPN's - having a GUI frontend that ties all that information up together and provides it in an easy to manage way, is a lot better than grepping and trawling through long configuration files to make additions or changes.

    Yes any capable firewall admin should be able to implement rules once they read documentation for ipfilter/iptables/pf/ipfw/etc - but they shouldn't necessarily have to. The people I work with aren't stupid, they just don't want to have to work at the command-line across multiple systems to implement a single rule.

    --
    Man watching 6 MSCE's around a sun box, looks alot like the opening scene's of 2001:space odyssey...
  10. CARP also works on Linux, NetBSD and OpenBSD 3.5 by chrysalis · · Score: 3, Informative

    Try UCARP a portable userland implementation.

    --
    {{.sig}}
  11. CARP/pf song for 3.5 Release by RupertJ · · Score: 5, Interesting

    In keeping with OpenBSD's promo songs, the 3.5 release features a Monty Python-style sketch and song about CARP/pf and VRRP etc. Very funny stuff indeed. Lyrics and links to download the songs in MP3/OGG format at http://www.openbsd.org/lyrics.html

  12. Conterpoint: Cisco PIX by ^BR · · Score: 3, Informative

    Cisco PIXes are configured the old way thru SSH (ok, there's a Web interface, never heard of anyone using it) and they sell pretty well. Cisco do have a (laughable) management solution that includes a GUI but almost nobody use it as it plain sucks (simply installing it is a nightmare, plen,ty of dependencies...). The nice thing is that it provides a nice market for third party solutions to do that job...

    So having a GUI is not a prerequisite for enterprise acceptance. Even if being Cisco sure helps...

  13. Re:I'm a firewall admin amongst other things.. by sirket · · Score: 4, Insightful

    There is absolutely no benefit to a GUI at all

    This is a idotic comment. I've been a firewall admin for years. I admin CheckPoint, PIX, NetScreen, ipfw, ipf, and pf firewalls.

    Have you ever tried to configure a fully meshed VPN topology between 30 sites by hand? Are you really going to sit there and write 900 rules by hand and expect to do it without making a mistake?

    What about defining a group of objects on one firewall (say a cluster of web servers) and then going to implement a rule on a different firewall that uses that web server group? With a central GUI, you can define the object once and not worry about changing it in 5 places or making a mistake when you copy it over to another firewall. (Yes this can be done with scripts but if you are going to write a whole management interface, why not stick a GUI on top of it to make browsing rules easier?)

    What about when you need to print out the rule sets for a compliance officer or your CEO?

    What about when you have have 25 firewalls and you forgot to backup the rule set on a firewall that just died. Wouldn't it be nice to have a management box with all the rule sets stored locally?

    There are about 50 good reasons to have a GUI and very few reasons not to have one. As long as you can configure the boxes from the command line and the GUI doesn't generate gibberish rules, then it is an excellent addition to a great firewall package.

    -sirket

  14. Interview with Ryan McBride by dhartmei · · Score: 3, Informative

    Jeremy Andrews from kerneltrap.org has just published an Interview with Ryan McBride, which makes for an excellent read on CARP and pfsync.