Protecting the Collabora Online admin console

Securing the Collabora Online admin console means controlling who can reach it, how they authenticate and what their actions leave behind. This page covers credentials, restricting /cool/adminws at the reverse proxy and audit logging.

On this page

Why the Collabora Online admin console needs its own access controls

The Collabora Online admin console and its WebSocket endpoint sit outside the document editing path, so they need their own access controls even when editing traffic is tightly restricted. An operator who runs Collabora Online behind a reverse proxy for Nextcloud or another WOPI host may have locked down WOPI requests and still left administrative routes reachable by anyone who can reach the server. The reverse proxy is where this decision is made. The Nextcloud reverse proxy guidance lists /cool/adminws among the routes the proxy forwards to coolwsd, so a proxy that passes everything through will also pass administrative traffic. Before changing anything, confirm which routes your proxy forwards and which networks can reach each of them.

Teams need this work most when the same Collabora Online server serves more than one purpose. Typical cases include shared hosting for several tenants or departments, several people holding administrator access with different responsibilities, and regulated environments where administrative changes must be attributable to a named person. In each case, a single administrative action or a single leaked credential can affect every document session on the server, including sessions that belong to other WOPI hosts. The exposure grows with the number of people who hold access, so ask how many accounts can reach the console, whether each administrator has an individual account, and who approves a change to those accounts. Your answers determine how much of the control set below you need to build now and how much you can defer, and they should be written down before the proxy rules are changed.

Access control options for the admin console

The most direct control is to allow requests to /cool/adminws only from an administration network, such as a management subnet or a VPN address range, and to reject everything else at the reverse proxy. The Nextcloud reverse proxy guidance lists /cool/adminws among the routes the proxy forwards to coolwsd, so the restriction belongs in the proxy rule set that handles that path, not in the application. Because the rule runs before the request reaches coolwsd, a refused request never touches the admin interface.

  • Rule scope: Match the admin path specifically so that normal document editing traffic on other routes is not affected.
  • Source addresses: Use only the addresses of administrator workstations or a bastion host, and review them when staff or network paths change.
  • Proxy behavior behind a load balancer: Confirm which address the proxy sees as the client, since a wrong trusted-proxy setting can make every request appear to come from the load balancer.
  • Operator convenience: Administrators must be on the approved network or VPN to open the console, which is simple to explain but adds friction for remote support.
  • Break-glass access: Keep a documented, tested path onto the admin network that works when the VPN itself is down.

Confirm with your network team how the admin network is defined and who can change the proxy rule.

How to restrict /cool/adminws at the reverse proxy

This sequence limits the Collabora Online admin WebSocket route to approved administrator networks and strengthens the console credentials. It ends with tests from allowed and disallowed networks, each checked against the proxy log, so you have evidence that the control works.

  1. Inventory the proxy routes

    The team that operates the reverse proxy exports its current configuration and lists every location block or route that forwards traffic to coolwsd. Use the route list in the Nextcloud reverse proxy guidance as your reference, and confirm each route against the documentation for your Collabora Online version. Flag any route you cannot match to a known purpose for review. Done when you have a written list of routes and the upstream each one reaches.

  2. Identify the admin WebSocket route

    Find /cool/adminws in the list and confirm it is one of the routes the proxy forwards to coolwsd. This endpoint carries the admin console's WebSocket connection, so it deserves the same scrutiny as the console login. Record the exact match rule your proxy uses, such as an exact path or a prefix, because a broad prefix can match more paths than you intend. Done when the rule and its upstream are written down next to the route list.

  3. Restrict the route by source network

    Add an allow rule for /cool/adminws that permits only the administrator networks or jump hosts you name, and deny all other sources for that location. Keep the rule scoped to that exact path and leave other routes unchanged. Run your proxy's configuration syntax check, then reload the proxy. Done when the check passes and the rule is present in the file the proxy actually loads.

  4. Set strong administrator credentials

    Confirm the admin console has an administrator account with a unique, long password stored in your secrets manager, and that no default or shared credentials remain. The way these values are set differs between packages, containers and Kubernetes, so confirm the exact mechanism in the Collabora Online documentation for your version. Limit the number of people who hold the password. Done when a login with any default or previous credentials fails and the new credentials succeed from an approved network.

  5. Confirm WebSocket upgrade handling

    Check that the proxy passes the WebSocket upgrade headers on this route. The admin console connects over WebSocket, and a route that drops the upgrade fails in ways that can look like a credential problem. Confirm that TLS for this route matches the protocol you use for the rest of the Collabora Online endpoints. Done when a browser session from an approved network opens the admin console and the connection stays open through the proxy.

  6. Test access from an allowed network

    From an approved administrator network, open the admin console through the proxy and sign in with the new credentials. Check the proxy access log for the request to /cool/adminws and confirm it returns the expected response and no proxy error. Note the source address the proxy recorded. Done when the login succeeds and the log entry shows an allowed source address.

  7. Test refusal from a disallowed network

    From a network outside the allow list, send the same request to /cool/adminws, then attempt the console login. Expect the proxy to refuse the request before it reaches coolwsd. Check the proxy log for a denied entry from that source, and confirm coolwsd records no login attempt from it. Done when the request is refused at the proxy, the denial appears in the log, and you have saved that log excerpt in your change record as evidence.

Setting and rotating administrator credentials

Administrator credentials are the first control on the admin console, and the controls that follow in this section depend on them. Each card covers one decision or routine, from how a credential is created and stored to how administrator access ends.

Set a strong, unique password

Use a long, unique, generated password for the admin console that is not reused from any directory account, shared vault entry or other service. Generate it with a password manager so that no person chooses it. Check that the value meets the length and character rules in your own policy. Confirm on your installed version whether the console limits repeated failed logins, and set your monitoring to alert on them.

Keep secrets out of configuration files

Admin credentials should not sit in plain text in server configuration, container images, Helm values committed to Git, CI logs or shared runbooks. Inject them at runtime from your secrets manager or an orchestrator secret, and restrict who can read the resulting files. Check that configuration backups and container inspection output do not expose the value. Rotate any credential that has already appeared in one of these places.

Rotate administrator passwords on schedule

Set a rotation interval in your policy, and also rotate after an administrator leaves, after a suspected exposure and after any support engagement that used console access. Plan each rotation as a short change: update the secret store, restart the service if your release requires it, and test the new credential. Then confirm that the old one is refused. Record the date and the person who made the change.

Limit the number of administrators

Grant console access to a small set of named administrators, and keep one documented break-glass account whose secret is held under dual control. Keep console rights separate from document users and from integration service accounts, so that a Nextcloud or other WOPI host service account can never reach the admin console. Review the list at an interval set by your policy and compare it with your current staff directory.

Remove access when staff leave

Make administrator offboarding a separate step in your leaver process, not something that happens only when the directory account is disabled. Remove the console account, revoke any personal copies of the password, and rotate every shared secret the person could read. Review console and reverse proxy logs for activity before the departure date. Check that proxy allow rules do not depend on a personal workstation address.

Confirm the authentication model

How the admin console authenticates administrators can differ between Collabora Online releases and packaging methods, so do not write procedures from memory or from older guides. Read the Collabora documentation for the exact version you run, note the supported authentication method and any credential settings it lists, and test a login on a non-production instance first. Repeat this check after each upgrade.

Logging administrator actions for review

Administrator access needs an audit trail because the admin console can change how the whole server behaves, and a compromised or misused session would otherwise leave no record of who connected, from where, or what they changed. Logging is the control that lets you answer those questions after the fact and detect misuse early. Treat the reverse proxy log and the coolwsd log as separate evidence sources: the proxy shows every request to /cool/adminws with its source address and timing, while coolwsd records what the server did with the session. Before you rely on either, confirm with your installed version which administrator actions coolwsd writes to its log, at what level, and with which fields, since logging behavior differs between branches and this page does not promise specific log fields.

Forward both streams to a central store that your security team controls and that the Collabora host cannot silently rewrite. Decide the retention period with your compliance owner, set the proxy to log the admin path with the client address and authenticated identity where your authentication layer provides it, and confirm that the logs carry accurate timestamps so events from the proxy and coolwsd can be correlated. Restrict who can read these logs, because they contain client addresses and session activity. Test the pipeline on purpose: open an admin session from an allowed address, make a harmless change, and confirm the event appears in the central store with enough detail to reconstruct it. Also test a denied connection so you know refused attempts are recorded too.

Plan a review routine rather than a one-off setup. Someone should check the admin-path entries on a set schedule and whenever an alert fires, and they should be able to compare the list of accounts with admin rights against the people who actually connected. Where your logs do not capture a change you need to account for, document that gap and the compensating control, such as a configuration change record kept in your own version control. Ask Collabora or your DeployOpen contact to confirm the exact log lines for your version before you write detection rules against them, so your alerts match what the server actually emits.

Security and operational risks of an exposed admin console

The admin console controls how the Collabora Online server runs, so a weak entry point affects every document session it serves. The four risks below map to the controls in this setup section, and each card names what to check in your own environment.

Open admin WebSocket on the internet

The /cool/adminws path is one of the routes a reverse proxy forwards to coolwsd. If the proxy passes it through for any client, anyone who can reach the host can attempt to open the administrative channel. Restrict the path at the reverse proxy so only administrator networks or bastion hosts can reach it, and deny it for all other sources. Confirm the rule with a request from an outside network, which should be refused. Review the proxy configuration after every upgrade, since templates may add the route back.

Shared administrator credentials

When several operators use one administrator password, no log entry can show who changed a setting, and removing one person's access means rotating the secret for everyone. Give each administrator a named account, store the credential in your secrets manager, and require strong, unique passwords. Confirm which authentication options your Collabora Online version offers for the admin console, and document who holds each credential and how it is rotated when someone leaves the team.

Missing administrator audit trail

Without a record of who connected to the admin console and what they changed, an incident review cannot separate a legitimate configuration change from a misuse of access. Forward coolwsd logs and reverse proxy access logs to your central log platform, keep them outside the Collabora host, and set retention to match your policy. Test that a sample administrator action appears in the central store with a timestamp and source address before you rely on it.

Unrecorded changes during incidents

During an outage or suspected compromise, operators often edit settings directly to restore service, and those edits are easy to lose or misattribute. Set a rule that every change, including emergency ones, is made through your configuration management tool and recorded in a ticket. Keep the proxy and coolwsd configuration in version control so a diff shows what changed and when. After the incident, compare the running configuration with the approved baseline before closing the ticket.

Questions teams ask before protecting the admin console

What does it cost to protect the Collabora Online admin console?

The cost depends on how much of the restriction work your own team already covers and how many layers you need. The work usually includes a credential decision, a reverse proxy rule for /cool/adminws, network range definitions, a test pass from inside and outside the allowed networks, and log forwarding. Most of this is one-time effort, while credential rotation, reviewing access lists and reading logs recur. Ask any partner for a written scope that lists each of these items and who performs each one, so you can compare it with your internal effort. No figure is given here because no researched price or effort figure applies to this work.

What drives the effort of restricting the admin WebSocket endpoint?

Effort rises with the complexity of your reverse proxy setup. A single proxy with a clear route table is far simpler than a chain of load balancers, ingress controllers and a WOPI host that also sits behind its own proxy. Other drivers include how many administrators need access, whether they reach the console through a VPN or bastion, whether you use one Collabora Online server or several, and whether the rule must be duplicated across environments. Teams that already manage proxy configuration as code usually find the change smaller to review and test.

How long does it take to deploy and test an admin console restriction?

The change itself is small, but testing takes longer than writing it. Plan time for a staging test that confirms the admin WebSocket path is refused from unapproved addresses, accepted from approved administrator addresses, and still forwarded correctly to coolwsd. Then confirm that normal document editing from your WOPI host is unaffected. Duration depends on your change control process and how many environments you maintain, so confirm the schedule with your team or partner in writing rather than relying on a general estimate.

What does our team need to provide for this work?

You need to provide the network ranges or identity groups that should reach the admin console, access to the reverse proxy configuration, and a destination for logs such as a SIEM, log platform or central syslog host. You also need the names of the people who approve access changes and who will receive alerts. Without these inputs, the restriction either blocks legitimate administrators or leaves gaps. Ask the implementer to list each input in the scope document so responsibilities are clear before work starts.

Can our own team protect the admin console without outside help?

Yes, if you already operate your reverse proxy and can run a test plan against your Collabora Online server. The Nextcloud administration documentation describes how to route the /cool/adminws path through a reverse proxy, and the work is primarily configuration and verification. Outside help is most useful when you need an independent review of exposure, a documented test record for an assessment, or help connecting audit logs to your monitoring stack. Decide based on the staff time available and whether an independent check is required by your governance process.

Does the admin console restriction need to change after a Collabora Online upgrade?

Usually the core rule stays the same, but you should retest after every upgrade. Each new branch or minor release can change routes, default settings or the way the proxy and server negotiate WebSocket connections. Subscribe to Collabora's security advisories and release notes so you know when a patch affects the admin path. Include the admin console test in your upgrade checklist, and keep the proxy configuration under version control so the previous working state is easy to restore.

Which audit logs should we keep for administrator actions?

Keep records of who connected to the admin console, when, from which address, and which administrative actions they performed, along with failed logins and refused connections at the proxy. Confirm with your Collabora Online version which events the server writes and whether they include the administrator identity. Send both proxy and server logs to a location your security team controls, and set retention to match your internal policy and any regulatory requirement that applies to you. Verify the logs by performing a test login and checking that each expected entry appears.

How DeployOpen scopes and delivers admin console hardening

DeployOpen agrees the scope of admin console hardening in writing before any work starts. The written scope names the Collabora Online hosts in play, the reverse proxy or ingress that fronts them, the networks that should reach /cool/adminws, the people who will hold administrator credentials, and where the audit logs will be kept. Each item is a decision the client confirms, not an assumption DeployOpen makes. The scope also records who owns the reverse proxy rules and who signs off on the allowed source ranges, because those are the settings most often changed later by someone who was not in the original discussion.

The configuration is built and run inside your own infrastructure, in your cloud accounts, data centers or restricted network, using your existing change process. DeployOpen works through the proxy rules that restrict the admin WebSocket path, the administrator authentication setup and the logging pipeline, and documents each change so your operations team can repeat it. Verification is part of the delivery. Reachability tests are run from networks that should be allowed and from networks that should be refused, and the results are recorded against the scope so you can see exactly what was tested and what passed. Your own team should repeat these tests after any proxy or network change.

Upgrades and ongoing checks are handled through a retainer where both sides agree to one. A retainer can cover re-running the reachability tests after Collabora Online updates, reviewing proxy rules when the ingress changes, and checking that audit logs are still being written. Ask any partner, including DeployOpen, to state in the quote which of these tasks are included, how often they recur, and who approves a change to the allowed source ranges. Those answers determine whether the hardening stays in place after the initial project closes.

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.