-
Notifications
You must be signed in to change notification settings - Fork 59
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
Add example wrapper script for multi-cert/multi-account management. #37
Comments
One of the problems: currently plugin name is equivalent to the output path, so we would have to introduce There are probably a ton of other problems around such solution. On the other hand, why do you even need to specify output path? In other words, does the current design stop you from achieving a particular setup? Unless you can specify the full path to |
The problem is that, usually, all my certs are in /etc/ssl/certs, which already has proper permissions. simp_le outputs the same file every time, which means files will get overwritten. It's not a huge hassle, it would just be easier if it was a bit more flexible. |
@kuba The filename == contents type concept is simple, but not very user friendly. It is currently also not possible to store keys and certificates in separate directories, except by creating symlinks. The @skorokithakis the issue of overwriting unchanged files (data that is not "dirty") is a different issue and I agree that it is not nice (different timestamp). Can you open a new issue for that? |
@Lekensteyn My issue is not really on overwriting files, just that I can't store multiple certs in the same dir because they will use the same filename, so I can't differentiate. I can open an issue for overwriting, but I haven't seen that happen. |
This would make my life easier as well. |
The only reason I don't like the symlink or absolute path reference is that you have to put the key in the same directory as the cert. Not being able to specify filenames isn't great but it's a more minor issue by how inconvenient simp_le is to use with multiple certificates at once. |
Cert location management is better left unhandled by a single purpose software and left at the devises of the sysadmin-fu of the deployment target. What this project could do is to document a sane baseline practice to adhere to. Below is a rough outline of what I'm doing in a cronjob sans error handling and system specific aspects (for readability). #!/bin/bash
cd /root/ssltemp
/root/simp_le/venv/bin/simp_le \
--email [email protected] \
--default_root /var/www/letsencrypt \
-f account_key.json \
-f fullchain.pem \
-f cert.pem \
-f chain.pem \
-f key.pem \
-d example.com \
-d www.example.com
mv key.pem privkey.pem
mv *pem /etc/letsencrypt/live/example.com/
simp_le \
--default_root /var/www/letsencrypt \
--email [email protected] \
-f account_key.json \
-f cert.pem \
-f chain.pem \
-f fullchain.pem \
-f key.pem \
-d example.org \
-d www.example.org \
-d mail.example.org
mv key.pem privkey.pem
mv *pem /etc/letsencrypt/live/example.org/
systemctl reload nginx postfix
systemctl restart dovecot
# EOF For authentication with Nginx, I have the following:
Do note that HSTS can equate to painting yourself into a corner - you will have to serve over HTTPS.
|
While this is completely off-topic for this PR, @Rotonen, unfortunately, there are a couple of problems with your setup:
Nevertheless, you do have a point. I should work on canonical examples and put them down in https://github.com/kuba/simp_le/wiki/Examples. |
Yes, as stated, the script excerpt is sans error handling and system specific aspects. It should not end up in anyone's production setup verbatim, it is provided purely for reference use only. A generalized solution would on top of exit code handling also have to discover which services use the cert (take that as a parametre, for instance) and which init system is used by the system in question. The key renaming is in there to conform to the naming scheme the Letsencrypt client has out of the box (to ease with transition from that tool to this tool). I admit this is not obvious from the example. I'm always renewing the certs as the script is in cron to be run every second month of the year (as suggested by Letsencrypt). This is not transparently obvious either, yes, but I explicitly want to renew the certs every time this script gets run and it is the admin's responsibility to behave and adhere to the renews over time limits of the CA. As for the relevancy for the pull request - if one is to take my view on how to handle this, providing such skeletal sketching for documentation is at the core of the issue. This might not be the correct forum for that due to the verbosity imposed on this thread, though. |
I'd also like some more flexibility, such as being able to specify a path that's already mapped as The reason for this is that I'm mostly running Python applications which don't have a true "web root". While e.g. |
@ThiefMaster that's a bit different problem, and should be opened as a new issue: #53 |
I want to keep this software as simple as possible. Flexibility of specifying your own paths is achievable by creating a wrapper script. I would be potentially interested in adding such a wrapper to |
Why is it a directive that output paths must not be specified? It's inconvenient, at the very least I would like to be able to output the files with their own names. I don't understand why we can't assume that the user knows what they're doing.
The text was updated successfully, but these errors were encountered: