Skip to main content

Python library for generating FireHOL config

Project description

[![Build Status](https://travis-ci.org/uber/pyrehol.svg)](https://travis-ci.org/uber/pyrehol)

**pyrehol** is a python library for generating [FireHOL](http://firehol.org) config files. It's perfect if you want to combine the human-readable, reproductable, and reliable nature of FireHOL with some kind of automated cluster management system (for example, [clusto](http://clusto.org)) without having to write super-complicated Bash.

### Usage
```python
from pyrehol import Pyrehol
from somewhere_else import clusto


my_clusto_object = clusto.get_by_name(socket.gethostname())

p = Pyrehol()
with p.add_interface("public", "eth0") as i:
i.set_protection('strong')
for service in my_clusto_object.attr_values(key='firehol', subkey='allowed-services'):
i.add_server(service, 'accept')

with p.add_interface("private", "eth1") as i:
i.add_server('ssh', 'accept')

with open('/etc/firehol/firehol.conf', 'w') as f:
p.emit(f)
```


### License
This software is Copyright © 2014 Uber Technologies, Inc.

This software is licensed under the Expat (MIT) license. More information can be found in [LICENSE.txt]().


### FAQ

#### When is FireHOL 2.0 support coming?
Real soon now

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pyrehol, version 0.3
Filename, size File type Python version Upload date Hashes
Filename, size pyrehol-0.3.tar.gz (6.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page