Commit graph

108 commits

Author SHA1 Message Date
hhftechnologies
3593d6ec2c Fix: serversTransports from Pangolin config not passed through to Traefik
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
Tests / Lint (push) Has been cancelled
Tests / Build (push) Has been cancelled
2026-03-22 11:41:16 +05:30
hhftechnologies
8f2c5861dc Issues solved by gerthomas
Some checks failed
Tests / Lint (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
Build and Push Docker Image / build-and-push (push) Has been cancelled
Tests / Build (push) Has been cancelled
An "incorrect password" error is received when importing the generated Client .p12 mTLS certificate on iOS.

My understanding is this is frequently caused by incompatible encryption methods between modern certificate generation tools (like OpenSSL 3.x and in this case SSLMate’s go-pkcs12 Modern) and iOS’s older security standards.

The relevant portion of code is below:

// Generate PKCS#12 (.p12) file
p12Data, err := pkcs12.Modern.Encode(clientKey, clientCert, []*x509.Certificate{caCert}, req.P12Password)
if err != nil {
	return nil, fmt.Errorf("failed to generate PKCS#12: %w", err)
}
If this is changed to:

// Generate PKCS#12 (.p12) file
p12Data, err := pkcs12.Legacy.Encode(clientKey, clientCert, []*x509.Certificate{caCert}, req.P12Password)
if err != nil {
	return nil, fmt.Errorf("failed to generate PKCS#12: %w", err)
}
The generated client certificates can be imported by iOS devices.

I have forked the repo and tested it (it works) but would not advocate this change. An option to select legacy (only when required) would be preferable. Unfortunately the changes to the database where certs and keys are stored and the UI to make Legacy selectable are beyond me.
44a80ab152

Co-Authored-By: gerthomas <34512947+gerthomas@users.noreply.github.com>
2026-03-01 14:29:53 +05:30
hhftechnologies
44a80ab152 add legacy_p12 option for PKCS#12 generation
add a legacy_p12 boolean to CreateClientRequest (backend model and frontend type) to support generating PKCS#12 files with legacy encryption for iOS/older device compatibility. CertGenerator now selects pkcs12.Legacy when legacy_p12 is true (defaults to Modern otherwise). UI: add a checkbox to the client cert creation dialog and initialize form state to include legacy_p12.
2026-03-01 13:23:10 +05:30
hhftechnologies
96b062dd94 Use middleware names for Traefik config
Key middleware entries in generated and proxied Traefik configs by middleware name (so chain references by name work) instead of by ID. Join middleware names in resource queries and scan them (with fallback to ID when name is not available), add Name fields to middleware structs, and use the extracted base name when building final middleware references. Also update log messages to include both name and ID. In the UI, enforce and auto-sanitize middleware names to lowercase a-z0-9- and hyphens only.
2026-02-17 16:37:02 +05:30
hhftechnologies
132c7929c5 Adjust PluginCard status badges and remove button
Refine PluginCard UI: show 'Installed (Error)' when an installed plugin has an error, change the 'not_loaded/configured' state to use a secondary variant and label it 'Installed' (with Activity icon), and update the remove button from destructive to outline while applying destructive text/hover styles. These tweaks clarify installed states and make the removal action visually less aggressive while preserving disable/tooltip behavior.
2026-02-17 16:24:27 +05:30
hhftechnologies
2139a7b5a1 Refactor UI layout, theming, and stat cards
Visual and structural refresh across the UI: adjust spacing and paddings, update theme tokens, and simplify several components for a cleaner look and interaction.

Highlights:
- App.tsx: increased main vertical padding (py-8).
- EmptyState: switched to muted translucent background and larger padding.
- Header: refined nav button styles (hover/opacity), added primary icon color, tighter spacing, replaced Button with native button, added active underline indicator and improved text styles.
- Dashboard: spacing tweaks (space-y changes), replaced Globe icon for TCP Routes with Network, updated stat descriptions and colors, moved New Middleware button inline, removed the old Quick Actions card grid and cleaned up tabs content spacing.
- StatCard: refactored layout (removed trend), added color prop with icon color mapping, updated typography and hover/border effects.
- ui/card: adjusted card border/shadow for dark mode and reduced CardTitle size.
- ui/table: tightened header/cell sizing and updated header styling to uppercase/tracking.
- globals.css: overhauled light/dark CSS color variables (hue/saturation/lightness values) and adjusted scrollbar thumb opacity.

These changes aim to unify the visual language, improve spacing and responsiveness, and simplify card/stat presentation for better clarity and interactivity.
2026-02-17 13:28:35 +05:30
hhftechnologies
d3ea4bb231 Fetch and display plugin recommended version
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
Tests / Lint (push) Has been cancelled
Tests / Build (push) Has been cancelled
Remove hardcoded plugin version in SecurityHub and prefer the plugin catalogue's recommended/latest version when available. Updated mtlsStore to import pluginApi, fetch the catalogue in checkPlugin, and set pluginStatus.version and recommended_version (fallbacks: installed -> recommended -> empty/default). Added MTLS_PLUGIN_MODULE constant and resilient error handling for catalogue fetch. Also added recommended_version to PluginCheckResponse type and updated UI snippets/badge to show installed or recommended version.
2026-02-13 11:08:43 +05:30
hhftechnologies
fca08e470b Add support for external (Traefik) middlewares
Some checks are pending
Build and Push Docker Image / build-and-push (push) Waiting to run
Tests / Run Tests (push) Waiting to run
Tests / Lint (push) Waiting to run
Tests / Build (push) Blocked by required conditions
Introduce support for Traefik-native external middlewares referenced by resources.

- Database: add resource_external_middlewares table in migrations and ensure creation in post-migration updates.
- API: add handlers and routes to assign, remove and list external middlewares; include external_middlewares field in GetResources/GetResource responses (comma-separated name:priority:provider entries). Handlers validate resource status, use transactions, and log errors.
- Services: ConfigProxy now loads external middleware refs, merges them with internal middlewares sorted by priority when building resource config.
- UI: Resource detail component, API client, store and types updated to expose listing, assigning and removing external middlewares with UI controls and confirmation modal.
- Tests: add unit tests for assign/remove/list handlers and inclusion on GetResource.

This enables referencing middlewares defined outside MW-manager (e.g., Traefik dynamic config or plugins) and honors priority/provider metadata.
2026-02-12 18:24:05 +05:30
hhftechnologies
f655a310b2 bugfixes-router 2026-01-23 17:14:12 +05:30
hhftechnologies
54c741b56a service-bug-ui
Some checks are pending
Build and Push Docker Image / build-and-push (push) Waiting to run
2026-01-23 11:52:06 +05:30
hhftechnologies
d194ccd2da remove-IPWhiteList-deprecated 2026-01-21 19:27:23 +05:30
hhftechnologies
77eb4e7a62 bugfixes-security-headers 2026-01-21 16:22:16 +05:30
hhftechnologies
dfa2118dbb secure-headers-implementation 2026-01-21 11:39:45 +05:30
hhftechnologies
1d07646786 Update alert-dialog.tsx
Some checks are pending
Build and Push Docker Image / build-and-push (push) Waiting to run
2026-01-20 18:57:42 +05:30
hhftechnologies
ed5b890773 Update pluginStore.ts
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
2026-01-19 14:10:06 +05:30
hhftechnologies
7c68b8826f Update pluginStore.ts 2026-01-19 13:29:50 +05:30
hhftechnologies
3b3d7c9122 Update pluginStore.ts 2026-01-19 12:45:29 +05:30
hhftechnologies
29517dbbd9 plugin-card-ui-bug 2026-01-19 12:27:12 +05:30
hhftechnologies
c5ad820da4 Update ClientCertList.tsx
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
2026-01-18 01:02:41 +05:30
hhftechnologies
8d509e1e55 cert-revoke-not-working 2026-01-17 20:27:33 +05:30
hhftechnologies
323d77661b mtls-whitelist 2026-01-17 12:17:09 +05:30
hhftechnologies
7a15d2dbf7 router-default-priority-100 2026-01-17 11:00:07 +05:30
hhftechnologies
7ad07565d7 bugfixes-ui-update
Some checks are pending
Build and Push Docker Image / build-and-push (push) Waiting to run
2026-01-14 17:11:32 +05:30
hhftechnologies
0e9e516439 mtls-update
Some checks are pending
Build and Push Docker Image / build-and-push (push) Waiting to run
2026-01-14 04:19:52 +05:30
hhftechnologies
7bb6dfb69c bugfixes-deleting-middleware-services
Some checks are pending
Build and Push Docker Image / build-and-push (push) Waiting to run
2026-01-13 19:59:33 +05:30
hhftechnologies
e262a3e21e bugfixes
Some checks are pending
Build and Push Docker Image / build-and-push (push) Waiting to run
2026-01-13 03:20:41 +05:30
hhftechnologies
a37edb26a3 bugfixes
Some checks are pending
Build and Push Docker Image / build-and-push (push) Waiting to run
2026-01-12 07:09:52 +05:30
hhftechnologies
24c60a2aa2 plugin-hub-fix 2026-01-12 02:23:40 +05:30
hhftechnologies
ec83c4e9a2 UI-Bugfixes 2026-01-12 01:12:13 +05:30
hhftechnologies
59282721dd refactoring 2026-01-11 15:24:17 +05:30
hhftechnologies
12d4cc4033 Update tsconfig.node.json 2025-12-31 22:00:19 +05:30
hhftechnologies
56d33a7560 update-ui 2025-12-31 21:53:32 +05:30
hhftechnologies
0dc2d5f988 update-router-priority
Some checks are pending
Build and Push Docker Image / build-and-push (push) Waiting to run
2025-08-27 18:16:12 +05:30
hhftechnologies
5a8f90511f Update ResourceDetail.js 2025-06-10 19:46:04 +05:30
oidebrett
f5825f8c8d fixed vv in plugin versions, updated confirmation dialog component to support alerts and replaced alerts in PluginContext with modal dialog 2025-05-20 19:15:55 +00:00
hhftechnologies
dc2426215c update 2025-05-19 11:45:36 +05:30
hhftechnologies
964e4a92fe update 2025-05-19 11:02:24 +05:30
hhftechnologies
f5f870559e update 2025-05-18 21:25:37 +05:30
hhftechnologies
8421fb6721 update 2025-05-18 19:51:41 +05:30
hhftechnologies
f212df2293 update 2025-05-18 19:30:23 +05:30
hhftechnologies
97506f3a72 update 2025-05-18 18:49:57 +05:30
hhftechnologies
5b4f949b86 plugins 2025-05-18 15:32:13 +05:30
hhftechnologies
89a2880582 Update ResourcesList.js 2025-05-18 11:29:10 +05:30
hhftechnologies
8de526fe5f Update Dashboard.js 2025-05-18 11:03:41 +05:30
oidebrett
4994555ba6 moved ConfirmationDialog to a common component 2025-05-06 18:55:36 +00:00
oidebrett
905f3be1be fixed dark mode 2025-05-05 16:12:07 +00:00
hhftechnologies
73fdfc4a4a services-int 2025-05-05 12:35:30 +05:30
hhftechnologies
88a2a02a0d update 2025-04-29 11:13:11 +05:30
hhftechnologies
7156fdc34f update 2025-04-27 20:37:08 +05:30
hhftechnologies
c76ee02236 updated 2025-04-23 14:29:56 +05:30