Skip to content
/ capirca Public
forked from 418sec/capirca

Multi-platform ACL generation system

License

Notifications You must be signed in to change notification settings

B3EF/capirca

 
 

Repository files navigation

BuildStatus

Capirca

Capirca is a tool designed to utilize common definitions of networks, services and high-level policy files to facilitate the development and manipulation of network access control lists (ACLs) for various platforms. It was developed by Google for internal use, and is now open source.

To install the dev environment in machines that support bash files, run the dev-install script provided.

$ dev-install

Configuring Capirca with YAML files

Capirca's aclgen can be configured with one or more yaml files. These files will be prioritized from left to right, meaning any duplicate configurations will be overriden, not merged.

Command line flags can still be used when running aclgen with configuration files, and are treated as higher priority than configuration files.

The default capirca configurations for aclgen can be expressed in a YAML file as follows:

base_directory: ./policies
definitions_directory: ./def
output_directory: ./
optimize: false
recursive: true
debug: false
verbose: false
ignore_directories:
  - DEPRECATED
  - def
max_renderers: 10
shade_check: true
exp_info: 2

Community

Capirca has a channel on the NetworkToCode slack.

Running with Docker

If your usecase is to just use the CLI and you don't want to go through the process of installing Capirca, you can use the dockerized version. Just pipe your CLI arguments onto the container instead and mount your working directory to the /data directory of the container!

Example:

$ docker run -v "${PWD}:/data" docker.pkg.github.com/google/capirca/capirca:latest

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.7%
  • Other 0.3%