Add monorepo structure for NexaVPN WireGuard control plane including: - .gitignore for node_modules, build artifacts, and environment files - README with project overview, monorepo layout, and quick start guide - Admin web UI with React, Vite, TypeScript, and nginx reverse proxy - API client with type definitions for users, devices, policies, gateways, and audit logs - Admin pages for dashboard, users, devices, policies, g
25 lines
719 B
SQL
25 lines
719 B
SQL
insert into roles (name, description)
|
|
values
|
|
('admin', 'NexaVPN administrator'),
|
|
('user', 'Standard VPN user')
|
|
on conflict (name) do nothing;
|
|
|
|
insert into settings (category, key, value)
|
|
values
|
|
('vpn', 'default_dns_servers', '["10.20.0.53"]'::jsonb),
|
|
('auth', 'access_token_ttl_seconds', '900'::jsonb),
|
|
('auth', 'refresh_token_ttl_seconds', '2592000'::jsonb)
|
|
on conflict (category, key) do nothing;
|
|
|
|
insert into gateways (name, endpoint, public_key, listen_port, vpn_cidr, dns_servers, is_active)
|
|
values (
|
|
'primary-gateway',
|
|
'vpn.example.com:51820',
|
|
'replace-me-with-gateway-public-key',
|
|
51820,
|
|
'100.96.0.0/24',
|
|
array['10.20.0.53'],
|
|
true
|
|
)
|
|
on conflict (name) do nothing;
|