Comments (7)
Sure, you can disable the internal CA and certificates, and deployment of external and ACME certificates should still occur. Set in inventory:
pki_internal: False
pki_authorities: []
It might not be everything that needs to be set, but I think that should do the trick. The result should be that the private key and certificate requests is still performed on the remote hosts (Debian, presumably) so ACME requests and overall PKI structure should work there. I'm not sure about pki-authority
not working on MacOS X in this case, so that needs to be tested. It could be modified to avoid problematic code if possible.
from ansible-pki.
Ok, I'll try those options and report back!
from ansible-pki.
Ah, I forgot. When you disable internal certificates, you will need to provide some external certificates beforehand, otherwise other roles will most definitely break - support for debops.pki
is still enabled in Ansible facts, but certificate files aren't there anymore. This is a bootstrapping issue which internal certificates and internal CA is trying to solve. If you want to disable that, well, there's nothing else the role could do besides generating self-signed certificates on the remote hosts themselves, which is kinda meh.
from ansible-pki.
Which roles would break?
from ansible-pki.
In the common playbook, I imagine that Postfix itself would start fine, but not sure if mail delivery will work. Otherwise, right now no other roles use certificates, but that will most likely change - for example I want to enable encrypted log distribution in debops.rsyslog
at some point.
As for other plays and roles, that depends. If it's a service that can be published and accessed on the network, it most likely has support for debops.pki
certificates.
In that case I would probably split the deployment into three phases:
- create the required secret directories using
debops service/pki --tags role::pki:secret
- put the private keys and certificates in the created directories in
secret/
- run
debops
command normally as needed
This way, the debops.pki
role should get the provided private keys and certificates immediately, and that will most likely make other roles work correctly.
from ansible-pki.
Changing the two options seems to have done the trick. I don't seem to have found any issues with any of the roles so far. I have still a few more tests to run.
from ansible-pki.
This has been working really well so far. Let's Encrypt works fine as well. @drybjed's addition of self-signed certificates also helped a lot. I'm going to close this in favor of specific issues (like #62) as they arise.
from ansible-pki.
Related Issues (20)
- Role breaks without warning (and continues on "normally") if SAN misconfigured HOT 9
- Fail: No module named debops HOT 12
- [Security] debops.pki does not validate CSRs allowing certificate mis-issuance by compromised remote host
- tiny-acme suddenly causes errors HOT 20
- First PKI run fails to create ACME certificates HOT 4
- Changing config parameters has not effect HOT 2
- Changing pki_acme_ca does not reload the nginx server
- Improve docs visibility of `name_constraints` variable
- Remove the pain points when managing ACME certificates HOT 12
- Replaced external certificates are not copied to host HOT 1
- Failure on task: Sign certificate requests for current hosts HOT 3
- ./lib/pki-authority: line 164: declare: -g: invalid option error HOT 3
- debops.pki fails when 1 of the hosts is unreachable HOT 1
- Errors during creation of new LetsEncrypt account via acme. HOT 6
- Error every second pki run HOT 9
- KeyError: 'newAccount' when attempting to generate ACME certificate HOT 5
- Role debops.pki/env fails to resolve after Ansible 2.4 HOT 10
- No wildcard/domain in the 'domain' realm certificates HOT 2
- pki role generates invalid certificate with "permitted subtree violation"
- ing
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ansible-pki.