Browse Source

fix errors

pull/1380/head
Bernd Storath 2 years ago
parent
commit
29454c8e38
  1. 21
      src/services/database/lowdb.ts
  2. 22
      src/services/database/migrations/1.ts

21
src/services/database/lowdb.ts

@ -204,14 +204,9 @@ export default class LowDB extends DatabaseProvider {
#db!: Low<Database>; #db!: Low<Database>;
#connected = false; #connected = false;
system = new LowDBSystem(this.#db); system!: LowDBSystem;
user = new LowDBUser(this.#db); user!: LowDBUser;
client = new LowDBClient(this.#db); client!: LowDBClient;
private async __init() {
const dbFilePath = '/etc/wireguard/db.json';
this.#db = await JSONFilePreset(dbFilePath, DEFAULT_DATABASE);
}
/** /**
* @throws * @throws
@ -221,7 +216,12 @@ export default class LowDB extends DatabaseProvider {
return; return;
} }
try { try {
await this.__init(); DEBUG('Connecting');
this.#db = await JSONFilePreset(
'/etc/wireguard/db.json',
DEFAULT_DATABASE
);
DEBUG('Running Migrations'); DEBUG('Running Migrations');
await migrationRunner(this.#db); await migrationRunner(this.#db);
DEBUG('Migrations ran successfully'); DEBUG('Migrations ran successfully');
@ -229,6 +229,9 @@ export default class LowDB extends DatabaseProvider {
DEBUG(e); DEBUG(e);
throw new Error('Failed to initialize Database'); throw new Error('Failed to initialize Database');
} }
this.system = new LowDBSystem(this.#db);
this.user = new LowDBUser(this.#db);
this.client = new LowDBClient(this.#db);
this.#connected = true; this.#connected = true;
DEBUG('Connected successfully'); DEBUG('Connected successfully');
} }

22
src/services/database/migrations/1.ts

@ -72,31 +72,29 @@ export async function run1(db: Low<Database>) {
}; };
// TODO: properly check if ipv6 support // TODO: properly check if ipv6 support
database.system.iptables.PostUp = ` database.system.iptables.PostUp =
iptables -t nat -A POSTROUTING -s ${database.system.userConfig.address4Range} -o ${database.system.wgDevice} -j MASQUERADE; `iptables -t nat -A POSTROUTING -s ${database.system.userConfig.address4Range} -o ${database.system.wgDevice} -j MASQUERADE;
iptables -A INPUT -p udp -m udp --dport ${database.system.wgPort} -j ACCEPT; iptables -A INPUT -p udp -m udp --dport ${database.system.wgPort} -j ACCEPT;
iptables -A FORWARD -i wg0 -j ACCEPT; iptables -A FORWARD -i wg0 -j ACCEPT;
iptables -A FORWARD -o wg0 -j ACCEPT; iptables -A FORWARD -o wg0 -j ACCEPT;
ip6tables -t nat -A POSTROUTING -s ${database.system.userConfig.address6Range} -o ${database.system.wgDevice} -j MASQUERADE; ip6tables -t nat -A POSTROUTING -s ${database.system.userConfig.address6Range} -o ${database.system.wgDevice} -j MASQUERADE;
ip6tables -A INPUT -p udp -m udp --dport ${database.system.wgPort} -j ACCEPT; ip6tables -A INPUT -p udp -m udp --dport ${database.system.wgPort} -j ACCEPT;
ip6tables -A FORWARD -i wg0 -j ACCEPT; ip6tables -A FORWARD -i wg0 -j ACCEPT;
ip6tables -A FORWARD -o wg0 -j ACCEPT; ip6tables -A FORWARD -o wg0 -j ACCEPT;`
` .split('\n')
.split('\n') .join(' ');
.join(' ');
database.system.iptables.PostDown = ` database.system.iptables.PostDown =
iptables -t nat -D POSTROUTING -s ${database.system.userConfig.address4Range} -o ${database.system.wgDevice} -j MASQUERADE; `iptables -t nat -D POSTROUTING -s ${database.system.userConfig.address4Range} -o ${database.system.wgDevice} -j MASQUERADE;
iptables -D INPUT -p udp -m udp --dport ${database.system.wgPort} -j ACCEPT; iptables -D INPUT -p udp -m udp --dport ${database.system.wgPort} -j ACCEPT;
iptables -D FORWARD -i wg0 -j ACCEPT; iptables -D FORWARD -i wg0 -j ACCEPT;
iptables -D FORWARD -o wg0 -j ACCEPT; iptables -D FORWARD -o wg0 -j ACCEPT;
ip6tables -t nat -D POSTROUTING -s ${database.system.userConfig.address6Range} -o ${database.system.wgDevice} -j MASQUERADE; ip6tables -t nat -D POSTROUTING -s ${database.system.userConfig.address6Range} -o ${database.system.wgDevice} -j MASQUERADE;
ip6tables -D INPUT -p udp -m udp --dport ${database.system.wgPort} -j ACCEPT; ip6tables -D INPUT -p udp -m udp --dport ${database.system.wgPort} -j ACCEPT;
ip6tables -D FORWARD -i wg0 -j ACCEPT; ip6tables -D FORWARD -i wg0 -j ACCEPT;
ip6tables -D FORWARD -o wg0 -j ACCEPT; ip6tables -D FORWARD -o wg0 -j ACCEPT;`
` .split('\n')
.split('\n') .join(' ');
.join(' ');
db.data = database; db.data = database;
db.write(); db.write();

Loading…
Cancel
Save