4ac1df059ffeat(acme): Add ACME interfaces for Port80Handler and refactor ChallengeResponder to use new acme-interfaces, enhancing event subscription and certificate workflows.Philipp Kunz2025-05-09 17:28:27 +00:00
1a902a04fbBREAKING CHANGE(forwarding): Refactor unified forwarding API and remove redundant documentation. Removed docs/forwarding-system.md (its content is migrated into readme.md) and updated helper functions (e.g. replacing sniPassthrough with httpsPassthrough) to accept configuration objects. Legacy fields in domain configurations (allowedIPs, blockedIPs, useNetworkProxy, networkProxyPort, connectionTimeout) have been removed in favor of forwarding.security and advanced options. Tests and examples have been updated accordingly.Philipp Kunz2025-05-09 15:39:15 +00:00
0f356c9bbffeat(CertificateManager): Implement on-demand certificate retrieval for missing SNI certificates. When no certificate is found for a TLS ClientHello, the system now automatically registers the domain with the Port80Handler to trigger ACME issuance and immediately falls back to using the default certificate to complete the handshake. Additionally, HTTP requests on port 80 for unrecognized domains now return a 503 indicating that certificate issuance is in progress.Philipp Kunz2025-05-05 17:03:22 +00:00
9c05f71cd6feat(smartproxy): Implement fallback to NetworkProxy on missing SNI and rename certProvider to certProvisionFunction in CertProvisionerPhilipp Kunz2025-05-05 15:42:48 +00:00
05c9156458fix(port80handler): refactor ACME challenge handling to use dedicated Http01MemoryHandler, remove obsolete readme.plan.md, and update version to 10.0.12Philipp Kunz2025-05-05 15:16:26 +00:00
47e3c86487fix(dependencies): Update @push.rocks/smartacme to ^7.3.2; replace DisklessHttp01Handler with Http01MemoryHandler in Port80HandlerPhilipp Kunz2025-05-05 14:47:20 +00:00
19578b061efix(dependencies): Bump @push.rocks/smartacme to ^7.2.5 and @tsclass/tsclass to ^9.2.0; update MemoryCertManager import to use plugins.smartacme.certmanagers.MemoryCertManager()Philipp Kunz2025-05-05 10:52:48 +00:00
a646f4ad28fix(docs): Update README: rename certProviderFunction to certProvisionFunction in configuration options for consistency.Philipp Kunz2025-05-05 10:46:05 +00:00
adb85d920ffix(documentation): Update documentation to use certProviderFunction instead of certProvider in SmartProxy settings.Philipp Kunz2025-05-05 10:30:08 +00:00
9b773608c7fix(smartproxy): rename certProvider to certProvisionFunction in certificate provisioning interfaces and SmartProxyPhilipp Kunz2025-05-05 10:29:00 +00:00
30c25ec70cfix(smartproxy): No changes detected in project files. This commit updates commit info without modifying any functionality.Philipp Kunz2025-05-04 13:05:48 +00:00
f72f884edafix(smartproxy): Update dependency versions (@push.rocks/smartacme to ^7.2.4, @push.rocks/smartnetwork to ^4.0.1, ws to ^8.18.2) and export common types via index.ts for easier imports.Philipp Kunz2025-05-04 12:21:02 +00:00
0e634c46a6BREAKING CHANGE(smartproxy): Update documentation and refactor core proxy components; remove legacy performRenewals method from SmartProxy; update router type imports and adjust test suites for improved coveragePhilipp Kunz2025-05-03 13:19:23 +00:00
46214f5380fix(networkproxy/requesthandler): Improve HTTP/2 request handling and error management in the proxy request handler; add try-catch around routing and update header processing to support per-backend protocol overrides.Philipp Kunz2025-04-19 18:42:36 +00:00
04abab505bfeat(core): Add backendProtocol option to support HTTP/2 client sessions alongside HTTP/1. This update enhances NetworkProxy's core functionality by integrating HTTP/2 support in server creation and request handling, while updating plugin exports and documentation accordingly.Philipp Kunz2025-04-19 18:31:10 +00:00
9a9bcd2df0fix(package.json): Update packageManager field in package.json to specify the pnpm version for improved reproducibility.Philipp Kunz2025-04-05 08:54:34 +00:00
0de7531e17BREAKING CHANGE(redirect): Remove deprecated SSL redirect implementation and update exports to use the new redirect modulePhilipp Kunz2025-04-04 17:15:50 +00:00
27f9b1eac1fix(readme): Update README documentation: replace all outdated PortProxy references with SmartProxy, adjust architecture diagrams, code examples, and configuration details (including correcting IPTables to NfTables) to reflect the new naming.Philipp Kunz2025-03-25 22:35:36 +00:00
88a1891bcffeat(docs): docs: replace IPTablesProxy references with NfTablesProxy in README and examples, updating configuration options and diagrams for advanced nftables featuresPhilipp Kunz2025-03-18 22:04:37 +00:00
9b5b8225bcBREAKING CHANGE(nftables): Replace IPTablesProxy with NfTablesProxy and update module exports in index.tsPhilipp Kunz2025-03-18 21:55:09 +00:00
b7b47cd11ffeat(Port80Handler): Add glob pattern support for domain certificate management in Port80Handler. Wildcard domains are now detected and skipped in certificate issuance and retrieval, ensuring that only explicit domains receive ACME certificates and improving route matching.Philipp Kunz2025-03-18 15:00:24 +00:00
f8c86c76aefix(networkproxy): Refactor certificate management components: rename AcmeCertManager to Port80Handler and update related event names from CertManagerEvents to Port80HandlerEvents. The changes update internal API usage in ts/classes.networkproxy.ts and ts/classes.port80handler.ts to unify and simplify ACME certificate handling and HTTP-01 challenge management.Philipp Kunz2025-03-18 14:53:39 +00:00
9cb6e397b9fix(ts/index.ts): Fix export order in ts/index.ts by moving the port proxy export back and adding interfaces export for proper module exposurePhilipp Kunz2025-03-18 12:49:52 +00:00
426249e70efix(connectionhandler): Ensure proper termination of TLS connections without SNI by explicitly ending the socket after sending the unrecognized_name alert. This prevents the connection from hanging and avoids potential duplicate handling.Philipp Kunz2025-03-18 00:29:17 +00:00
ca6f6de798fix(tls): Improve TLS alert handling in connection handler: use the new TlsAlert class to send proper unrecognized_name alerts when a ClientHello is missing SNI and wait for a retry on the same connection before closing. Also, add alertFallbackTimeout tracking to connection records for better timeout management.Philipp Kunz2025-03-17 13:37:48 +00:00