bro clusters
play

Bro Clusters Bro Workshop 2011 NCSA, Urbana-Champaign, IL Bro - PowerPoint PPT Presentation

Bro Clusters Bro Workshop 2011 NCSA, Urbana-Champaign, IL Bro Workshop 2011 Thursday, November 17, 2011 Someone here is analyzing 7Gbps of mixed traffic with Bro. With everything turned on! Bro Workshop 2011 2 Thursday, November


  1. Bro Clusters Bro Workshop 2011 NCSA, Urbana-Champaign, IL Bro Workshop 2011 Thursday, November 17, 2011

  2. • Someone here is analyzing 7Gbps of mixed traffic with Bro. • With everything turned on! Bro Workshop 2011 2 Thursday, November 17, 2011

  3. Cluster Purpose • Bro is single threaded. • Difficult to adapt multithreading into code base as it is. • Conceptually Bro is very parallelizable but we aren ʼ t taking the bruteforce approach to adding multithreading. • This is a topic for a different time. Bro Workshop 2011 3 Thursday, November 17, 2011

  4. Cluster Background • Initially implemented as Bro scripts and all nodes needed to be started manually. • BroControl was originally called “Bro Cluster Shell” and contained all of the Bro script support for clusters but automated the tedium. • 2.0 introduces the cluster framework which is more abstraction of all previous work and ideas. Bro Workshop 2011 4 Thursday, November 17, 2011

  5. Cluster Layout • Set of Bro processes acting a single entity. • Split Bro functionality across node types. • Manager • Proxies • Workers Bro Workshop 2011 5 Thursday, November 17, 2011

  6. Manager • Receives logs • Handles notices Bro Workshop 2011 6 Thursday, November 17, 2011

  7. Proxy • Synchronizes limited state information across workers. • For example: active local IP addresses • Does not examine packets. Bro Workshop 2011 7 Thursday, November 17, 2011

  8. Worker • Sniffs traffic • Performs protocol analysis • Generally, most of the heavy lifting Bro Workshop 2011 8 Thursday, November 17, 2011

  9. Frontend • Not a Bro process! Bro Workshop 2011 9 Thursday, November 17, 2011

  10. Bidirectional Flow Load Balancing • Turn a large “pipe” into many bundles of sessions. • Most common balancing is 4- or 5-tuple • 4-tuple - SRC_IP+SRC_PORT+DST_IP+DST_PORT • 5-tuple - SRC_IP+SRC_PORT+DST_IP+DST_PORT+PROTO • Network based balancing. • Host base balancing. Bro Workshop 2011 10 Thursday, November 17, 2011

  11. Bro Workshop 2011 11 Thursday, November 17, 2011

  12. BroControl • Cluster layout specification. • Easy management and control of large numbers of processes on large numbers of physical hosts. Bro Workshop 2011 12 Thursday, November 17, 2011

  13. BroControl in “standalone” mode node.cfg [bro] type=standalone host=localhost interface=en1 Bro Workshop 2011 13 Thursday, November 17, 2011

  14. BroControl in “cluster” mode [manager] type=manager node.cfg host=192.168.1.72 [proxy-1] type=proxy host=192.168.1.72 [worker-1] type=worker host=192.168.1.72 interface=eth0 [worker-2] type=worker host=192.168.1.72 interface=eth1 Bro Workshop 2011 14 Thursday, November 17, 2011

  15. $ sudo /bro/bin/broctl Password: Welcome to BroControl 0.41-128 Type "help" for help. [BroControl] > Bro Workshop 2011 15 Thursday, November 17, 2011

  16. [BroControl] > check manager is ok. proxy-1 is ok. worker-1 is ok. worker-2 is ok. Bro Workshop 2011 16 Thursday, November 17, 2011

  17. [BroControl] > install removing old policies in /usr/local/bro/spool/policy/site ... done. removing old policies in /usr/local/bro/spool/policy/auto ... done. creating policy directories ... done. installing site policies ... done. generating cluster-layout.bro ... done. generating local-networks.bro ... done. generating broctl-config.bro ... done. updating nodes ... done. Bro Workshop 2011 17 Thursday, November 17, 2011

  18. [BroControl] > start starting manager ... starting proxy-1 ... starting worker-1 ... starting worker-2 ... Bro Workshop 2011 18 Thursday, November 17, 2011

  19. [BroControl] > ? BroControl Version 0.41-128 capstats <nodes> [secs] - report interface statistics (needs capstats) check <nodes> - check configuration before installing it cleanup [--all] <nodes> - delete working dirs on nodes (flushes state) config - print broctl configuration cron - perform jobs intended to run from cron cron enable|disable|? - enable/disable "cron" jobs df - print nodes' current disk usage diag <nodes> - output diagnostics for nodes exec <shell cmd> - execute shell command on all nodes exit - exit shell install - update broctl installation/configuration netstats - print nodes' current packet counters nodes - print node configuration print <id> <nodes> - print current values of script variable at nodes peerstatus <nodes> - print current status of nodes' remote connections process <trace> [Bro options] - runs Bro offline on trace file quit - exit shell restart [--clean] <nodes> - stop and then restart processing scripts [-p|-c] <nodes> - Lists the Bro scripts the nodes will be loading start <nodes> - start processing status <nodes> - summarize node status stop <nodes> - stop processing update <nodes> - update configuration of nodes on the fly top <nodes> - show Bro processes ala top Commands provided by plugins: ps.bro [<nodes>] - Shows Bro processes currently running on nodes' systems. Bro Workshop 2011 19 Thursday, November 17, 2011

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend