diff --git a/server/lib/blueprints/clientResources.ts b/server/lib/blueprints/clientResources.ts index df1fd0cfb..c19ea3245 100644 --- a/server/lib/blueprints/clientResources.ts +++ b/server/lib/blueprints/clientResources.ts @@ -215,9 +215,17 @@ export async function updateClientResources( enabled: true, // hardcoded for now // enabled: resourceData.enabled ?? true, alias: resourceData.alias || null, - disableIcmp: resourceData["disable-icmp"], - tcpPortRangeString: resourceData["tcp-ports"], - udpPortRangeString: resourceData["udp-ports"], + disableIcmp: + resourceData["disable-icmp"] || + (resourceData.mode == "http" ? true : false), // default to true for http resources, otherwise false + tcpPortRangeString: + resourceData.mode == "http" + ? "443,80" + : resourceData["tcp-ports"], + udpPortRangeString: + resourceData.mode == "http" + ? "" + : resourceData["udp-ports"], fullDomain: resourceData["full-domain"] || null, subdomain: domainInfo ? domainInfo.subdomain : null, domainId: domainInfo ? domainInfo.domainId : null @@ -397,9 +405,17 @@ export async function updateClientResources( // enabled: resourceData.enabled ?? true, alias: resourceData.alias || null, aliasAddress: aliasAddress, - disableIcmp: resourceData["disable-icmp"], - tcpPortRangeString: resourceData["tcp-ports"], - udpPortRangeString: resourceData["udp-ports"], + disableIcmp: + resourceData["disable-icmp"] || + (resourceData.mode == "http" ? true : false), // default to true for http resources, otherwise false + tcpPortRangeString: + resourceData.mode == "http" + ? "443,80" + : resourceData["tcp-ports"], + udpPortRangeString: + resourceData.mode == "http" + ? "" + : resourceData["udp-ports"], fullDomain: resourceData["full-domain"] || null, subdomain: domainInfo ? domainInfo.subdomain : null, domainId: domainInfo ? domainInfo.domainId : null diff --git a/server/routers/siteResource/createSiteResource.ts b/server/routers/siteResource/createSiteResource.ts index 242bbf860..cec1c8b35 100644 --- a/server/routers/siteResource/createSiteResource.ts +++ b/server/routers/siteResource/createSiteResource.ts @@ -389,9 +389,10 @@ export async function createSiteResource( enabled, alias: alias ? alias.trim() : null, aliasAddress, - tcpPortRangeString, - udpPortRangeString, - disableIcmp, + tcpPortRangeString: + mode == "http" ? "443,80" : tcpPortRangeString, + udpPortRangeString: mode == "http" ? "" : udpPortRangeString, + disableIcmp: disableIcmp || (mode == "http" ? true : false), // default to true for http resources, otherwise false domainId, subdomain: finalSubdomain, fullDomain @@ -496,7 +497,13 @@ export async function createSiteResource( `Created site resource ${newSiteResource.siteResourceId} for org ${orgId}` ); - if (ssl && mode === "http" && domainId && fullDomain && build != "oss") { + if ( + ssl && + mode === "http" && + domainId && + fullDomain && + build != "oss" + ) { await createCertificate(domainId, fullDomain, db); } diff --git a/server/routers/siteResource/updateSiteResource.ts b/server/routers/siteResource/updateSiteResource.ts index fd42cc465..ddcb1d44f 100644 --- a/server/routers/siteResource/updateSiteResource.ts +++ b/server/routers/siteResource/updateSiteResource.ts @@ -440,9 +440,12 @@ export async function updateSiteResource( destinationPort, enabled, alias: alias ? alias.trim() : null, - tcpPortRangeString, - udpPortRangeString, - disableIcmp, + tcpPortRangeString: + mode == "http" ? "443,80" : tcpPortRangeString, + udpPortRangeString: + mode == "http" ? "" : udpPortRangeString, + disableIcmp: + disableIcmp || (mode == "http" ? true : false), // default to true for http resources, otherwise false domainId, subdomain: finalSubdomain, fullDomain,