feat: 支持证书托管和节点自动安装

This commit is contained in:
2026-09-29 13:06:56 +08:00
parent ab7d1c937a
commit 586c2399d1
20 changed files with 1600 additions and 20 deletions
+27
View File
@@ -172,6 +172,33 @@ const MIGRATIONS: (string | ((db: Database.Database) => void))[] = [
ALTER TABLE hy2_nodes ADD COLUMN hy2_listen TEXT NOT NULL DEFAULT ':443';
`,
ensureCustomNodeColumns,
`
CREATE TABLE managed_certificates (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
certificate_pem TEXT NOT NULL,
private_key_encrypted TEXT NOT NULL,
expires_at TEXT NOT NULL,
created_at TEXT NOT NULL
);
CREATE TABLE node_installations (
id TEXT PRIMARY KEY,
token_hash TEXT NOT NULL UNIQUE,
token_encrypted TEXT NOT NULL,
certificate_id INTEGER NOT NULL REFERENCES managed_certificates(id) ON DELETE RESTRICT,
slug TEXT NOT NULL UNIQUE,
name TEXT NOT NULL,
server_host TEXT NOT NULL,
sni TEXT NOT NULL,
origin TEXT NOT NULL,
expires_at TEXT NOT NULL,
created_at TEXT NOT NULL,
revoked_at TEXT,
completed_at TEXT,
ports_json TEXT,
node_id INTEGER REFERENCES hy2_nodes(id) ON DELETE CASCADE
);
`,
];
export function migrateDatabase(db: Database.Database) {