diff --git a/src/commands/wallet/WalletAction.ts b/src/commands/wallet/WalletAction.ts index e66982d6..edc5c5a5 100644 --- a/src/commands/wallet/WalletAction.ts +++ b/src/commands/wallet/WalletAction.ts @@ -83,7 +83,10 @@ export class WalletAction extends BaseAction { const client = new WalletSessionClient(ready); const state = await client.state(); this.logInfo(`Open this URL in a browser with your wallet to connect:\n ${state.url}`); - this.logInfo("(Remote/SSH? Forward the port first: ssh -L :127.0.0.1: ...)"); + this.logInfo( + "(Remote/SSH? Forward the port first: ssh -L :127.0.0.1: ...; " + + "do not use -g, GatewayPorts yes, or bind the local side to a public interface.)", + ); this.startSpinner("Waiting for wallet connection..."); try { diff --git a/src/lib/config/ConfigFileManager.ts b/src/lib/config/ConfigFileManager.ts index 4393e5a3..48e7564e 100644 --- a/src/lib/config/ConfigFileManager.ts +++ b/src/lib/config/ConfigFileManager.ts @@ -26,14 +26,16 @@ export class ConfigFileManager { private ensureFolderExists(): void { if (!fs.existsSync(this.folderPath)) { - fs.mkdirSync(this.folderPath, { recursive: true }); + fs.mkdirSync(this.folderPath, { recursive: true, mode: 0o700 }); } + fs.chmodSync(this.folderPath, 0o700); } private ensureKeystoresDirExists(): void { if (!fs.existsSync(this.keystoresPath)) { - fs.mkdirSync(this.keystoresPath, { recursive: true }); + fs.mkdirSync(this.keystoresPath, { recursive: true, mode: 0o700 }); } + fs.chmodSync(this.keystoresPath, 0o700); } private ensureConfigFileExists(): void { diff --git a/src/lib/wallet/bridgePage.ts b/src/lib/wallet/bridgePage.ts index 90f04c4d..178fff4a 100644 --- a/src/lib/wallet/bridgePage.ts +++ b/src/lib/wallet/bridgePage.ts @@ -63,6 +63,7 @@ export const BRIDGE_PAGE_HTML = /* html */ `