Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

All internal Vespa communication protocols should run over TLS only #7219

Closed
vekterli opened this issue Oct 5, 2018 · 1 comment
Closed
Assignees
Milestone

Comments

@vekterli
Copy link
Member

vekterli commented Oct 5, 2018

High level goal summary: all communication between internal Vespa processes shall be done exclusively over TLS, with mutual peer certificate verification being mandatory.

This is a tracker issue for the work that is planned, in progress and already completed.

Current completed features:

  • TLS may be enabled for all backend RPC protocols except for indexed search (coming as part of ongoing query dispatch rewrite). This currently in practice requires a distinct CA for the application (and any trusted peers it may communicate with), as no CN/SAN matching is done on the client/server certificates, only that they are signed by the shared CA.
  • It's possible to do a rolling upgrade from an insecure setup to a secure setup by explicitly configuring servers to accept both plaintext and TLS clients in a transition period.

In progress:

  • Certificate verification based on per-node configurable CN/SAN matching.

Once the feature is considered complete we'll update the documentation and tutorials etc to help ensure that Vespa is set up with TLS by default when doing things the Recommended Way(tm).

@geirst geirst added this to In Progress in Search and content Oct 10, 2018
@frodelu frodelu added this to the soon milestone Oct 17, 2018
@geirst geirst moved this from In Progress to Soon: Large in Search and content Jan 9, 2019
@vekterli vekterli moved this from Soon: Large to Done in Search and content Aug 30, 2021
@vekterli
Copy link
Member Author

Open source Vespa now officially supports mTLS across all internal services and endpoints. If you use Vespa Cloud this is—and always has been—enabled without any setup required.

See our mTLS blogpost for an introduction and our mTLS reference documentation for setup instructions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

No branches or pull requests

2 participants