fileport-gateway 0.1.6 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -3
- package/dist/cli.js +24 -16
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +3 -1
- package/dist/config.js +9 -1
- package/dist/config.js.map +1 -1
- package/dist/gateway.js +4 -4
- package/dist/gateway.js.map +1 -1
- package/dist/network.d.ts +4 -1
- package/dist/network.js +26 -8
- package/dist/network.js.map +1 -1
- package/dist/types.d.ts +2 -0
- package/docs/NETWORK_AND_CLI.md +23 -4
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -30,6 +30,7 @@ The npm package includes the checksum-verified official Dufs 0.46.0 Linux x86_64
|
|
|
30
30
|
## Run
|
|
31
31
|
|
|
32
32
|
```bash
|
|
33
|
+
# Direct LAN advertisement (default mode):
|
|
33
34
|
export FILEPORT_PUBLIC_BASE_URL="http://<devbox-ip>:7892"
|
|
34
35
|
fileport serve
|
|
35
36
|
```
|
|
@@ -42,11 +43,22 @@ fileport ls
|
|
|
42
43
|
fileport revoke <share-id>
|
|
43
44
|
```
|
|
44
45
|
|
|
45
|
-
Fileport provides HTTP only. The listener defaults to `0.0.0.0:7892`; generated URLs default to the default-route LAN IPv4, not `127.0.0.1`.
|
|
46
|
+
The Fileport origin listener provides HTTP only. The listener defaults to `0.0.0.0:7892`; generated URLs default to the default-route LAN IPv4, not `127.0.0.1`.
|
|
47
|
+
|
|
48
|
+
Direct mode (the default) requires a configured hostname to resolve entirely to local, listener-covered addresses. For a reverse proxy or tunnel that terminates public HTTPS and forwards to the local HTTP listener, use proxy mode:
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
fileport config set --host 127.0.0.1 \
|
|
52
|
+
--public-url https://files.example.com \
|
|
53
|
+
--public-mode proxy
|
|
54
|
+
fileport stop # if a daemon is already running
|
|
55
|
+
fileport doctor --json # starts are explicit; doctor validates configuration
|
|
56
|
+
fileport share ./report.md --readonly
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Proxy mode treats `public.url` as the externally advertised URL. DNS is reported for diagnostics but is not required to resolve to a local interface, and the public port does not need to equal the origin listener port. Fileport does not configure or verify the reverse proxy itself; verify the resulting capability URL end to end.
|
|
46
60
|
|
|
47
61
|
```bash
|
|
48
|
-
fileport doctor --json
|
|
49
|
-
fileport config set --public-url http://files.example.com:7892
|
|
50
62
|
fileport --help
|
|
51
63
|
fileport share --help
|
|
52
64
|
``` Agent control is available only through `$FILEPORT_STATE_DIR/control.sock` (0600).
|
package/dist/cli.js
CHANGED
|
@@ -26,10 +26,10 @@ Commands:
|
|
|
26
26
|
config Show or update persistent configuration
|
|
27
27
|
|
|
28
28
|
Safety defaults:
|
|
29
|
-
Shares are read-only unless --rw is explicit.
|
|
30
|
-
Without public.url, Fileport advertises the default-route LAN IPv4.
|
|
31
|
-
|
|
32
|
-
and covered by the listener. Capability URLs are secrets; do not publish them.
|
|
29
|
+
Shares are read-only unless --rw is explicit. The origin listener is HTTP-only;
|
|
30
|
+
proxy mode may advertise external HTTPS. Without public.url, Fileport advertises the default-route LAN IPv4.
|
|
31
|
+
Direct-mode hostnames are issued only when every A/AAAA address is local
|
|
32
|
+
and covered by the listener; proxy mode supports external HTTPS endpoints. Capability URLs are secrets; do not publish them.
|
|
33
33
|
|
|
34
34
|
Agent output:
|
|
35
35
|
--json writes one JSON object to stdout; diagnostics go to stderr.
|
|
@@ -43,22 +43,22 @@ Examples:
|
|
|
43
43
|
fileport share ./report.md --readonly
|
|
44
44
|
fileport share ./report.md --rw --expire 2h --json
|
|
45
45
|
fileport doctor --json
|
|
46
|
-
fileport config set --public-url
|
|
46
|
+
fileport config set --public-url https://files.example.com --public-mode proxy
|
|
47
47
|
|
|
48
48
|
Environment:
|
|
49
|
-
FILEPORT_HOST, FILEPORT_PORT, FILEPORT_PUBLIC_BASE_URL,
|
|
49
|
+
FILEPORT_HOST, FILEPORT_PORT, FILEPORT_PUBLIC_BASE_URL, FILEPORT_PUBLIC_MODE,
|
|
50
50
|
FILEPORT_STATE_DIR, FILEPORT_CONFIG_FILE, FILEPORT_DUFS_BIN
|
|
51
51
|
|
|
52
52
|
Run 'fileport <command> --help' for command details.`;
|
|
53
53
|
const HELP = {
|
|
54
|
-
serve: `Usage: fileport serve [--host HOST] [--port PORT] [--public-url URL] [--json]\n\nStart the Gateway. --host controls listening; --public-url only controls advertised URLs.\nDefault bind: 0.0.0.0:7892.
|
|
54
|
+
serve: `Usage: fileport serve [--host HOST] [--port PORT] [--public-url URL] [--public-mode direct|proxy] [--json]\n\nStart the Gateway. --host controls listening; --public-url only controls advertised URLs.\nDefault bind: 0.0.0.0:7892. Direct hostnames are DNS-validated as all-local; proxy mode supports HTTPS reverse proxies and tunnels.\n--json emits one readiness object; long-running diagnostics use stderr.`,
|
|
55
55
|
share: `Usage: fileport share <path> [--readonly|--rw] [--expire 2h] [--json]\n\nCreate an opaque capability URL. Default: --readonly. --rw permits strict,\nversioned, existing-file-only text saves. Expiry units: m, h, d, w.\nThe capability URL is a secret. Default stdout is only the URL.`,
|
|
56
56
|
ls: `Usage: fileport ls [--json]\n\nList non-expired shares. Human mode prints a compact table; JSON mode emits {shares:[...]}.`,
|
|
57
57
|
revoke: `Usage: fileport revoke <share-id> [--json]\n\nImmediately revoke a capability. JSON mode emits {ok,id}. Exit 6 if absent.`,
|
|
58
58
|
status: `Usage: fileport status [--json]\n\nShow daemon PID, bind address, advertised address, and active share count.`,
|
|
59
59
|
stop: `Usage: fileport stop [--json]\n\nGracefully stop the user-scoped Gateway and its Dufs workers.`,
|
|
60
60
|
doctor: `Usage: fileport doctor [--json]\n\nShow a runtime snapshot of interfaces, selected LAN IPv4, public URL, DNS/CNAME\nresolution, local matches, and warnings. Does not create a share.`,
|
|
61
|
-
config: `Usage:\n fileport config show [--json]\n fileport config set [--host H] [--port N] [--public-url URL]\n fileport config unset --public-url\n\nPersistent file: ~/.config/fileport/config.json (0700 directory, 0600 file).\nPriority: command flags > environment > config file > defaults. Restart after changes.`
|
|
61
|
+
config: `Usage:\n fileport config show [--json]\n fileport config set [--host H] [--port N] [--public-url URL] [--public-mode direct|proxy]\n fileport config unset --public-url\n\nPersistent file: ~/.config/fileport/config.json (0700 directory, 0600 file).\nPriority: command flags > environment > config file > defaults. Restart after changes.`
|
|
62
62
|
};
|
|
63
63
|
class CliError extends Error {
|
|
64
64
|
exitCode;
|
|
@@ -108,7 +108,7 @@ catch (error) {
|
|
|
108
108
|
if (error instanceof CliError)
|
|
109
109
|
throw error;
|
|
110
110
|
} await fs.mkdir(config.stateDir, { recursive: true, mode: 0o700 }); const executable = fileURLToPath(import.meta.url), child = spawn(process.execPath, [executable, "serve"], { detached: true, stdio: "ignore", env: process.env }); child.unref(); await waitForControl(socket); return { config, socket }; }
|
|
111
|
-
function overrides(args) { return { host: option(args, "--host"), port: option(args, "--port") ? Number(option(args, "--port")) : undefined, publicBaseUrl: option(args, "--public-url") }; }
|
|
111
|
+
function overrides(args) { return { host: option(args, "--host"), port: option(args, "--port") ? Number(option(args, "--port")) : undefined, publicBaseUrl: option(args, "--public-url"), publicMode: option(args, "--public-mode") }; }
|
|
112
112
|
let jsonRequested = false;
|
|
113
113
|
async function main() {
|
|
114
114
|
const argv = process.argv.slice(2), command = argv[0];
|
|
@@ -130,7 +130,7 @@ async function main() {
|
|
|
130
130
|
}
|
|
131
131
|
const asJson = jsonFlag(args);
|
|
132
132
|
if (command === "serve") {
|
|
133
|
-
assertOnlyFlags(args, new Set(["--json", "--host", "--port", "--public-url"]), new Set(["--host", "--port", "--public-url"]));
|
|
133
|
+
assertOnlyFlags(args, new Set(["--json", "--host", "--port", "--public-url", "--public-mode"]), new Set(["--host", "--port", "--public-url", "--public-mode"]));
|
|
134
134
|
const config = loadConfig(process.env, overrides(args)), gateway = new Gateway(config);
|
|
135
135
|
try {
|
|
136
136
|
await gateway.start();
|
|
@@ -227,7 +227,7 @@ async function main() {
|
|
|
227
227
|
throw new CliError("gateway is not running", 5);
|
|
228
228
|
const gateway = new Gateway(config);
|
|
229
229
|
try {
|
|
230
|
-
const result = await gateway.addressResolver.inspect({ host: config.host, port: config.port, publicBaseUrl: config.publicBaseUrl }, true).then(s => ({ bind: { host: config.host, port: config.port }, ...s }));
|
|
230
|
+
const result = await gateway.addressResolver.inspect({ host: config.host, port: config.port, publicBaseUrl: config.publicBaseUrl, publicMode: config.publicMode }, true).then(s => ({ bind: { host: config.host, port: config.port }, ...s }));
|
|
231
231
|
output(result, asJson, JSON.stringify(result, null, 2));
|
|
232
232
|
}
|
|
233
233
|
catch (error) {
|
|
@@ -257,9 +257,11 @@ async function main() {
|
|
|
257
257
|
return;
|
|
258
258
|
}
|
|
259
259
|
if (action === "set") {
|
|
260
|
-
const host = option(args, "--host"), port = option(args, "--port"), publicUrl = option(args, "--public-url");
|
|
261
|
-
if (!host && !port && !publicUrl)
|
|
262
|
-
throw new CliError("config set requires --host, --port, or --public-
|
|
260
|
+
const host = option(args, "--host"), port = option(args, "--port"), publicUrl = option(args, "--public-url"), publicMode = option(args, "--public-mode");
|
|
261
|
+
if (!host && !port && !publicUrl && !publicMode)
|
|
262
|
+
throw new CliError("config set requires --host, --port, --public-url, or --public-mode", 2);
|
|
263
|
+
if (publicMode && publicMode !== "direct" && publicMode !== "proxy")
|
|
264
|
+
throw new CliError("--public-mode must be direct or proxy", 2);
|
|
263
265
|
const next = { ...value, bind: { ...value.bind }, public: { ...value.public, dnsPolicy: "all-local" } };
|
|
264
266
|
if (host)
|
|
265
267
|
next.bind.host = host;
|
|
@@ -267,8 +269,14 @@ async function main() {
|
|
|
267
269
|
next.bind.port = Number(port);
|
|
268
270
|
if (publicUrl)
|
|
269
271
|
next.public.url = publicUrl;
|
|
270
|
-
|
|
271
|
-
|
|
272
|
+
if (publicMode)
|
|
273
|
+
next.public.mode = publicMode;
|
|
274
|
+
if (next.public.mode === "proxy")
|
|
275
|
+
delete next.public.dnsPolicy;
|
|
276
|
+
else
|
|
277
|
+
next.public.dnsPolicy = "all-local";
|
|
278
|
+
const checked = loadConfig({ ...process.env, FILEPORT_CONFIG_FILE: "/nonexistent" }, { host: next.bind?.host, port: next.bind?.port, publicBaseUrl: next.public?.url ?? undefined, publicMode: next.public?.mode });
|
|
279
|
+
await new PublicAddressResolver().inspect({ host: checked.host, port: checked.port, publicBaseUrl: checked.publicBaseUrl, publicMode: checked.publicMode }, true);
|
|
272
280
|
writeConfigFile(next, file);
|
|
273
281
|
output({ ok: true, file, config: next }, asJson, `updated ${file}; restart Fileport to apply`);
|
|
274
282
|
return;
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { FileportConfig } from "./types.js";
|
|
1
|
+
import type { FileportConfig, PublicUrlMode } from "./types.js";
|
|
2
2
|
export interface FileportConfigFile {
|
|
3
3
|
bind?: {
|
|
4
4
|
host?: string;
|
|
@@ -6,6 +6,7 @@ export interface FileportConfigFile {
|
|
|
6
6
|
};
|
|
7
7
|
public?: {
|
|
8
8
|
url?: string | null;
|
|
9
|
+
mode?: PublicUrlMode;
|
|
9
10
|
dnsPolicy?: "all-local";
|
|
10
11
|
};
|
|
11
12
|
}
|
|
@@ -13,6 +14,7 @@ export interface ConfigOverrides {
|
|
|
13
14
|
host?: string;
|
|
14
15
|
port?: number;
|
|
15
16
|
publicBaseUrl?: string;
|
|
17
|
+
publicMode?: PublicUrlMode;
|
|
16
18
|
}
|
|
17
19
|
export declare function configPath(env?: NodeJS.ProcessEnv): string;
|
|
18
20
|
export declare function readConfigFile(file?: string): FileportConfigFile;
|
package/dist/config.js
CHANGED
|
@@ -3,6 +3,13 @@ import os from "node:os";
|
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { fileURLToPath } from "node:url";
|
|
5
5
|
import { normalizePublicUrl } from "./network.js";
|
|
6
|
+
function validPublicMode(value) {
|
|
7
|
+
if (value === undefined || value === null || value === "")
|
|
8
|
+
return "direct";
|
|
9
|
+
if (value !== "direct" && value !== "proxy")
|
|
10
|
+
throw new Error(`invalid public mode: ${String(value)}`);
|
|
11
|
+
return value;
|
|
12
|
+
}
|
|
6
13
|
function validPort(value, fallback) {
|
|
7
14
|
if (value === undefined || value === null || value === "")
|
|
8
15
|
return fallback;
|
|
@@ -63,7 +70,8 @@ export function loadConfig(env = process.env, overrides = {}) {
|
|
|
63
70
|
const stateHome = env.XDG_STATE_HOME || path.join(os.homedir(), ".local", "state"), file = readConfigFile(configPath(env));
|
|
64
71
|
const publicRaw = overrides.publicBaseUrl ?? env.FILEPORT_PUBLIC_BASE_URL ?? file.public?.url ?? undefined;
|
|
65
72
|
const publicBaseUrl = publicRaw ? normalizePublicUrl(publicRaw).toString().replace(/\/$/, "") : undefined;
|
|
73
|
+
const publicMode = validPublicMode(overrides.publicMode ?? env.FILEPORT_PUBLIC_MODE ?? file.public?.mode);
|
|
66
74
|
const packagedDufs = fileURLToPath(new URL("../vendor/dufs", import.meta.url));
|
|
67
|
-
return { stateDir: path.resolve(env.FILEPORT_STATE_DIR || path.join(stateHome, "fileport")), host: overrides.host ?? env.FILEPORT_HOST ?? file.bind?.host ?? "0.0.0.0", port: validPort(overrides.port ?? env.FILEPORT_PORT ?? file.bind?.port, 7892), dufsBin: path.resolve(env.FILEPORT_DUFS_BIN || packagedDufs), publicBaseUrl, configFile: configPath(env) };
|
|
75
|
+
return { stateDir: path.resolve(env.FILEPORT_STATE_DIR || path.join(stateHome, "fileport")), host: overrides.host ?? env.FILEPORT_HOST ?? file.bind?.host ?? "0.0.0.0", port: validPort(overrides.port ?? env.FILEPORT_PORT ?? file.bind?.port, 7892), dufsBin: path.resolve(env.FILEPORT_DUFS_BIN || packagedDufs), publicBaseUrl, publicMode, configFile: configPath(env) };
|
|
68
76
|
}
|
|
69
77
|
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAMlD,SAAS,eAAe,CAAC,KAAc;IACrC,IAAI,KAAK,KAAG,SAAS,IAAE,KAAK,KAAG,IAAI,IAAE,KAAK,KAAG,EAAE;QAAE,OAAO,QAAQ,CAAC;IACjE,IAAI,KAAK,KAAG,QAAQ,IAAE,KAAK,KAAG,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAChG,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,SAAS,CAAC,KAAc,EAAE,QAAgB;IACjD,IAAI,KAAK,KAAG,SAAS,IAAE,KAAK,KAAG,IAAI,IAAE,KAAK,KAAG,EAAE;QAAE,OAAO,QAAQ,CAAC;IAAC,MAAM,MAAM,GAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7F,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAE,MAAM,GAAC,CAAC,IAAE,MAAM,GAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAAC,OAAO,MAAM,CAAC;AAC1H,CAAC;AACD,MAAM,UAAU,UAAU,CAAC,MAAsB,OAAO,CAAC,GAAG,IAAW,MAAM,IAAI,GAAC,GAAG,CAAC,eAAe,IAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAC,SAAS,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAC,UAAU,EAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AACpO,MAAM,UAAU,cAAc,CAAC,IAAI,GAAC,UAAU,EAAE;IAC9C,IAAI,CAAC;QAAC,MAAM,KAAK,GAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAC,MAAM,CAAC,CAAC,CAAC;QAAC,IAAI,CAAC,KAAK,IAAE,OAAO,KAAK,KAAG,QAAQ,IAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAAC,OAAO,KAAK,CAAC;IAAC,CAAC;IAC5K,OAAM,KAAK,EAAC,CAAC;QAAC,IAAK,KAA+B,CAAC,IAAI,KAAG,QAAQ;YAAE,OAAO,EAAE,CAAC;QAAC,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,KAAK,KAAK,YAAY,KAAK,CAAA,CAAC,CAAA,KAAK,CAAC,OAAO,CAAA,CAAC,CAAA,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAAC,CAAC;AAC7L,CAAC;AACD,MAAM,UAAU,eAAe,CAAC,KAAwB,EAAC,IAAI,GAAC,UAAU,EAAE;IACxE,MAAM,GAAG,GAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAAC,EAAE,CAAC,SAAS,CAAC,GAAG,EAAC,EAAC,SAAS,EAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,CAAC,CAAC;IAAC,EAAE,CAAC,SAAS,CAAC,GAAG,EAAC,KAAK,CAAC,CAAC;IAAC,MAAM,IAAI,GAAC,GAAG,IAAI,IAAI,OAAO,CAAC,GAAG,MAAM,CAAC;IAAC,IAAI,EAAmB,CAAC;IACvK,IAAI,CAAC;QAAC,EAAE,GAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAC,IAAI,EAAC,KAAK,CAAC,CAAC;QAAC,EAAE,CAAC,aAAa,CAAC,EAAE,EAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAC,IAAI,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAAC,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAAC,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAAC,EAAE,GAAC,SAAS,CAAC;QAAC,EAAE,CAAC,UAAU,CAAC,IAAI,EAAC,IAAI,CAAC,CAAC;QAAC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAC,KAAK,CAAC,CAAC;QAAC,MAAM,SAAS,GAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAC,GAAG,CAAC,CAAC;QAAC,IAAG,CAAC;YAAA,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAAA,CAAC;gBAAO,CAAC;YAAA,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAAA,CAAC;IAAC,CAAC;YACrS,CAAC;QAAC,IAAG,EAAE,KAAG,SAAS;YAAC,IAAG,CAAC;gBAAA,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAAA,CAAC;YAAA,MAAK,CAAC,CAAA,CAAC;QAAC,IAAG,CAAC;YAAA,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAAA,CAAC;QAAA,MAAK,CAAC,CAAA,CAAC;IAAC,CAAC;AAC9F,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAsB,OAAO,CAAC,GAAG,EAAC,YAA0B,EAAE;IACvF,MAAM,SAAS,GAAC,GAAG,CAAC,cAAc,IAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAC,QAAQ,EAAC,OAAO,CAAC,EAAE,IAAI,GAAC,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IACnH,MAAM,SAAS,GAAC,SAAS,CAAC,aAAa,IAAE,GAAG,CAAC,wBAAwB,IAAE,IAAI,CAAC,MAAM,EAAE,GAAG,IAAE,SAAS,CAAC;IACnG,MAAM,aAAa,GAAC,SAAS,CAAA,CAAC,CAAA,kBAAkB,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,EAAC,EAAE,CAAC,CAAA,CAAC,CAAA,SAAS,CAAC;IACnG,MAAM,UAAU,GAAC,eAAe,CAAC,SAAS,CAAC,UAAU,IAAE,GAAG,CAAC,oBAAoB,IAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACpG,MAAM,YAAY,GAAC,aAAa,CAAC,IAAI,GAAG,CAAC,gBAAgB,EAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5E,OAAO,EAAC,QAAQ,EAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAC,UAAU,CAAC,CAAC,EAAC,IAAI,EAAC,SAAS,CAAC,IAAI,IAAE,GAAG,CAAC,aAAa,IAAE,IAAI,CAAC,IAAI,EAAE,IAAI,IAAE,SAAS,EAAC,IAAI,EAAC,SAAS,CAAC,SAAS,CAAC,IAAI,IAAE,GAAG,CAAC,aAAa,IAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAC,IAAI,CAAC,EAAC,OAAO,EAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAE,YAAY,CAAC,EAAC,aAAa,EAAC,UAAU,EAAC,UAAU,EAAC,UAAU,CAAC,GAAG,CAAC,EAAC,CAAC;AACnV,CAAC"}
|
package/dist/gateway.js
CHANGED
|
@@ -65,7 +65,7 @@ export class Gateway {
|
|
|
65
65
|
await this.lockFile.writeFile(`${process.pid}\n`);
|
|
66
66
|
await this.lockFile.sync();
|
|
67
67
|
await this.registry.load();
|
|
68
|
-
this.publicSnapshot = await this.addressResolver.inspect({ host: this.config.host, port: this.config.port, publicBaseUrl: this.config.publicBaseUrl }, true);
|
|
68
|
+
this.publicSnapshot = await this.addressResolver.inspect({ host: this.config.host, port: this.config.port, publicBaseUrl: this.config.publicBaseUrl, publicMode: this.config.publicMode }, true);
|
|
69
69
|
try {
|
|
70
70
|
await fs.unlink(this.controlSocket);
|
|
71
71
|
}
|
|
@@ -115,7 +115,7 @@ export class Gateway {
|
|
|
115
115
|
}
|
|
116
116
|
async probeListener() {
|
|
117
117
|
const primary = this.config.host === "0.0.0.0" ? "127.0.0.1" : this.config.host === "::" ? "::1" : this.config.host;
|
|
118
|
-
const advertised = this.publicSnapshot?.dns?.resolved ?? (this.publicSnapshot?.advertisedAddress?.kind === "configured-ip" || this.publicSnapshot?.advertisedAddress?.kind === "lan-ip" ? [this.publicSnapshot.advertisedAddress.host] : []);
|
|
118
|
+
const advertised = this.publicSnapshot?.publicMode === "proxy" ? [] : this.publicSnapshot?.dns?.resolved ?? (this.publicSnapshot?.advertisedAddress?.kind === "configured-ip" || this.publicSnapshot?.advertisedAddress?.kind === "lan-ip" ? [this.publicSnapshot.advertisedAddress.host] : []);
|
|
119
119
|
for (const host of [...new Set([primary, ...advertised])])
|
|
120
120
|
await this.probeHost(host);
|
|
121
121
|
}
|
|
@@ -123,7 +123,7 @@ export class Gateway {
|
|
|
123
123
|
async handleControl(req, res) {
|
|
124
124
|
const url = new URL(req.url || "/", "http://localhost");
|
|
125
125
|
if (req.method === "POST" && url.pathname === "/shares") {
|
|
126
|
-
const snapshot = await this.addressResolver.inspect({ host: this.config.host, port: this.config.port, publicBaseUrl: this.config.publicBaseUrl }, true);
|
|
126
|
+
const snapshot = await this.addressResolver.inspect({ host: this.config.host, port: this.config.port, publicBaseUrl: this.config.publicBaseUrl, publicMode: this.config.publicMode }, true);
|
|
127
127
|
if (!snapshot.publicBaseUrl)
|
|
128
128
|
throw new PublicAddressError("NO_LAN_ADDRESS", "no LAN IPv4 address found; connect a network or configure public.url");
|
|
129
129
|
this.publicSnapshot = snapshot;
|
|
@@ -135,7 +135,7 @@ export class Gateway {
|
|
|
135
135
|
return json(res, 200, { shares: this.registry.list() });
|
|
136
136
|
if (req.method === "GET" && url.pathname === "/doctor") {
|
|
137
137
|
try {
|
|
138
|
-
this.publicSnapshot = await this.addressResolver.inspect({ host: this.config.host, port: this.config.port, publicBaseUrl: this.config.publicBaseUrl }, true);
|
|
138
|
+
this.publicSnapshot = await this.addressResolver.inspect({ host: this.config.host, port: this.config.port, publicBaseUrl: this.config.publicBaseUrl, publicMode: this.config.publicMode }, true);
|
|
139
139
|
return json(res, 200, { bind: { host: this.config.host, port: this.config.port }, ...this.publicSnapshot });
|
|
140
140
|
}
|
|
141
141
|
catch (error) {
|
package/dist/gateway.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway.js","sourceRoot":"","sources":["../src/gateway.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gateway.js","sourceRoot":"","sources":["../src/gateway.ts"],"names":[],"mappings":"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"}
|
package/dist/network.d.ts
CHANGED
|
@@ -14,14 +14,16 @@ export interface DnsSnapshot {
|
|
|
14
14
|
localMatches: string[];
|
|
15
15
|
checkedAt: string;
|
|
16
16
|
}
|
|
17
|
+
export type PublicUrlMode = "direct" | "proxy";
|
|
17
18
|
export interface AdvertisedAddress {
|
|
18
|
-
kind: "lan-ip" | "configured-hostname" | "configured-ip" | "local-only";
|
|
19
|
+
kind: "lan-ip" | "configured-hostname" | "configured-ip" | "configured-proxy" | "local-only";
|
|
19
20
|
host: string;
|
|
20
21
|
validatedAt: string;
|
|
21
22
|
}
|
|
22
23
|
export interface PublicSnapshot {
|
|
23
24
|
status: "ok" | "degraded" | "local-only";
|
|
24
25
|
publicBaseUrl?: string;
|
|
26
|
+
publicMode?: PublicUrlMode;
|
|
25
27
|
selectedLanIp?: string;
|
|
26
28
|
candidates: AddressCandidate[];
|
|
27
29
|
advertisedAddress?: AdvertisedAddress;
|
|
@@ -59,6 +61,7 @@ export declare class PublicAddressResolver {
|
|
|
59
61
|
host: string;
|
|
60
62
|
port: number;
|
|
61
63
|
publicBaseUrl?: string;
|
|
64
|
+
publicMode?: PublicUrlMode;
|
|
62
65
|
}, fresh?: boolean): Promise<PublicSnapshot>;
|
|
63
66
|
}
|
|
64
67
|
export declare function normalizePublicUrl(value: string): URL;
|
package/dist/network.js
CHANGED
|
@@ -134,24 +134,42 @@ export class PublicAddressResolver {
|
|
|
134
134
|
let snapshot;
|
|
135
135
|
if (!input.publicBaseUrl) {
|
|
136
136
|
const selected = candidates.find(candidate => bindCovers(input.host, candidate.address));
|
|
137
|
-
snapshot = selected ? { status: "ok", publicBaseUrl: `http://${selected.address}:${input.port}`, selectedLanIp: selected.address, candidates, advertisedAddress: { kind: "lan-ip", host: selected.address, validatedAt: now.toISOString() }, warnings }
|
|
137
|
+
snapshot = selected ? { status: "ok", publicBaseUrl: `http://${selected.address}:${input.port}`, publicMode: "direct", selectedLanIp: selected.address, candidates, advertisedAddress: { kind: "lan-ip", host: selected.address, validatedAt: now.toISOString() }, warnings }
|
|
138
138
|
: { status: "local-only", publicBaseUrl: undefined, candidates, warnings: [candidates.length ? `bind host ${input.host} does not cover any LAN IPv4 candidate` : "no LAN IPv4 address found; connect a network or configure public.url"] };
|
|
139
139
|
}
|
|
140
140
|
else {
|
|
141
141
|
const url = normalizePublicUrl(input.publicBaseUrl);
|
|
142
|
-
const
|
|
143
|
-
if (url.port !== expectedPort)
|
|
144
|
-
throw new PublicAddressError("PUBLIC_PORT_MISMATCH", `public URL port ${url.port || 80} does not match listener port ${input.port}`);
|
|
142
|
+
const publicMode = input.publicMode ?? "direct";
|
|
145
143
|
const hostname = url.hostname.replace(/^\[|\]$/g, "");
|
|
146
144
|
const locals = localAddresses(this.adapter);
|
|
147
145
|
const ipKind = net.isIP(hostname);
|
|
146
|
+
if (publicMode === "proxy") {
|
|
147
|
+
let dns;
|
|
148
|
+
if (!ipKind) {
|
|
149
|
+
try {
|
|
150
|
+
const { addresses, chain } = await resolveAll(hostname, this.adapter);
|
|
151
|
+
dns = { hostname, cnameChain: chain, resolved: addresses, localMatches: addresses.filter(address => locals.has(address)), checkedAt: now.toISOString() };
|
|
152
|
+
}
|
|
153
|
+
catch (error) {
|
|
154
|
+
warnings.push(`public proxy DNS check failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
snapshot = { status: warnings.length ? "degraded" : "ok", publicBaseUrl: url.toString().replace(/\/$/, ""), publicMode, candidates, advertisedAddress: { kind: "configured-proxy", host: hostname, validatedAt: now.toISOString() }, dns, warnings };
|
|
158
|
+
this.cache = { key, at: now.getTime(), snapshot };
|
|
159
|
+
return snapshot;
|
|
160
|
+
}
|
|
161
|
+
if (url.protocol !== "http:")
|
|
162
|
+
throw new PublicAddressError("DIRECT_URL_REQUIRES_HTTP", "direct public URL must use HTTP; use public mode proxy for an HTTPS reverse proxy or tunnel");
|
|
163
|
+
const expectedPort = input.port === 80 ? "" : String(input.port);
|
|
164
|
+
if (url.port !== expectedPort)
|
|
165
|
+
throw new PublicAddressError("PUBLIC_PORT_MISMATCH", `public URL port ${url.port || 80} does not match listener port ${input.port}`);
|
|
148
166
|
if (ipKind) {
|
|
149
167
|
const normalized = normalizeIp(hostname);
|
|
150
168
|
if (!locals.has(normalized))
|
|
151
169
|
throw new PublicAddressError("PUBLIC_IP_NOT_LOCAL", `public IP ${hostname} is not assigned to this machine`);
|
|
152
170
|
if (!bindCovers(input.host, normalized))
|
|
153
171
|
throw new PublicAddressError("PUBLIC_IP_NOT_BOUND", `bind host ${input.host} does not cover public IP ${hostname}`);
|
|
154
|
-
snapshot = { status: "ok", publicBaseUrl: url.toString().replace(/\/$/, ""), candidates, advertisedAddress: { kind: normalized === "127.0.0.1" || normalized === "::1" ? "local-only" : "configured-ip", host: hostname, validatedAt: now.toISOString() }, warnings };
|
|
172
|
+
snapshot = { status: "ok", publicBaseUrl: url.toString().replace(/\/$/, ""), publicMode, candidates, advertisedAddress: { kind: normalized === "127.0.0.1" || normalized === "::1" ? "local-only" : "configured-ip", host: hostname, validatedAt: now.toISOString() }, warnings };
|
|
155
173
|
}
|
|
156
174
|
else {
|
|
157
175
|
const { addresses, chain } = await resolveAll(hostname, this.adapter), matches = addresses.filter(a => locals.has(a));
|
|
@@ -164,7 +182,7 @@ export class PublicAddressResolver {
|
|
|
164
182
|
const uncovered = addresses.filter(a => !bindCovers(input.host, a));
|
|
165
183
|
if (uncovered.length)
|
|
166
184
|
throw new PublicAddressError("DNS_NOT_BOUND", `bind host ${input.host} does not cover resolved addresses [${uncovered.join(", ")}]`);
|
|
167
|
-
snapshot = { status: "ok", publicBaseUrl: url.toString().replace(/\/$/, ""), candidates, advertisedAddress: { kind: "configured-hostname", host: hostname, validatedAt: now.toISOString() }, dns: { hostname, cnameChain: chain, resolved: addresses, localMatches: matches, checkedAt: now.toISOString() }, warnings };
|
|
185
|
+
snapshot = { status: "ok", publicBaseUrl: url.toString().replace(/\/$/, ""), publicMode, candidates, advertisedAddress: { kind: "configured-hostname", host: hostname, validatedAt: now.toISOString() }, dns: { hostname, cnameChain: chain, resolved: addresses, localMatches: matches, checkedAt: now.toISOString() }, warnings };
|
|
168
186
|
}
|
|
169
187
|
}
|
|
170
188
|
this.cache = { key, at: now.getTime(), snapshot };
|
|
@@ -179,8 +197,8 @@ export function normalizePublicUrl(value) {
|
|
|
179
197
|
catch {
|
|
180
198
|
throw new PublicAddressError("INVALID_PUBLIC_URL", `invalid public URL: ${value}`);
|
|
181
199
|
}
|
|
182
|
-
if (url.protocol !== "http:")
|
|
183
|
-
throw new PublicAddressError("INVALID_PUBLIC_URL", "
|
|
200
|
+
if (url.protocol !== "http:" && url.protocol !== "https:")
|
|
201
|
+
throw new PublicAddressError("INVALID_PUBLIC_URL", "public URL must use HTTP or HTTPS");
|
|
184
202
|
if (url.username || url.password || url.search || url.hash)
|
|
185
203
|
throw new PublicAddressError("INVALID_PUBLIC_URL", "public URL must not contain userinfo, query, or fragment");
|
|
186
204
|
if (url.pathname !== "/" && url.pathname !== "")
|
package/dist/network.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network.js","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"network.js","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export type ShareKind = "file" | "directory";
|
|
2
2
|
export type SharePermission = "ro" | "rw";
|
|
3
|
+
export type PublicUrlMode = "direct" | "proxy";
|
|
3
4
|
export interface Share {
|
|
4
5
|
id: string;
|
|
5
6
|
target: string;
|
|
@@ -15,5 +16,6 @@ export interface FileportConfig {
|
|
|
15
16
|
port: number;
|
|
16
17
|
dufsBin: string;
|
|
17
18
|
publicBaseUrl?: string;
|
|
19
|
+
publicMode: PublicUrlMode;
|
|
18
20
|
configFile: string;
|
|
19
21
|
}
|
package/docs/NETWORK_AND_CLI.md
CHANGED
|
@@ -2,26 +2,39 @@
|
|
|
2
2
|
|
|
3
3
|
## Bind versus advertised URL
|
|
4
4
|
|
|
5
|
-
`bind.host`/`bind.port` control the HTTP listener. `public.url` controls only generated share URLs. A hostname is never passed to `listen()`.
|
|
5
|
+
`bind.host`/`bind.port` control the HTTP origin listener. `public.url` controls only generated share URLs. A hostname is never passed to `listen()`.
|
|
6
6
|
|
|
7
7
|
Priority: command flags > environment > `~/.config/fileport/config.json` > defaults.
|
|
8
8
|
|
|
9
|
+
Direct mode is the default and preserves the strict all-local DNS policy:
|
|
10
|
+
|
|
9
11
|
```json
|
|
10
12
|
{
|
|
11
13
|
"bind": { "host": "0.0.0.0", "port": 7892 },
|
|
12
|
-
"public": { "url": "http://files.example.com:7892", "dnsPolicy": "all-local" }
|
|
14
|
+
"public": { "url": "http://files.example.com:7892", "mode": "direct", "dnsPolicy": "all-local" }
|
|
13
15
|
}
|
|
14
16
|
```
|
|
15
17
|
|
|
18
|
+
Proxy mode is for a reverse proxy or tunnel that terminates public HTTP(S) and forwards to the Fileport HTTP listener:
|
|
19
|
+
|
|
20
|
+
```json
|
|
21
|
+
{
|
|
22
|
+
"bind": { "host": "127.0.0.1", "port": 7892 },
|
|
23
|
+
"public": { "url": "https://files.example.com", "mode": "proxy" }
|
|
24
|
+
}
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
The corresponding CLI is `fileport config set --host 127.0.0.1 --public-url https://files.example.com --public-mode proxy`. Restart Fileport after changing persistent configuration.
|
|
28
|
+
|
|
16
29
|
The config directory is 0700 and file 0600. Restart Fileport after persistent config changes.
|
|
17
30
|
|
|
18
31
|
## Automatic LAN URL
|
|
19
32
|
|
|
20
33
|
Without `public.url`, Fileport selects a non-loopback IPv4 on the default-route interface, excluding link-local and common virtual interfaces. Private IPv4 is preferred. IPv6 is used only when explicitly configured. If no listener-covered LAN IPv4 exists, the daemon may run local-only but new shares fail closed.
|
|
21
34
|
|
|
22
|
-
##
|
|
35
|
+
## Direct mode: strict DNS policy
|
|
23
36
|
|
|
24
|
-
|
|
37
|
+
In direct mode, configured hostnames are resolved through CNAME (maximum eight hops), A, and AAAA. Every final address must:
|
|
25
38
|
|
|
26
39
|
1. be a shareable non-loopback address;
|
|
27
40
|
2. exist on a local network interface; and
|
|
@@ -29,6 +42,12 @@ Configured hostnames are resolved through CNAME (maximum eight hops), A, and AAA
|
|
|
29
42
|
|
|
30
43
|
Mixed local/remote DNS is rejected. Dual-stack DNS requires a dual-stack listener such as `bind.host="::"`. DNS is checked at startup and before each new share. Existing capabilities are not rewritten if DNS later drifts.
|
|
31
44
|
|
|
45
|
+
## Proxy mode
|
|
46
|
+
|
|
47
|
+
Proxy mode permits `http://` or `https://` public URLs whose hostname resolves to a remote proxy or CDN. It intentionally does not require the public URL's port or addresses to match the origin listener. DNS resolution is included in `doctor` output when available and degrades to a warning when unavailable.
|
|
48
|
+
|
|
49
|
+
This mode only changes URL advertisement; it does not create, authenticate, or health-check the proxy/tunnel. Bind the Fileport origin as narrowly as the proxy permits (normally `127.0.0.1`) and verify a generated capability URL through the public endpoint.
|
|
50
|
+
|
|
32
51
|
## Agent contract
|
|
33
52
|
|
|
34
53
|
All operational commands accept `--json`. In JSON mode stdout contains exactly one JSON object; diagnostics use stderr. Default `share` stdout remains the URL only.
|