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>;
#connected = false;
system = new LowDBSystem(this.#db);
user = new LowDBUser(this.#db);
client = new LowDBClient(this.#db);
private async __init() {
const dbFilePath = '/etc/wireguard/db.json';
this.#db = await JSONFilePreset(dbFilePath, DEFAULT_DATABASE);
}
system!: LowDBSystem;
user!: LowDBUser;
client!: LowDBClient;
/**
* @throws
@ -221,7 +216,12 @@ export default class LowDB extends DatabaseProvider {
return;
}
try {
await this.__init();
DEBUG('Connecting');
this.#db = await JSONFilePreset(
'/etc/wireguard/db.json',
DEFAULT_DATABASE
);
DEBUG('Running Migrations');
await migrationRunner(this.#db);
DEBUG('Migrations ran successfully');
@ -229,6 +229,9 @@ export default class LowDB extends DatabaseProvider {
DEBUG(e);
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;
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
database.system.iptables.PostUp = `
iptables -t nat -A POSTROUTING -s ${database.system.userConfig.address4Range} -o ${database.system.wgDevice} -j MASQUERADE;
database.system.iptables.PostUp =
`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 FORWARD -i 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 -A INPUT -p udp -m udp --dport ${database.system.wgPort} -j ACCEPT;
ip6tables -A FORWARD -i wg0 -j ACCEPT;
ip6tables -A FORWARD -o wg0 -j ACCEPT;
`
.split('\n')
.join(' ');
ip6tables -A FORWARD -o wg0 -j ACCEPT;`
.split('\n')
.join(' ');
database.system.iptables.PostDown = `
iptables -t nat -D POSTROUTING -s ${database.system.userConfig.address4Range} -o ${database.system.wgDevice} -j MASQUERADE;
database.system.iptables.PostDown =
`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 FORWARD -i 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 -D INPUT -p udp -m udp --dport ${database.system.wgPort} -j ACCEPT;
ip6tables -D FORWARD -i wg0 -j ACCEPT;
ip6tables -D FORWARD -o wg0 -j ACCEPT;
`
.split('\n')
.join(' ');
ip6tables -D FORWARD -o wg0 -j ACCEPT;`
.split('\n')
.join(' ');
db.data = database;
db.write();

Loading…
Cancel
Save