Slow upload and disconnects for ldap users

hi
I have a nextcloud server connected to active directory. Upload speed for ldap users is around 40 mbps while local users have upload speed of more than 100 mbps from the same workstation. Also when uploading large files, ldap users get disconnected and logout with error (included in this post) after around 5 to 6 minutes.

I have reinstalled the system on a new server (old server was on centos 7 and the new one has centos 9) and the problem exists.

please help

The Basics

  • Nextcloud Server version (e.g., 29.x.x):
    • 23.0.12
  • Operating system and version (e.g., Ubuntu 24.04):
    • centos 9
  • Web server and version (e.g, Apache 2.4.25):
    • apache 2.4.62
  • Reverse proxy and version _(e.g. nginx 1.27.2)
    • replace me
  • PHP version (e.g, 8.3):
    • 8.0
  • Is this the first time you’ve seen this error? (Yes / No):
    • Yes
  • When did this problem seem to first start?
    • ``
  • Installation method (e.g. AlO, NCP, Bare Metal/Archive, etc.)
    • Bare Metal/
  • Are you using CloudfIare, mod_security, or similar? (Yes / No)
    • No

Summary of the issue you are facing:

slow upload speed for ldap users
frequent disconnect (logout) when uploading large files for ldap users

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

Log entries

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.

{"reqId":"Z-FSy-Uslt8WJsCEwWcc1AAAABA","level":0,"time":"March 24, 2025 13:40:43","remoteAddr":"192.168.1.10","user":"--","app":"webdav","method":"PUT","url":"/remote.php/dav/uploads/user/web-file-upload-bfc7da4e3ff4d13bd85b93d8b29b4419-1742819823080/1635778560","message":"Cannot authenticate over ajax calls","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0","version":"23.0.12.2","exception":{"Exception":"Sabre\\DAV\\Exception\\NotAuthenticated","Message":"Cannot authenticate over ajax calls","Code":0,"Trace":[{"file":"/var/www/html/apps/dav/lib/Connector/Sabre/Auth.php","line":154,"function":"auth","class":"OCA\\DAV\\Connector\\Sabre\\Auth","type":"->","args":[{"__class__":"Sabre\\HTTP\\Request"},{"__class__":"Sabre\\HTTP\\Response"}]},{"file":"/var/www/html/3rdparty/sabre/dav/lib/DAV/Auth/Plugin.php","line":182,"function":"check","class":"OCA\\DAV\\Connector\\Sabre\\Auth","type":"->","args":[{"__class__":"Sabre\\HTTP\\Request"},{"__class__":"Sabre\\HTTP\\Response"}]},{"file":"/var/www/html/3rdparty/sabre/dav/lib/DAV/Auth/Plugin.php","line":137,"function":"check","class":"Sabre\\DAV\\Auth\\Plugin","type":"->","args":[{"__class__":"Sabre\\HTTP\\Request"},{"__class__":"Sabre\\HTTP\\Response"}]},{"file":"/var/www/html/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"beforeMethod","class":"Sabre\\DAV\\Auth\\Plugin","type":"->","args":[{"__class__":"Sabre\\HTTP\\Request"},{"__class__":"Sabre\\HTTP\\Response"}]},{"file":"/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php","line":456,"function":"emit","class":"Sabre\\DAV\\Server","type":"->","args":["beforeMethod:PUT",[{"__class__":"Sabre\\HTTP\\Request"},{"__class__":"Sabre\\HTTP\\Response"}]]},{"file":"/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php","line":253,"function":"invokeMethod","class":"Sabre\\DAV\\Server","type":"->","args":[{"__class__":"Sabre\\HTTP\\Request"},{"__class__":"Sabre\\HTTP\\Response"}]},{"file":"/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php","line":321,"function":"start","class":"Sabre\\DAV\\Server","type":"->","args":[]},{"file":"/var/www/html/apps/dav/lib/Server.php","line":339,"function":"exec","class":"Sabre\\DAV\\Server","type":"->","args":[]},{"file":"/var/www/html/apps/dav/appinfo/v2/remote.php","line":35,"function":"exec","class":"OCA\\DAV\\Server","type":"->","args":[]},{"file":"/var/www/html/remote.php","line":170,"args":["/var/www/html/apps/dav/appinfo/v2/remote.php"],"function":"require_once"}],"File":"/var/www/html/apps/dav/lib/Connector/Sabre/Auth.php","Line":249,"CustomMessage":"--"}}
{"reqId":"Z-FSy-Uslt8WJsCEwWcc1QAAAAw","level":0,"time":"March 24, 2025 13:40:43","remoteAddr":"192.168.1.10","user":"--","app":"webdav","method":"DELETE","url":"/remote.php/dav/uploads/user/web-file-upload-bfc7da4e3ff4d13bd85b93d8b29b4419-1742819823080","message":"Cannot authenticate over ajax calls","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0","version":"23.0.12.2","exception":{"Exception":"Sabre\\DAV\\Exception\\NotAuthenticated","Message":"Cannot authenticate over ajax calls","Code":0,"Trace":[{"file":"/var/www/html/apps/dav/lib/Connector/Sabre/Auth.php","line":154,"function":"auth","class":"OCA\\DAV\\Connector\\Sabre\\Auth","type":"->","args":[{"__class__":"Sabre\\HTTP\\Request"},{"__class__":"Sabre\\HTTP\\Response"}]},{"file":"/var/www/html/3rdparty/sabre/dav/lib/DAV/Auth/Plugin.php","line":182,"function":"check","class":"OCA\\DAV\\Connector\\Sabre\\Auth","type":"->","args":[{"__class__":"Sabre\\HTTP\\Request"},{"__class__":"Sabre\\HTTP\\Response"}]},{"file":"/var/www/html/3rdparty/sabre/dav/lib/DAV/Auth/Plugin.php","line":137,"function":"check","class":"Sabre\\DAV\\Auth\\Plugin","type":"->","args":[{"__class__":"Sabre\\HTTP\\Request"},{"__class__":"Sabre\\HTTP\\Response"}]},{"file":"/var/www/html/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"beforeMethod","class":"Sabre\\DAV\\Auth\\Plugin","type":"->","args":[{"__class__":"Sabre\\HTTP\\Request"},{"__class__":"Sabre\\HTTP\\Response"}]},{"file":"/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php","line":456,"function":"emit","class":"Sabre\\DAV\\Server","type":"->","args":["beforeMethod:DELETE",[{"__class__":"Sabre\\HTTP\\Request"},{"__class__":"Sabre\\HTTP\\Response"}]]},{"file":"/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php","line":253,"function":"invokeMethod","class":"Sabre\\DAV\\Server","type":"->","args":[{"__class__":"Sabre\\HTTP\\Request"},{"__class__":"Sabre\\HTTP\\Response"}]},{"file":"/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php","line":321,"function":"start","class":"Sabre\\DAV\\Server","type":"->","args":[]},{"file":"/var/www/html/apps/dav/lib/Server.php","line":339,"function":"exec","class":"Sabre\\DAV\\Server","type":"->","args":[]},{"file":"/var/www/html/apps/dav/appinfo/v2/remote.php","line":35,"function":"exec","class":"OCA\\DAV\\Server","type":"->","args":[]},{"file":"/var/www/html/remote.php","line":170,"args":["/var/www/html/apps/dav/appinfo/v2/remote.php"],"function":"require_once"}],"File":"/var/www/html/apps/dav/lib/Connector/Sabre/Auth.php","Line":249,"CustomMessage":"--"}}

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!):

{
    "system": {
        "installed": true,
        "dbtype": "mysql",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbtableprefix": "oc_",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "forcessl": false,
        "blacklisted_files": [
            ".htaccess"
        ],
        "overwritehost": "",
        "overwritewebroot": "",
        "theme": "",
        "default_language": "en_US",
        "3rdpartyroot": "",
        "3rdpartyurl": "",
        "defaultapp": "files",
        "knowledgebaseenabled": true,
        "appstoreenabled": true,
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpdebug": false,
        "mail_smtpmode": "smtp",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "25",
        "mail_smtptimeout": 10,
        "mail_smtpauthtype": "LOGIN",
        "memcache.local": "\\OC\\Memcache\\APCu",
        "memcache.distributed": "\\OC\\Memcache\\Redis",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "port": 0
        },
        "trashbin_retention_obligation": "30, auto",
        "allow_user_to_change_display_name": false,
        "appcodechecker": true,
        "updatechecker": true,
        "has_internet_connection": true,
        "check_for_working_webdav": true,
        "check_for_working_htaccess": true,
        "log_type": "owncloud",
        "logfile": "\/var\/log\/nextcloud.log",
        "loglevel": 0,
        "logdateformat": "F d, Y H:i:s",
        "logtimezone": "Europe\/Berlin",
        "log_query": false,
        "cron_log": true,
        "log_rotate_size": false,
        "remember_login_cookie_lifetime": 1296000,
        "session_lifetime": 86400,
        "session_keepalive": true,
        "session_relaxed_expiry": true,
        "auto_logout": false,
        "custom_csp_policy": "default-src 'self'; script-src 'self' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; frame-src *; img-src *; font-src 'self' data:; media-src *",
        "xframe_restriction": true,
        "maintenance": false,
        "apps_paths": [
            {
                "path": "\/var\/www\/html\/apps",
                "url": "\/apps",
                "writable": true
            }
        ],
        "customclient_desktop": "",
        "customclient_android": "",
        "customclient_ios": "",
        "enable_previews": true,
        "preview_max_scale_factor": 10,
        "preview_libreoffice_path": "\/usr\/bin\/libreoffice",
        "preview_office_cl_parameters": "",
        "enable_avatars": true,
        "openssl": [],
        "cipher": "AES-256-CFB",
        "singleuser": false,
        "asset-pipeline.enabled": false,
        "mount_file": "",
        "cache_path": "",
        "quota_include_external_storage": false,
        "filesystem_check_changes": 1,
        "filesystem_cache_readonly": false,
        "share_folder": "\/",
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "version": "23.0.12.2",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "appstore.experimental.enabled": true,
        "cas_dir": "\/usr\/share\/pear",
        "ldapIgnoreNamingRules": false,
        "debug": false,
        "login.alternatives": [],
        "ldapProviderFactory": "\\OCA\\User_LDAP\\LDAPProviderFactory",
        "twofactor_enforced": "false",
        "twofactor_enforced_groups": [],
        "twofactor_enforced_excluded_groups": [],
        "mail_sendmailmode": "smtp"
    }
}

Apps

Enabled:

  • accessibility: 1.9.0
  • admin_audit: 1.13.0
  • cloud_federation_api: 1.6.0
  • comments: 1.13.0
  • contacts: 4.2.5
  • contactsinteraction: 1.4.0
  • dashboard: 7.3.0
  • dav: 1.21.0
  • federatedfilesharing: 1.13.0
  • federation: 1.13.0
  • files: 1.18.0
  • files_external: 1.15.0
  • files_pdfviewer: 2.4.0
  • files_rightclick: 1.2.0
  • files_sharing: 1.15.0
  • files_trashbin: 1.13.0
  • files_versions: 1.16.0
  • files_videoplayer: 1.12.0
  • firstrunwizard: 2.12.0
  • group_default_quota: 0.1.5
  • groupfolders: 11.1.6
  • groupquota: 0.1.9
  • logreader: 2.8.0
  • lookup_server_connector: 1.11.0
  • nextcloud_announcements: 1.12.0
  • notifications: 2.11.2
  • oauth2: 1.11.0
  • password_policy: 1.13.0
  • photos: 1.5.0
  • privacy: 1.7.0
  • provisioning_api: 1.13.0
  • serverinfo: 1.13.0
  • settings: 1.5.0
  • sharebymail: 1.13.0
  • support: 1.6.0
  • systemtags: 1.13.0
  • text: 3.4.1
  • theming: 1.14.0
  • twofactor_backupcodes: 1.12.0
  • updatenotification: 1.13.0
  • user_ldap: 1.13.1
  • user_status: 1.3.1
  • viewer: 1.7.0
  • weather_status: 1.3.0
  • workflowengine: 2.5.0
    Disabled:
  • activity: 2.2.1
  • bruteforcesettings: 2.4.0
  • circles: 23.1.2
  • encryption
  • limit_login_to_ip: 3.1.0
  • oidc_login: 2.6.0
  • recommendations: 0.4.0
  • survey_client: 1.10.0