209 Commits

Author SHA1 Message Date
Shreyas Zare
9b1a581ffb DnsWebService: Added explicit portable app support. Updated SaveConfigFileInternal() to write config to tmp before moving. Added API support for single use token, metrics, and option to manually activate KSK. Updated WebServiceExceptionHandler() to remove stack trace from response. Updated API implementation to support Authorization Bearer token. Updated TryGetSession() to support single use token. Updated GetSessionUser() to support cluster api token. Code refactoring changes done. 2026-03-14 17:14:14 +05:30
Shreyas Zare
b2048e283f DnsWebService: Enabled web server compression. Fixed bug in reading env vars which failed to load certs. Updated RestoreConfigAsync() to support importing v13.x and older backup files. Updated initJoin call to be POST only. Added no cache headers in all responses. Code refactoring changes done. 2025-12-20 15:52:03 +05:30
Shreyas Zare
e9e9a49a7e DnsWebService: updated GetSessionUser() to use a different param name to avoid issues with other api calls and also made the param optional. 2025-11-22 11:44:59 +05:30
Shreyas Zare
8e721e085e HttpApiClient: Updated implementation to include username for use when calling all API calls. Updated ProxyRequest() to replace additional parameters with a single username param. Code refactoring changes done. 2025-11-15 18:53:26 +05:30
Shreyas Zare
21683d5c8d DnsWebService: Updated GetClusterNodeTypeForPath() to only provide api direction. Updated WebServiceApiMiddleware() to pass additional user param when proxying request. Added GetSessionUser() to return the current session user even for a proxy cluster call. 2025-11-15 18:05:04 +05:30
Shreyas Zare
c7fcf78cdb Merge branch 'develop' of https://github.com/TechnitiumSoftware/DnsServer into develop 2025-11-15 12:32:49 +05:30
Shreyas Zare
3b46e691d8 DnsWebService: Updated RestoreConfigAsync() to handle app config loading errors. 2025-11-15 12:32:38 +05:30
Shreyas Zare
d8d30b02f4 Merge pull request #1497 from simonvandermeer/develop
Added TLS cert path, TLS cert password and HTTP to TLS redirect docker env variables
2025-11-15 12:30:27 +05:30
Shreyas Zare
786b0c4587 DnsWebService: Updated RestoreConfigAsync() to read the app config file with BOM encoding detection fix issue with parsing app json config. Updated WebServiceApiMiddleware() to add missing check for session validation before proxying request to fix auth bypass issue. 2025-11-09 17:31:05 +05:30
Shreyas Zare
b08735f4ae DnsWebService: Updated GetClusterNodeTypeForPath() and WebServiceApiMiddleware() to allow passing additional parameters for required API calls. Updated AuthZoneManager_SecondaryCatalogZoneAdded() and AuthZoneManager_SecondaryCatalogZoneRemoved() to delete cache for the zones. Minor changes and code refactoring done. 2025-11-08 12:29:34 +05:30
Shreyas Zare
63ed01ee8b DnsWebService: Updated config file code to keep all options local only and moved default record ttl option to DNS config file. Updated backup and restore code to finalize which config files will be synced across cluster. Implemented fallback web server map to return 404 when wrong api path is queried. Added GetClusterNodeTypeForPath() to specify which api paths must go to primary nodes and which to go to current node. Updated WebServiceApiMiddleware() to proxy api call to the correct cluster node and implement fallback check. Minor changed and code refactoring done. 2025-11-02 16:25:13 +05:30
Simon van der Meer
d30e074983 Added TLS cert path, TLS cert password and HTTP to TLS redirect docker env variables 2025-10-20 22:31:18 +02:00
Shreyas Zare
2dcdec3cd1 DnsWebService: moved dns.config related to to DnsServer class. Implemented support for ClusterManager. Implemented new code for webservice.config file to manage web service related parameters. Moved backup and restore implementation here with additional support for cluster config transfer mechanismm. Code refactoring changes done. 2025-09-27 16:24:35 +05:30
Shreyas Zare
37720c54a7 DnsWebService: Updated WebServiceExceptionHandler() to change the order of exception maching. Code refactoring changes done. 2025-07-06 19:41:40 +05:30
Shreyas Zare
28d1155b47 DnsWebService: Implemented config file support for TOTP, udp socket pool and upgraded qpm limit feature. Implemented support for "throw if bind fails" feature. Fixed bug that caused StopAsync() being called twice in Windows service. Code refactoring changes done. 2025-05-31 16:25:58 +05:30
Shreyas Zare
1e3a36dcd7 DnsWebService: updated WebServiceApiMiddleware() to return 404 for paths other than /api/ 2025-04-19 15:51:47 +05:30
Shreyas Zare
c824c89c06 DnsWebService: Updated ConfigureWebServiceRoutes() to add addPrivateKey api call. Updated config file code to remove NS revalidation option. Other code refactoring changes done. 2025-03-29 19:12:54 +05:30
Shreyas Zare
a1c37c0347 fixed minor typo 2025-02-15 13:17:10 +05:30
Shreyas Zare
fde75688b9 DnsWebService: code refactoring changes done. 2025-02-15 12:45:41 +05:30
Shreyas Zare
634df67bed DnsWebService: Added support query log export feature. Updated SelfSignedCertCheck to generate new self-signed cert automatically 1yr before current cert expires. Fixed issue in StopAsync() that caused null ref issue when saving config in dispose call. 2025-01-11 17:44:18 +05:30
Shreyas Zare
49ac53e8af DnsWebService: fixed but in admin web service ssl cert reloading. Updated SelfSignedCertCheck() to include subject alternative name entry for configured unicast local addresses for the web service. Updated config code to add support for new options. 2024-12-21 15:49:16 +05:30
Shreyas Zare
ed330778f9 DnsWebService: Updated StartWebServiceAsync() to check http/2 support for windows to avoid issues when HTTPS is enabled on older OS versions. 2024-11-30 13:16:44 +05:30
Shreyas Zare
b813a55be2 DnsWebService: updated config code to support new reverse proxy network ACL option. 2024-11-16 13:43:33 +05:30
Shreyas Zare
eec34756b3 DnsWebService: Fixed issue with admin panel http/3 not working caused due to kestral web server changes. Updated admin web server cache header to avoid issues after server update. 2024-11-09 19:47:25 +05:30
Shreyas Zare
a9b737f286 DnsWebService: Updated LoadConfigFile() to set missing default value for MaxStatFileDays. Updated ReadConfigFrom() and ReadOldConfigFrom() to read MaxStatFileDays value with validation. 2024-10-26 17:31:28 +05:30
Shreyas Zare
0a4eeb9ced DnsWebService: implemented custom real ip header feature for admin web service. Updated config code to save/load new options. 2024-10-19 17:01:05 +05:30
Shreyas Zare
9aa6dcac0e DnsWebService: added catalog zone support. Updated dns config file format for supporting new options. 2024-09-14 19:19:59 +05:30
Shreyas Zare
036b3d4aec DnsWebService: added retry mechanism for delayed save. 2024-06-01 19:02:42 +05:30
Shreyas Zare
95b3bcacab DnsWebService: implemented delayed save feature. Implemented custom https redirection middleware to preseve same hostname in redirection url. Added support for .p12 cert extension. Updated self signed cert implementation to use specific file name. Set NS Revalidation to false since many popular domains fail to resolve due to they being misconfigured. Updated config file to add support for new options. 2024-05-19 16:08:35 +05:30
Shreyas Zare
0e61ae387a DnsWebService: updated config code for ECS override feature. 2024-03-16 15:50:11 +05:30
Shreyas Zare
beb9ff2546 DnsWebService: added DNS_SERVER_WEB_SERVICE_LOCAL_ADDRESSES environment variable. 2024-03-16 14:00:11 +05:30
Shreyas Zare
615d3dbe61 DnsWebService: updated implementation to support new features. Code refactoring done. 2024-02-04 18:01:49 +05:30
Shreyas Zare
d3600f34a2 DnsWebService: Implemented DNS Client udp socket pool port exclusion feature to avoid issues with web service http/3 udp port. Updated LoadConfigFile() to set resolver log manager by default. 2023-12-02 16:44:19 +05:30
Shreyas Zare
7c7befa574 DnsWebService: minor refactoring changes. 2023-10-29 20:19:28 +05:30
Shreyas Zare
d344c6a2a6 DnsWebService: implemented independent http/3 option. Added new api call routes. Updated dns config file for all new options. 2023-10-29 19:16:36 +05:30
Shreyas Zare
f2b96e2991 DnsWebService: added web server route for clone zone feature. 2023-09-24 16:37:12 +05:30
Shreyas Zare
badc9057df DnsWebService: updated TryStartWebServiceAsync() to restore to old address/port when new settings fail to bind. 2023-09-23 18:19:36 +05:30
Shreyas Zare
fccd8dd5fb DnsWebService: updated web service code to revert listening to old end point if new endpoint fails to bind. 2023-08-26 12:34:52 +05:30
Shreyas Zare
536c4ba2bb DnsWebService: Fixed issue with uploading large backup zip file for restore operation. Updated code to allow using relative path for web service and optional protocols TLS certificate. Fixed issue in reading config that could cause incomplete restoration of config. Added support for new proxy protocol options. 2023-08-12 13:13:22 +05:30
Shreyas Zare
ac9a6fcce9 DnsWebService: implemented uptimestamp feature. Updated kestrel to use cert collection to be able to respond with cert chain for private ca. 2023-07-29 13:37:36 +05:30
Shreyas Zare
e10c856dce DnsWebService: added new zone convert api support. 2023-06-25 19:14:41 +05:30
Shreyas Zare
ba0fc9be62 DnsWebService: fixed issue in StartAsync() that cause not loading block lists when update interval is set to 0. 2023-05-20 18:10:40 +05:30
Shreyas Zare
25090eb3ce DnsWebService: updated StopAsync() to prevent from running twice. 2023-04-29 16:16:55 +05:30
Shreyas Zare
1f8d2a538c DnsWebService: Enabled save cache option by default. Updated web server to serve unknown file types for certbot webroot http challenge. Added 4 new env var support. 2023-04-23 16:28:27 +05:30
Shreyas Zare
7fb8e2730d DnsWebService: updated StartWebServiceAsync() to have safe mode to allow only http listening when required. Code refactoring changes done. 2023-02-25 13:12:06 +05:30
Shreyas Zare
7e6b04441d DnsWebService: updated web server max request limit. 2023-02-18 11:44:30 +05:30
Shreyas Zare
05c4d96b65 DnsWebService: updated config to remove doh-port80 compatibility option. 2023-02-12 13:15:13 +05:30
Shreyas Zare
73cbff24a0 code refactoring changes. 2023-02-05 16:32:28 +05:30
Shreyas Zare
0d00100cd2 DnsWebService: Implemented support for save dns cache feature. Added TryStartWebServiceAsync() to handle web service startup failures. Updated ConfigureWebServiceRoutes() to use MapGetAndPost() to allow all API calls to read from query string and form data. Updated config serializers to support new dns options. Code refactoring done. 2023-01-14 14:59:50 +05:30
Shreyas Zare
2ba1948e69 DnsWebService: replaced HTTPListener with Kestral web server. Code refactoring done. 2023-01-01 18:48:08 +05:30