Security Model

Requirements and recommendations for operating a secure Consul deployment may vary drastically depending on your intended workloads, operating system, and environment. You can find detailed information about the various personas, recommendations, requirements, and threats here.

The gossip protocol is powered by Serf, which uses a symmetric key, or shared secret, cryptosystem. There are more details on the security of Serf here. For details on how to enable Serf’s gossip encryption in Consul, see the encryption doc here.

Consul provides an optional Access Control List (ACL) system which can be used to control access to data and APIs.

This means Consul communication is protected against eavesdropping, tampering, and spoofing. This makes it possible to run Consul over untrusted networks such as EC2 and other shared hosting providers.

The Consul agent supports encrypting all of its network traffic. The exact method of encryption is described on the encryption security page. There are two separate encryption systems, one for gossip traffic and one for HTTP + RPC.