# README
Caddy PFX Certificates
This repository contains a CaddyServer module for loading PFX certificates on-demand.
Installation and Configuration
Using Docker
- Pull the Docker image from the GitHub Container Registry:
docker pull ghcr.io/quix-labs/caddy-pfx-certificates:latest
Using xcaddy
-
Before building the module, ensure you have
xcaddy
installed on your system. You can install it using the following command:go install github.com/caddyserver/xcaddy/cmd/xcaddy@latest
-
To build this module into Caddy, run the following command:
CGO_ENABLED=1 xcaddy build --with github.com/quix-labs/caddy-pfx-certificates
This command compiles Caddy with the image processing module included.
Using prebuilt assets
-
You can also install the tool using release assets.
Download the appropriate package from the Releases page, and then follow the instructions provided for your specific platform.
Usage
Using Docker
docker run -p 80:80 -p 443:443 \
-v $PWD/Caddyfile:/etc/caddy/Caddyfile -d \
-v $PWD/test.pfx:/srv/test.pfx -d \
ghcr.io/quix-labs/caddy-pfx-certificates:latest
Your can see more information in the official docker documentation for caddy
Using xcaddy build / prebuilt assets
/path/to/your/caddy run --config /etc/caddy/Caddyfile
Your can see more information in the official documentation for caddy
Example Caddyfile
https://your-domain {
tls {
get_certificate pfx {
path test.pfx
password password
# If set to false, only the certificates from the .pfx file will be sent.
# If set to true (default), all the intermediate certificates will be downloaded, including those up to the root CA.
fetch_full_chain true
}
# Or shortcut -> get_certificate pfx test.pfx password
}
encode zstd gzip
root * /var/www/html
file_server
}
Development
To contribute to the development of this module, follow these steps:
-
Make sure you have Go installed on your system.
-
Clone this repository to your local machine:
git clone https://github.com/quix-labs/caddy-pfx-certificates.git
-
Navigate to the project directory:
-
Install
xcaddy
if you haven't already:go install github.com/caddyserver/xcaddy/cmd/xcaddy@latest
-
Make your changes in the source code.
-
Run tests to ensure your changes haven't introduced any issues:
make test
-
If tests pass, you can build the project:
make build
-
To run the project in development mode, use the following command:
make run
-
Once you're satisfied with your changes, create a pull request to the main branch of the repository for review.
Credits
License
The MIT License (MIT). Please see License File for more information.