[PR #4218] feat: add support for selecting SSL key type (ECDSA/RSA) #3843

Open
opened 2026-02-26 08:32:09 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/NginxProxyManager/nginx-proxy-manager/pull/4218
Author: @mnr73
Created: 12/9/2024
Status: 🔄 Open

Base: developHead: develop


📝 Commits (10+)

  • e6ec74c feat: add support for selecting SSL key type (ECDSA/RSA)
  • 8e9e033 fix indent: tab to space
  • 891877a fix ssl key-type certificate
  • 2723de2 add ssl_ecdh_curve for more compatibility
  • 5e7b69c add update cipher suites
  • 95a94a4 add elliptic-curve
  • 111fc28 Revert "add elliptic-curve"
  • 04b3608 remove elliptic-curve from certbot command options
  • cb79556 add ssl_key_type in swagger
  • eb5c51a add support more cipher suites

📊 Changes

23 files changed (+239 additions, -14 deletions)

View changed files

📝 backend/internal/certificate.js (+7 -1)
📝 backend/internal/host.js (+25 -1)
📝 backend/internal/proxy-host.js (+33 -0)
backend/migrations/20241209062244_ssl_key_type.js (+51 -0)
backend/migrations/20241221201400_default_server.js (+40 -0)
📝 backend/models/proxy_host.js (+1 -0)
📝 backend/schema/components/certificate-object.json (+5 -0)
📝 backend/schema/components/proxy-host-object.json (+10 -0)
📝 backend/schema/paths/nginx/proxy-hosts/hostID/put.json (+6 -0)
📝 backend/schema/paths/nginx/proxy-hosts/post.json (+6 -0)
📝 backend/templates/_listen.conf (+4 -4)
📝 docker/Dockerfile (+3 -1)
📝 docker/dev/Dockerfile (+4 -1)
📝 docker/dev/letsencrypt.ini (+0 -2)
📝 docker/rootfs/etc/letsencrypt.ini (+0 -2)
📝 docker/rootfs/etc/nginx/conf.d/include/ssl-ciphers.conf (+3 -1)
docker/start-container (+13 -0)
📝 frontend/js/app/nginx/proxy/form.ejs (+19 -1)
📝 frontend/js/app/nginx/proxy/form.js (+1 -0)
📝 frontend/js/i18n/messages.json (+2 -0)

...and 3 more files

📄 Description

Added the ability to specify the SSL key type (ECDSA or RSA) for each site in the Nginx Proxy Manager. This enhancement is particularly useful for environments with IoT devices that have limitations with specific key types, such as RSA-only support. The implementation includes:

  • Backend support for storing and validating the ssl_key_type field.
  • Swagger schema updated to validate the new input.
  • Frontend update to allow users to select the SSL key type via a dropdown menu.

This feature ensures greater flexibility and compatibility in managing SSL certificates for diverse setups.

#3354


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/NginxProxyManager/nginx-proxy-manager/pull/4218 **Author:** [@mnr73](https://github.com/mnr73) **Created:** 12/9/2024 **Status:** 🔄 Open **Base:** `develop` ← **Head:** `develop` --- ### 📝 Commits (10+) - [`e6ec74c`](https://github.com/NginxProxyManager/nginx-proxy-manager/commit/e6ec74c2f77fba5ce1b253f3d811696749c2b49b) feat: add support for selecting SSL key type (ECDSA/RSA) - [`8e9e033`](https://github.com/NginxProxyManager/nginx-proxy-manager/commit/8e9e033a7210674067a4ab838791bfcebeceeae0) fix indent: tab to space - [`891877a`](https://github.com/NginxProxyManager/nginx-proxy-manager/commit/891877afb627adc25d67040323920702c9c61cb6) fix ssl key-type certificate - [`2723de2`](https://github.com/NginxProxyManager/nginx-proxy-manager/commit/2723de24fd033e800e16e7edd9bd7b2da50b2676) add ssl_ecdh_curve for more compatibility - [`5e7b69c`](https://github.com/NginxProxyManager/nginx-proxy-manager/commit/5e7b69c396f8baa33395882e40e2977c8266a426) add update cipher suites - [`95a94a4`](https://github.com/NginxProxyManager/nginx-proxy-manager/commit/95a94a4f8cade82e4121207c54b5258d75998543) add elliptic-curve - [`111fc28`](https://github.com/NginxProxyManager/nginx-proxy-manager/commit/111fc287ebe7921c8b6fab2435fe061d8a9b1078) Revert "add elliptic-curve" - [`04b3608`](https://github.com/NginxProxyManager/nginx-proxy-manager/commit/04b3608b4e6a655f24e7ddcd1f4dc3552d61625a) remove elliptic-curve from certbot command options - [`cb79556`](https://github.com/NginxProxyManager/nginx-proxy-manager/commit/cb795565eaaa5427c210606fb7933ad9d429027a) add ssl_key_type in swagger - [`eb5c51a`](https://github.com/NginxProxyManager/nginx-proxy-manager/commit/eb5c51a65797794bba47a369d429531c6f75168d) add support more cipher suites ### 📊 Changes **23 files changed** (+239 additions, -14 deletions) <details> <summary>View changed files</summary> 📝 `backend/internal/certificate.js` (+7 -1) 📝 `backend/internal/host.js` (+25 -1) 📝 `backend/internal/proxy-host.js` (+33 -0) ➕ `backend/migrations/20241209062244_ssl_key_type.js` (+51 -0) ➕ `backend/migrations/20241221201400_default_server.js` (+40 -0) 📝 `backend/models/proxy_host.js` (+1 -0) 📝 `backend/schema/components/certificate-object.json` (+5 -0) 📝 `backend/schema/components/proxy-host-object.json` (+10 -0) 📝 `backend/schema/paths/nginx/proxy-hosts/hostID/put.json` (+6 -0) 📝 `backend/schema/paths/nginx/proxy-hosts/post.json` (+6 -0) 📝 `backend/templates/_listen.conf` (+4 -4) 📝 `docker/Dockerfile` (+3 -1) 📝 `docker/dev/Dockerfile` (+4 -1) 📝 `docker/dev/letsencrypt.ini` (+0 -2) 📝 `docker/rootfs/etc/letsencrypt.ini` (+0 -2) 📝 `docker/rootfs/etc/nginx/conf.d/include/ssl-ciphers.conf` (+3 -1) ➕ `docker/start-container` (+13 -0) 📝 `frontend/js/app/nginx/proxy/form.ejs` (+19 -1) 📝 `frontend/js/app/nginx/proxy/form.js` (+1 -0) 📝 `frontend/js/i18n/messages.json` (+2 -0) _...and 3 more files_ </details> ### 📄 Description Added the ability to specify the SSL key type (ECDSA or RSA) for each site in the Nginx Proxy Manager. This enhancement is particularly useful for environments with IoT devices that have limitations with specific key types, such as RSA-only support. The implementation includes: - Backend support for storing and validating the `ssl_key_type` field. - Swagger schema updated to validate the new input. - Frontend update to allow users to select the SSL key type via a dropdown menu. This feature ensures greater flexibility and compatibility in managing SSL certificates for diverse setups. #3354 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/nginx-proxy-manager-NginxProxyManager#3843
No description provided.