Am 19.01.2009 um 03:14 schrieb Paul Johnson: > Yeah, I read that documentation, but this still seems not so clear > to me.
I thought someone using gentoo would have a little more insight in ssl certificate matters, but anyway, here it goes :-) > Here is my situation: > I installed puppet on several hosts and signed certificates for them > on master with puppetca some time ago. Recently I decided to rewrite > my manifests and deny all servers to retrieve configs from master > for that time. Why not just shut down the master, or shut down all the clients, or use environments for a 2- or 3-tiered release process? Trying to revoke certificates just to disable all hosts for a limited period of time is not what the certificates were designed for. > So I did puppetca --clean --all. This deleted all certificates from > master as I wanted, but hosts are still fetching configs and I can't > stop this now. I can't revoke them as well because puppetca says > there is no certificate for any host on master. I don't think --clean --all deleted the certificates from the master, if I understood you correctly, you deleted them by hand? I would urge you to let puppetca manage the certificates, it should have switches to handle 99,9% of all conceivable situations, I think meddling "by hand" with the certificates should only be done if you understand why you can't do this meddling with puppetca. Anyway, you won't be able to revoke the certificates if they are not present any more on the server (basic ssl). > Probably I can generate the certificates on master for all the hosts > and then revoke them, but this solution looks not right to me (and > I'm not sure this will work ok), is there any more proper way to do > this? If no, how can I let the hosts to continue to retrieve configs > after revoking certificates from them? I'm quite sure you'll be getting different certificates, so that won't be any good. If you really want to stop the clients from checking with the server at the ssl level, you could either erase the certificates on the clients, or make the clients upload their certificates to the server so that the server can revoke them, but you'll have to do that by hand, and you'll have to remove the certificates on the clients if you want them to check in again with the server, as the "old" certificates will have been revoked. All in all: the certification mechanism wasn't designed to "stop the clients from checking in on the server while I meddle with the recipes". To do that, you should use environments, check the wiki for more info on that, but basically, you can have many sets of recipes on the server (unstable/stable, or testing/production, or whatever you want to call them), and define on the client which set they'll get, and define the "default" environment on the server. Felix Schäfer --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en -~----------~----~----~----~------~----~------~--~---