Add native Pangolin SSH mode (for private and public resources) that does not require configuring OpenSSH server and PAM
Add auto update Newt option for all sites in the org or specific sites (requires newt >1.13.0)
Add searchable and filterable custom labels on sites and resources
Add share link post authentication redirect path
Add pangctl command to make more than one user server admin
Add PostgreSQL and Redis install options in the installer
Fix public resource showing as degraded when WireGuard targets were added alongside healthy Newt targets
Fix custom branding logo URL not accepting links
Fix pasting the device code not accepting paste
Fix enforce absolute paths in sudo commands
Fix refresh end time on logs tables
Fix accept partially valid Docker labels instead of rejecting all
Fix restarting container on RC version causing migration errors
Fix cross site target assignment
Improve OpenAPI response payloads
Improve SSH configuration on private resources
Improve sort resource filter options in audit logs
Improve performance in certain hot paths
Improve clients get error when holepunching fails instead of getting stuck registering
Improve speed of API endpoints with thousands of sites and users
Improve add loading icons on all logs tables
Improve auto create roles added in Blueprints
Dependency security updates
General UI improvements
Various other bug fixes
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
## 📋 Pull Request Information
**Original PR:** https://github.com/fosrl/pangolin/pull/3215
**Author:** [@oschwartz10612](https://github.com/oschwartz10612)
**Created:** 6/4/2026
**Status:** ✅ Merged
**Merged:** 6/4/2026
**Merged by:** [@oschwartz10612](https://github.com/oschwartz10612)
**Base:** `main` ← **Head:** `dev`
---
### 📝 Commits (10+)
- [`436996a`](https://github.com/fosrl/pangolin/commit/436996a43d53b9a6b4217dd32b6ca7f848b6f30f) Add first iteration of ssh proxy
- [`3f17f1a`](https://github.com/fosrl/pangolin/commit/3f17f1a468f27627f9fc325d8ad8c9108cd3ef41) Support rdp
- [`943923f`](https://github.com/fosrl/pangolin/commit/943923ff4bc945cd23d6d361eee33544e09589f4) Add basic vnc test
- [`e9df995`](https://github.com/fosrl/pangolin/commit/e9df995e7679e0ec0f3b3e0c1bf932d4fbb91cd9) Merge branch 'dev' into resource-policies
- [`743621e`](https://github.com/fosrl/pangolin/commit/743621eb2539485fa98e1f33ec48b394fda820c7) Add browserGatewayTarget table
- [`4e07e9c`](https://github.com/fosrl/pangolin/commit/4e07e9c52c8708bde20887f5598cf54b91bc7d35) Working on new target type
- [`de70d72`](https://github.com/fosrl/pangolin/commit/de70d72e0d00914ac76de1915b32ca6c88628470) Add gateway endpoints into the traefik config
- [`a6ae929`](https://github.com/fosrl/pangolin/commit/a6ae9290f28e472a0ed49b686892e73da55a90d6) Serve the resource from the right place
- [`013af49`](https://github.com/fosrl/pangolin/commit/013af49137a558b570a4fa97a4761d7832feaffe) Add favicon passthrough
- [`4b4c86b`](https://github.com/fosrl/pangolin/commit/4b4c86b4b72b48fb541fa21348d817a79e8179f9) Clean up forms a bit
### 📊 Changes
**290 files changed** (+36197 additions, -10838 deletions)
<details>
<summary>View changed files</summary>
📝 `.dockerignore` (+1 -0)
📝 `.github/ISSUE_TEMPLATE/1.bug_report.yml` (+3 -2)
📝 `.gitignore` (+4 -2)
📝 `README.md` (+1 -1)
➕ `cli/commands/setServerAdmin.ts` (+51 -0)
📝 `cli/index.ts` (+2 -0)
📝 `config/traefik/traefik_config.yml` (+15 -22)
📝 `messages/bg-BG.json` (+168 -12)
📝 `messages/cs-CZ.json` (+167 -11)
📝 `messages/de-DE.json` (+165 -9)
📝 `messages/en-US.json` (+165 -7)
📝 `messages/es-ES.json` (+165 -9)
📝 `messages/fr-FR.json` (+165 -9)
📝 `messages/it-IT.json` (+166 -10)
📝 `messages/ko-KR.json` (+165 -9)
📝 `messages/nb-NO.json` (+165 -9)
📝 `messages/nl-NL.json` (+168 -12)
📝 `messages/pl-PL.json` (+164 -8)
📝 `messages/pt-PT.json` (+166 -10)
📝 `messages/ru-RU.json` (+165 -9)
_...and 80 more files_
</details>
### 📄 Description
- Add resource policies for public resources
- Add browser based RDP access via public resources
- Add browser based VNC access via public resources
- Add browser based SSH access via public resources
- Add native Pangolin SSH mode (for private and public resources) that does not require configuring OpenSSH server and PAM
- Add auto update Newt option for all sites in the org or specific sites (requires newt >1.13.0)
- Add searchable and filterable custom labels on sites and resources
- Add share link post authentication redirect path
- Add pangctl command to make more than one user server admin
- Add PostgreSQL and Redis install options in the installer
- Fix public resource showing as degraded when WireGuard targets were added alongside healthy Newt targets
- Fix custom branding logo URL not accepting links
- Fix pasting the device code not accepting paste
- Fix enforce absolute paths in sudo commands
- Fix refresh end time on logs tables
- Fix accept partially valid Docker labels instead of rejecting all
- Fix restarting container on RC version causing migration errors
- Fix cross site target assignment
- Improve OpenAPI response payloads
- Improve SSH configuration on private resources
- Improve sort resource filter options in audit logs
- Improve performance in certain hot paths
- Improve clients get error when holepunching fails instead of getting stuck registering
- Improve speed of API endpoints with thousands of sites and users
- Improve add loading icons on all logs tables
- Improve auto create roles added in Blueprints
- Dependency security updates
- General UI improvements
- Various other bug fixes
---
<sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
📋 Pull Request Information
Original PR: https://github.com/fosrl/pangolin/pull/3215
Author: @oschwartz10612
Created: 6/4/2026
Status: ✅ Merged
Merged: 6/4/2026
Merged by: @oschwartz10612
Base:
main← Head:dev📝 Commits (10+)
436996aAdd first iteration of ssh proxy3f17f1aSupport rdp943923fAdd basic vnc teste9df995Merge branch 'dev' into resource-policies743621eAdd browserGatewayTarget table4e07e9cWorking on new target typede70d72Add gateway endpoints into the traefik configa6ae929Serve the resource from the right place013af49Add favicon passthrough4b4c86bClean up forms a bit📊 Changes
290 files changed (+36197 additions, -10838 deletions)
View changed files
📝
.dockerignore(+1 -0)📝
.github/ISSUE_TEMPLATE/1.bug_report.yml(+3 -2)📝
.gitignore(+4 -2)📝
README.md(+1 -1)➕
cli/commands/setServerAdmin.ts(+51 -0)📝
cli/index.ts(+2 -0)📝
config/traefik/traefik_config.yml(+15 -22)📝
messages/bg-BG.json(+168 -12)📝
messages/cs-CZ.json(+167 -11)📝
messages/de-DE.json(+165 -9)📝
messages/en-US.json(+165 -7)📝
messages/es-ES.json(+165 -9)📝
messages/fr-FR.json(+165 -9)📝
messages/it-IT.json(+166 -10)📝
messages/ko-KR.json(+165 -9)📝
messages/nb-NO.json(+165 -9)📝
messages/nl-NL.json(+168 -12)📝
messages/pl-PL.json(+164 -8)📝
messages/pt-PT.json(+166 -10)📝
messages/ru-RU.json(+165 -9)...and 80 more files
📄 Description
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.