How to Mount S3-Compatible Storage as External Storage in Nextcloud

To mount an S3-compatible bucket in Nextcloud, enable the built-in External storage support app, add an Amazon S3 storage entry in the administrator’s External storage settings, and supply the bucket credentials plus the provider’s endpoint details. Nextcloud uses the Amazon S3 backend for compatible services; you do not need to install a separate app for each S3 vendor. The exact hostname, region, and path-style setting depend on the object-storage provider.

This guide follows the current Nextcloud administration documentation for the S3 and external-storage backends, checked October 6, 2026. The labels may differ slightly between server versions and themes. A mount can be reachable while still behaving differently from a local Nextcloud folder, especially when files are changed directly in the bucket.

What should you check before adding the bucket?

Confirm these details with your S3 provider before opening Nextcloud settings:

  • The bucket name and the credentials for an access key.
  • The provider’s generic S3 endpoint hostname, such as s3.example.net. Use the endpoint itself, not a bucket-specific URL that already contains the bucket name.
  • The region or signing region if the provider requires one.
  • Whether requests should use virtual-hosted style (https://bucket.endpoint/) or path style (https://endpoint/bucket).
  • The HTTPS port, normally 443, and whether your server can reach that endpoint through its firewall and DNS.

Create a dedicated access key for this mount and limit its permissions to the bucket and actions it needs. Do not paste secrets into a ticket, screenshot, or shell history. Nextcloud’s S3 setup requires an access key ID and secret access key; it does not validate every provider-specific permission policy for you.

Is this the same as making S3 Nextcloud’s primary storage?

No. An external-storage mount exposes an existing bucket as a folder inside Nextcloud. It is useful when you want to browse or manage files in a bucket while keeping the bucket accessible to other S3 tools. Primary object storage is a different server-wide architecture with different operational assumptions. If you need to choose between them, review Nextcloud’s primary object storage documentation before changing a production data design.

How do you add the S3-compatible mount in the web interface?

1. Enable External storage support

Sign in as a Nextcloud administrator, open Apps, and enable the bundled External storage support app. It is included with Nextcloud but may be disabled by default. If it is already enabled, continue to the storage settings.

2. Open the administrator’s External storage page

Open your profile menu, choose Settings, then find External storage in the Administration section. This page is for admin-configured mounts. A storage that an individual user configures in personal settings is only available to that user; an admin mount can be available to selected users and groups.

3. Create a mount and choose the S3 backend

In the new row, enter a simple Folder name, for example Archive. This becomes the visible folder name in Nextcloud and must be a name, not a path; do not put slashes in it. In the storage-type selector, choose Amazon S3. Under Authentication, choose Access key.

4. Enter the bucket and credentials

Enter the exact bucket name, access key ID, and secret access key from your provider. Treat the secret as a password. Nextcloud documentation notes that bucket names for this backend must meet AWS S3 naming requirements, even when the service is hosted elsewhere; underscores are not accepted. If the provider’s bucket name includes an underscore, check whether the provider offers a compatible bucket name before troubleshooting the credentials.

5. Set the endpoint, region, and request style

For Amazon-hosted S3, specify the correct region. For a non-Amazon service, set the provider’s generic hostname. Use the endpoint and region values published by the provider; there is no universal region value for every S3-compatible product.

SettingWhat to enter
HostnameThe generic endpoint, for example s3.example.net, without the bucket subdomain or path.
PortThe provider’s TLS port; commonly 443.
Enable SSLLeave enabled when the endpoint supports HTTPS. Use a trusted certificate.
RegionThe provider’s signing region when required; leave at the provider-recommended value for compatible services.
Enable Path StyleEnable only if the endpoint requires requests in the form endpoint/bucket instead of bucket.endpoint.
Legacy (v2) authenticationLeave off unless your provider specifically requires the older signature version. The default is v4.

Nextcloud’s current S3 guide specifically says to use the generic endpoint hostname for non-Amazon storage. It also describes path-style addressing as provider-dependent. Do not toggle path style as a guess if you can get the expected addressing mode from the provider’s S3 documentation.

6. Restrict who can use the mount

Use Available for to assign only the intended Nextcloud users or groups. An admin-configured mount may otherwise be available broadly. Also inspect the mount’s options after saving: read-only mode and sharing controls may be appropriate for archives or shared buckets. Sharing behavior can affect who can expose files through Nextcloud, so set it deliberately.

7. Confirm that Nextcloud can connect

When the required fields are valid, the storage row is saved automatically. A green status indicator means Nextcloud can use the configured storage; red or yellow indicates that the connection or configuration needs attention. The admin page may temporarily mark a failed storage unavailable for ten minutes. Click its status icon or reload the page to trigger another check after correcting a value.

8. Test with a harmless file

Open Files as a user who has access to the mount. Confirm that the folder appears, create or upload a small test file, download it again, and delete it if the bucket is intended to be writable. If the mount is meant to be read-only, test that users can read files and verify that writes are blocked. A green indicator alone does not confirm that every user permission or intended read/write behavior is correct.

How can you check the mount from the command line?

For installations where you administer the server, Nextcloud also provides occ commands for external storage. Run commands from the Nextcloud installation directory and use the web-server account appropriate to your system. On many Linux installations it is www-data, but package and container installations can differ.

sudo -E -u www-data php occ files_external:list
sudo -E -u www-data php occ files_external:verify <mount_id>

Replace <mount_id> with the ID shown by the list command. A successful verification confirms that Nextcloud can establish the configured connection at that moment. For Nextcloud AIO or another container deployment, use that deployment’s documented way to execute occ inside the app container instead of copying the host command unchanged.

Why might the mount fail even when the values look right?

SymptomFirst checks
Red or yellow statusCheck bucket spelling, key and secret, endpoint hostname, TLS port, DNS, firewall egress, and certificate trust.
Signature or authorization errorConfirm the signing region and key permissions with the provider. Check whether the provider requires path-style addressing.
Connection timeoutVerify that the Nextcloud host can reach the S3 endpoint on the configured port; browser access from your laptop does not prove server connectivity.
Some folders or objects are missingCheck for unsupported repeated slashes in object prefixes and consider running an external-storage scan.
It works for an administrator but not a userReview the Available for assignments, group membership, and whether the user is opening the correct mount.

When a service uses a self-signed certificate, the server must trust that certificate; disabling certificate verification is not a safe substitute. Nextcloud’s current manual also warns that repeated delimiters such as Photos//cat.png are unsupported and that affected prefixes may be ignored.

What happens when files change directly in the bucket?

Nextcloud maintains an internal file cache for external storage. If another tool adds, edits, or deletes objects directly in S3, Nextcloud may not see the change immediately. The current External Storage guide recommends periodic rescans for storage types without push notifications. You can find the mount ID with files_external:list and run:

sudo -E -u www-data php occ files_external:scan <mount_id>

Schedule a scan according to the freshness you need and the load your server can handle. A scan is not the same as instantaneous change notifications. Nextcloud also documents a metadata risk: a rescan may interpret an external rename as a deleted old object plus a new object, removing Nextcloud-side shares, tags, comments, and activity history associated with the old entry. For that reason, perform renames through Nextcloud when preserving that metadata matters.

How do you know the setup is complete?

  • The S3 mount shows a green status in the administrator’s External storage page.
  • Users in the intended group can see the mount, while unassigned users cannot.
  • A test upload, download, and deletion behave as intended—or writes are blocked for a read-only mount.
  • The server can discover changes made outside Nextcloud after the configured scan interval.
  • Credentials are stored only in the Nextcloud configuration and provider account, and access is limited to the required bucket.

For version-specific details, consult the official Nextcloud S3 external-storage guide, the External Storage administration guide, and the official occ command reference. Providers vary in endpoint, region, permissions, and addressing requirements, so their S3 setup documentation remains authoritative for those values.

Leave a Comment

7 Best WSUS Tools for Update Management and Troubleshooting

7 Best WSUS Tools for Update Management and Troubleshooting

Compare seven tools that support or complement WSUS, from Microsoft’s native console and diagnostics to third-party patch publishing and remote deployment.

Best Windows System Monitoring Tools: 6 Picks for Server Visibility

Best Windows System Monitoring Tools: 6 Picks for Server Visibility

Compare six Windows system monitoring tools for server health, application visibility, and alerting, with current notes on deployment and licensing.

7 Wake-on-LAN Tools: What’s Still Available From the 2021 List

7 Wake-on-LAN Tools: What’s Still Available From the 2021 List

Compare seven Wake-on-LAN tools by features and availability, including free utilities, network-admin suites, and 2021 picks that have since been retired.

9 Best Ping Tools for Testing Latency and Scanning a Network

9 Best Ping Tools for Testing Latency and Scanning a Network

Compare nine ping tools for quick reachability checks, subnet discovery, TCP tests, and latency monitoring, with guidance on which one fits your network task.

Best TFTP Servers for Windows, Linux, and macOS

Best TFTP Servers for Windows, Linux, and macOS

Compare the best TFTP servers for Windows, Linux, and macOS, including SolarWinds, Tftpd64, tftpd-hpa, atftpd, haneWIN, and dnsmasq.

5 Best Microsoft Access Alternatives for Desktop and Web Databases

5 Best Microsoft Access Alternatives for Desktop and Web Databases

Compare five Microsoft Access alternatives for desktop, SQLite, no-code, and browser-based database work, with strengths, limits, and best-fit use cases.

Open-Source vs. Closed-Source Monitoring Tools Compared

Open-Source vs. Closed-Source Monitoring Tools Compared

Compare open-source and closed-source monitoring tools by cost, support, customization, security, and current options including Zabbix, Nagios, PRTG, and more.

Ingress vs. Egress: What’s the Difference in Networking?

Ingress vs. Egress: What’s the Difference in Networking?

Understand how ingress and egress describe incoming and outgoing traffic, why direction depends on the network boundary, and how to monitor bandwidth and spot risky data transfers.

6 Best Free Syslog Servers to Try for Centralized Logging

6 Best Free Syslog Servers to Try for Centralized Logging

Compare six free syslog servers and collectors for Windows and Linux, including GUI tools, open-source options, search, alerting, and secure transport.

What Is IIS? Microsoft’s Windows Web Server and Alternatives

What Is IIS? Microsoft’s Windows Web Server and Alternatives

See what Microsoft IIS does, how its request pipeline and application pools work, and when Apache, NGINX, or Caddy may fit your web server needs better.