-
Notifications
You must be signed in to change notification settings - Fork 570
feat: Add support for custom certificates #1531
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
base: main
Are you sure you want to change the base?
Conversation
Hi @acidtib, Looks neat,
|
try adding this to your Gemfile and gem "kamal", "~> 2.5", github: "acidtib/kamal", branch: "feat/custom-ssl" and then try bundle exec kamal deploy |
@rajraj Have you tested it? |
@sobanakram hi yes, i have. I have my certificate and private key in
make sure to gitignore and dockerignore these files.
I have Cloudflare as WAF and all traffic is proxied via Cloudflare. |
@sobanakram this feature is currently deployed on a few production servers, serving up custom cloudflare origin certs, if you need help setting it up feel free to ping me, im always available on the Kamal Discord server @rajraj thank you for testing it!!
|
@acidtib thanks for the PR. It was dead simple to setup once I figured out how to load the secrets. We have deployed to prod as well using cloudflare origin certificates. |
I've also tested this in production, it works super well. Easy to configure and now I don't need to terminate my SSL with an Nginx instance in front of my Kamal deployments. |
I've also just deployed this into production and is working. |
This PR adds support for custom SSL certificates in the proxy configuration, building upon the foundation laid by @kpumuk in PR #969. Users can now securely provide their own SSL certificates and private keys through secrets using the following configuration format:
Background
This enhancement addresses scenarios where Let's Encrypt automated certificate management isn't feasible or when users already possess SSL certificates from other Certificate Authorities. The implementation maintains compatibility with existing SSL options:
The feature allows for a more flexible SSL setup while maintaining security best practices by using secrets for certificate management.
Site documentation PR: basecamp/kamal-site#174