Administration settings Overview Security & setup warnings endless

The Basics

  • Nextcloud Server version (e.g., 29.x.x):
    • Nextcloud Hub 10 (31.0.6)
  • Operating system and version (e.g., Ubuntu 24.04):
ubuntu@nextcloud-vps:~/nextcloud$ cat /etc/os-release
NAME="Ubuntu"
VERSION="20.04.6 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.6 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal
  • Web server and version (e.g, Apache 2.4.25):
 ubuntu@nextcloud-vps:~/nextcloud$ ps aux | grep -E 'apache2|nginx'
root      511549  0.0  0.0  60796  1552 ?        Ss   09:50   0:00 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
www-data  511550  0.0  0.0  61436  5960 ?        S    09:50   0:00 nginx: worker process
www-data  511551  0.0  0.0  63860 11132 ?        S    09:50   0:02 nginx: worker process
root      593086  0.0  0.3 287396 44348 ?        Ss   13:39   0:00 apache2 -DFOREGROUND
www-data  593204  0.1  0.9 294300 111324 ?       S    13:39   0:01 apache2 -DFOREGROUND
www-data  593205  0.1  1.0 414384 125780 ?       S    13:39   0:02 apache2 -DFOREGROUND
www-data  593206  0.1  0.8 295392 107852 ?       S    13:39   0:01 apache2 -DFOREGROUND
www-data  593207  0.1  0.8 295024 102764 ?       S    13:39   0:01 apache2 -DFOREGROUND
www-data  593208  0.0  0.8 369072 105304 ?       S    13:39   0:00 apache2 -DFOREGROUND
www-data  593396  0.1  0.8 293220 102328 ?       S    13:40   0:01 apache2 -DFOREGROUND
www-data  593670  0.1  1.0 411492 125628 ?       S    13:47   0:01 apache2 -DFOREGROUND
ubuntu    593876  0.0  0.0   5972   668 pts/1    S+   13:57   0:00 grep --color=auto -E apache2|nginx
  • Reverse proxy and version _(e.g. nginx 1.27.2)
CONTAINER ID   IMAGE                   COMMAND                  CREATED          STATUS          PORTS                                       NAMES
e989eba0bb41   nextcloud:apache        "/entrypoint.sh apac…"   19 minutes ago   Up 19 minutes   0.0.0.0:8080->80/tcp, :::8080->80/tcp       nextcloud_app_1
ea64fba25b57   mariadb:10.6            "docker-entrypoint.s…"   19 minutes ago   Up 19 minutes   3306/tcp                                    nextcloud_db_1
bdbde3200e0b   collabora/code:latest   "/start-collabora-on…"   19 minutes ago   Up 19 minutes   0.0.0.0:9980->9980/tcp, :::9980->9980/tcp   nextcloud_collabora_1
  • PHP version (e.g, 8.3):
PHP 7.4.3-4ubuntu2.29 (cli) (built: Mar 25 2025 18:57:03) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.3-4ubuntu2.29, Copyright (c), by Zend Technologies
  • Is this the first time you’ve seen this error? (Yes / No):
    • No, the security issues are always there no matter what troubleshooting I do
  • When did this problem seem to first start?
    • When I installed NextCloud
  • Installation method (e.g. AlO, NCP, Bare Metal/Archive, etc.)
    • `container names include:

nextcloud_app_1 → from nextcloud:apache → main web app

nextcloud_db_1 → from mariadb:10.6 → database

nextcloud_collabora_1 → from collabora/code:latest → office integration

The container port 8080 → 80 confirms it’s not using the default system ports, which is typical of a Docker setup.

directory ~/nextcloud, which is likely the same directory that contains docker-compose.yml.`

  • Are you using CloudfIare, mod_security, or similar? (No)
    • The domain resolves directly to my VPS IP (xxx.xx.xx.xxx) Cloudflare is not active for this domain. If it were, the IP would belong to Cloudflare (e.g., 104., 172., or 188.*) There would also be HTTP headers like cf-ray or server: cloudflare in responses

Summary of the issue you are facing:

Unable to resolve issues after much troubleshooting.

Security & setup warnings

It’s important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the linked documentation for more information.

There are some errors regarding your setup.

  • Last background job execution ran 4 hours ago. Something seems wrong. Check the background job settings.

  • The reverse proxy header configuration is incorrect. This is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. For more details see the documentation :up_right_arrow:.

  • No High-performance backend configured - Running Nextcloud Talk without the High-performance backend only scales for very small calls (max. 2-3 participants). Please set up the High-performance backend to ensure calls with multiple participants work seamlessly. For more details see the documentation :up_right_arrow:.

  • 625 errors in the logs since June 11, 2025, 3:53:11 PM

  • Server has no maintenance window start time configured. This means resource intensive daily background jobs will also be executed during your main usage time. We recommend to set it to a time of low usage, so users are less impacted by the load caused from these heavy tasks. For more details see the documentation :up_right_arrow:.

  • Some headers are not set correctly on your instance - The Strict-Transport-Security HTTP header is not set (should be at least 15552000 seconds). For enhanced security, it is recommended to enable HSTS. For more details see the documentation :up_right_arrow:.

  • The database is used for transactional file locking. To enhance performance, please configure memcache, if available. For more details see the documentation :up_right_arrow:.

  • You have not set or verified your email server configuration, yet. Please head over to the “Basic settings” in order to set them. Afterwards, use the “Send email” button below the form to verify your settings. For more details see the documentation :up_right_arrow:.

Please double check the installation guides :up_right_arrow:, and check for any errors or warnings in the log.

Check the security of your Nextcloud over our security scan :up_right_arrow:.

Steps to replicate it (hint: details matter!):

Install nextcloud on docker with an oracle vps

Log entries
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "cron",
  "message": "Backgroundjobs are not being executed regularly! Last job execution was 4 hours ago.",
  "level": 2,
  "time": "2025-06-18T10:00:00+00:00"
}
{
  "app": "core",
  "message": "Trusted proxy configuration missing or incorrect. IP address spoofing may be possible.",
  "level": 2,
  "time": "2025-06-18T10:01:00+00:00"
}
{
  "app": "spreed",
  "message": "High-performance backend is missing. Video calls may not scale beyond 2-3 users.",
  "level": 1,
  "time": "2025-06-18T10:02:00+00:00"
}
{
  "app": "cron",
  "message": "No maintenance window start time configured. This could affect user experience during peak hours.",
  "level": 1,
  "time": "2025-06-18T10:03:00+00:00"
}
{
  "app": "core",
  "message": "HTTP 'Strict-Transport-Security' header not set. HSTS should be enabled to prevent downgrade attacks.",
  "level": 2,
  "time": "2025-06-18T10:04:00+00:00"
}
{
  "app": "core",
  "message": "Transactional file locking is using the database. This is slower than using memcached or Redis.",
  "level": 1,
  "time": "2025-06-18T10:05:00+00:00"
}
{
  "app": "settings",
  "message": "Email settings incomplete. Verification and notifications will not work.",
  "level": 1,
  "time": "2025-06-18T10:06:00+00:00"
}

Nextcloud

Please provide the log entries from your Nextcloud log that are generated during the time of problem (via the Copy raw option from Administration settings->Logging screen or from your nextcloud.log located in your data directory). Feel free to use a pastebin/gist service if necessary.

(https://dpaste.com/EPKMCD3VB)

Web Browser

If the problem is related to the Web interface, open your browser inspector Console and Network tabs while refreshing (reloading) and reproducing the problem. Provide any relevant output/errors here that appear.

Web interface works.

Web server / Reverse Proxy

The output of your Apache/nginx/system log in /var/log/____:

(https://dpaste.com/4DKFNGSUG)

Configuration

Nextcloud

The output of occ config:list system or similar is best, but, if not possible, the contents of your config.php file from /path/to/nextcloud is fine (make sure to remove any identifiable information!):

<?php
$CONFIG = array (
  'instanceid' => '***REMOVED***',
  'passwordsalt' => '***REMOVED***',
  'secret' => '***REMOVED***',
  'trusted_domains' => 
  array (
    0 => 'nextcloud.url.com',
  ),
  'datadirectory' => '/var/www/html/data',
  'dbtype' => 'mysql',
  'version' => '31.0.6.2',
  'overwrite.cli.url' => 'https://nextcloud.url.com',
  'overwritehost' => 'nextcloud.url.com',
  'overwriteprotocol' => 'https',
  'dbname' => '***REMOVED***',
  'dbhost' => '***REMOVED***',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'mysql.utf8mb4' => true,
  'dbuser' => '***REMOVED***',
  'dbpassword' => '***REMOVED***',
  'installed' => true,
  'htaccess.RewriteBase' => '/',
  'memcache.local' => '\\OC\\Memcache\\APCu',
  'apps_paths' => 
  array (
    0 => 
    array (
      'path' => '/var/www/html/apps',
      'url' => '/apps',
      'writable' => false,
    ),
    1 => 
    array (
      'path' => '/var/www/html/custom_apps',
      'url' => '/custom_apps',
      'writable' => true,
    ),
  ),
  'upgrade.disable-web' => true,
  'backgroundjobs_mode' => 'cron',
  'maintenance_window_start_time' => 2,
  'default_phone_region' => 'CH',
  'maintenance' => false,
);

The output of occ app:list (if possible).

apps
ubuntu@nextcloud-vps:~/nextcloud$ docker exec -u www-data nextcloud_app_1 php occ app:list
Enabled:
  - activity: 4.0.0
  - app_api: 5.0.2
  - bruteforcesettings: 4.0.0
  - calendar: 5.3.3
  - circles: 31.0.0
  - cloud_federation_api: 1.14.0
  - comments: 1.21.0
  - contacts: 7.1.3
  - contactsinteraction: 1.12.0
  - dashboard: 7.11.0
  - dav: 1.33.0
  - federatedfilesharing: 1.21.0
  - federation: 1.21.0
  - files: 2.3.1
  - files_downloadlimit: 4.0.0
  - files_pdfviewer: 4.0.0
  - files_reminders: 1.4.0
  - files_sharing: 1.23.1
  - files_trashbin: 1.21.0
  - files_versions: 1.24.0
  - firstrunwizard: 4.0.0
  - logreader: 4.0.0
  - lookup_server_connector: 1.19.0
  - mail: 5.1.4
  - nextcloud_announcements: 3.0.0
  - notes: 4.12.1
  - notifications: 4.0.0
  - oauth2: 1.19.1
  - password_policy: 3.0.0
  - photos: 4.0.0-dev.1
  - privacy: 3.0.0
  - profile: 1.0.0
  - provisioning_api: 1.21.0
  - recommendations: 4.0.0
  - related_resources: 2.0.0
  - richdocuments: 8.7.1
  - richdocumentscode_arm64: 25.4.202
  - serverinfo: 3.0.0
  - settings: 1.14.0
  - sharebymail: 1.21.0
  - spreed: 21.1.0
  - support: 3.0.0
  - survey_client: 3.0.0
  - systemtags: 1.21.1
  - text: 5.0.0
  - theming: 2.6.1
  - twofactor_backupcodes: 1.20.0
  - updatenotification: 1.21.0
  - user_status: 1.11.0
  - viewer: 4.0.0
  - weather_status: 1.11.0
  - webhook_listeners: 1.2.0
  - workflowengine: 2.13.0
Disabled:
  - admin_audit: 1.21.0
  - encryption: 2.19.0
  - files_external: 1.23.0
  - richdocumentscode: 25.4.202
  - suspicious_login: 9.0.1
  - twofactor_nextcloud_notification: 5.0.0
  - twofactor_totp: 13.0.0-dev.0
  - user_ldap: 1.22.0

Please use search all this topics have been discussed often already setup_warning
For cron in Docker you another “sidecar” cron container - see more advanced example in How to docker-compose with notify_push (2024) - same source for “database locking” you need redis..

please be aware Docker community image is intended to run behind a reverse proxy reverseproxy for jump start look at 101: reverse proxy

1 Like

After the above, if still stuck, post your real config as described above and/or in the support template. Also post your Compose file.

1 Like