Commit message (Collapse) | Author | Age | Files | |
---|---|---|---|---|
* | Print error messages only once. | Guilhem Moulin | 2021-02-22 | 1 |
| | ||||
* | space damage | Guilhem Moulin | 2021-02-22 | 1 |
| | ||||
* | client: Print Terms of Service URL for 'account' command. | Guilhem Moulin | 2021-02-22 | 2 |
| | ||||
* | logfile: treat empty values as unset. | Guilhem Moulin | 2021-02-22 | 1 |
| | ||||
* | Add 'logfile' to lacme-account.conf. | Guilhem Moulin | 2021-02-22 | 1 |
| | ||||
* | lacme-accountd(1): new setting 'keyid'. | Guilhem Moulin | 2021-02-22 | 6 |
| | | | | | This saves a round trip and provides a safeguard against malicious clients. | |||
* | accountd: Improve log message for incoming requests. | Guilhem Moulin | 2021-02-21 | 3 |
| | ||||
* | accountd: Pass JWA and JWK thumbprint via extended greeting data. | Guilhem Moulin | 2021-02-21 | 3 |
| | | | | | | | | | | | | | | | Passing the JWA to the ACME client is required if we want to support account keys other than RSA. As of 0.7 both lacme-accountd(1) and lacme(8) hardcode “RS256” (SHA256withRSA per RFC 7518 sec. A.1). Passing the JWK thumbprint is handy as it gives more flexibility if RFC 8555 sec. 8.1 were to be updated with another digest algorithm (it's currently hardcoded to SHA-256). A single lacme-account(1) instance might be used to sign requests from many clients, and it's easier to upgrade a single ‘lacme-accountd’ than many ‘lacme’. Moreover, in some restricted environments lacme-accountd might hide the JWK from the client to prevent ‘newAccount’ requests (such as contact updates); passing its thumbprint is enough for ‘newOrder’ requests. | |||
* | Add IPC tests with an old lacme(8) resp. lacme-accountd(1). | Guilhem Moulin | 2021-02-21 | 2 |
| | ||||
* | wording | Guilhem Moulin | 2021-02-21 | 5 |
| | ||||
* | wording | Guilhem Moulin | 2021-02-21 | 2 |
| | ||||
* | accountd: Fix prototype. | Guilhem Moulin | 2021-02-21 | 1 |
| | ||||
* | test suite: Don't try to show stderr if it's empty. | Guilhem Moulin | 2021-02-21 | 1 |
| | ||||
* | test suite: Indicate which tests have passed. | Guilhem Moulin | 2021-02-21 | 1 |
| | ||||
* | Make the ACME API server URL configurable at build time. | Guilhem Moulin | 2021-02-21 | 5 |
| | ||||
* | lacme-accountd: new setting 'logfile' to log signature requests. | Guilhem Moulin | 2021-02-21 | 8 |
| | | | | Prefixed with a timestamp. | |||
* | lacme-accountd(1): base64url-decode incoming signature requests. | Guilhem Moulin | 2021-02-21 | 2 |
| | | | | Before printing them to the standard error. | |||
* | Documentation: Wrap commands in `…`. | Guilhem Moulin | 2021-02-20 | 1 |
| | ||||
* | Document `lacme-accountd --stdio`. | Guilhem Moulin | 2021-02-20 | 4 |
| | | | | | It's an internal flag, but can be useful for authorized_keys(5) restrictions. | |||
* | Add %-specifiers support. | Guilhem Moulin | 2021-02-20 | 11 |
| | | | | | | | | | | | | | | | | lacme(8): for --config=, --socket=, --config-certs= (and ‘socket’/ ‘config-certs’/‘challenge-directory’ configuration options *before* privilege drop; and for the [accountd] section ‘command’/‘config’ configuration options *after* privilege drop). lacme-accountd(1): for --config=, --socket= and --privkey= (and ‘socket’/‘privkey’ configuration options). This also changes the default configuration file location. lacme(8) and lacme-accountd(1) now respectively use /etc/lacme/lacme.conf resp. /etc/lacme/lacme-accountd.conf when running as root, and $XDG_CONFIG_HOME/lacme/lacme.conf resp. $XDG_CONFIG_HOME/lacme/lacme-accountd.conf when running as a normal user. There is no fallback to /etc anymore. | |||
* | Wording: s/option/setting/. | Guilhem Moulin | 2021-02-20 | 4 |
| | ||||
* | wibble | Guilhem Moulin | 2021-02-20 | 1 |
| | ||||
* | typofix | Guilhem Moulin | 2021-02-20 | 1 |
| | ||||
* | Remove dependency on List::Util (core module). | Guilhem Moulin | 2021-02-20 | 3 |
| | ||||
* | Use real UID not effective UID in environment sanitation. | Guilhem Moulin | 2021-02-20 | 1 |
| | | | | Not that it make a difference since we don't run suid. | |||
* | Symlink $(sysconfdir)/apache2/conf-available/lacme.conf → ↵ | Guilhem Moulin | 2021-02-20 | 2 |
| | | | | | | | ../../lacme/apache2.conf. This is useful for enabling the snippet with `a2enconf lacme`, cf. https://bugs.debian.org/955859 . | |||
* | Makefile wibble | Guilhem Moulin | 2021-02-20 | 1 |
| | ||||
* | Document spawning a remote lacme-accountd(1) instance. | Guilhem Moulin | 2021-02-20 | 3 |
| | | | | And add a test case for this. | |||
* | lacme-accountd: Don't error out when the default configuration file is missing. | Guilhem Moulin | 2021-02-20 | 2 |
| | | | | | Instead, treat it as an empty file. This makes it possible to use lacme-accountd(1) without configuration file under ~/.config/lacme. | |||
* | Add tests for OpenSSL- and GnuPG-encrypted account keys. | Guilhem Moulin | 2021-02-20 | 3 |
| | | | | These tests are not interactive! | |||
* | lacme: Preserve $GPG_TTY when spawning the accountd. | Guilhem Moulin | 2021-02-20 | 1 |
| | | | | This is needed for gpg-encrypted privkeys. | |||
* | Deprecate setting 'privkey' in [accountd] section of the lacme(8) ↵ | Guilhem Moulin | 2021-02-20 | 5 |
| | | | | | | | configuration file. One need to use the lacme-accountd(1) configuration file for that instead. | |||
* | lacme(8)'s 'config' option in the [accountd] section no longer have a ↵ | Guilhem Moulin | 2021-02-20 | 4 |
| | | | | | | | | default value. The previous default, namely /etc/lacme/lacme-accountd.conf, is still honored when there is the user running lacme doesn't have a ~/.config/lacme/lacme-account.conf configuration file. | |||
* | Add test suite against Let's Encrypt's staging environment. | Guilhem Moulin | 2021-02-20 | 15 |
| | | | | https://letsencrypt.org/docs/staging-environment/ | |||
* | Update staging hierarchy. | Guilhem Moulin | 2021-02-20 | 9 |
| | | | | Cf. https://community.letsencrypt.org/t/staging-hierarchy-new-root-cert/145677 . | |||
* | Use File::Basename::dirname(). | Guilhem Moulin | 2021-02-20 | 4 |
| | | | | | | To correctly extract the parent directory of the socket path. The previous returned an empty string when the socket path didn't contain ‘/’. | |||
* | accountd: replace internal option --conn-fd=FD with flag --stdio. | Guilhem Moulin | 2021-02-18 | 4 |
| | | | | | Using stdin/stdout makes it possible to tunnel the accountd connection through ssh. | |||
* | Split client/webserver/accountd commands on whitespace. | Guilhem Moulin | 2021-02-18 | 4 |
| | | | | This doesn't change the default behavior. | |||
* | Set the DEBUG environment variable to 0/1 instead of ""/1. | Guilhem Moulin | 2021-02-18 | 2 |
| | ||||
* | Use 'acme-challenge.XXXXXXXXXX' as template for the temporary ACME challenge ↵ | Guilhem Moulin | 2021-02-18 | 2 |
| | | | | directory. | |||
* | webserver: reopen stdin from /dev/null. | Guilhem Moulin | 2021-02-18 | 2 |
| | | | | | Having both lacme(8) and its webserver component reading from the same standard input could yield starvation. | |||
* | Split Nginx and Apapche2 static configuration snippets into seperate files. | Guilhem Moulin | 2021-02-18 | 5 |
| | | | | | | That way users prefering that over reverse-proxying can just source/enable the relevant files without having to uncomment anything. | |||
* | Sanitize environment when spawning children. | Guilhem Moulin | 2021-02-18 | 2 |
| | | | | | Set $HOME, $USER, $SHELL, $PATH, $LOGNAME to appropriate values (and perserve $TERM), which matches the login(1) behavior. | |||
* | Consolidate error messages for consistency. | Guilhem Moulin | 2021-02-18 | 4 |
| | ||||
* | client: avoid "Use of uninitialized value in pattern match (m//)" perl warnings. | Guilhem Moulin | 2021-02-18 | 2 |
| | | | | When the accountd socket can't be reached. | |||
* | Makefile: set executable bit for $(bindir)/lacme-accountd and $(sbindir)/lacme. | Guilhem Moulin | 2021-02-18 | 2 |
| | ||||
* | Don't load configuration files from ./ by default. | Guilhem Moulin | 2021-02-18 | 5 |
| | | | | | | | This is a breaking change: lacme(8) resp. lacme-accountd(1) no longer consider ./lacme.conf resp. ./lacme-accountd.conf as default location for the configuration file. Doing so has security implications when running these program from insecure directories. | |||
* | client: use "lacme-client/$VERSION" as User-Agent header. | Guilhem Moulin | 2021-02-18 | 3 |
| | ||||
* | typofix | Guilhem Moulin | 2021-02-18 | 1 |
| | ||||
* | Add certs-staging/fake*.pem for tests using the staging environment. | Guilhem Moulin | 2021-02-18 | 3 |
| | | | | See https://letsencrypt.org/docs/staging-environment/ . |