Steps to reproduce
- Install LAMP (with self-signed SSL) and Owncloud (Version 10.2) on a local LAN server following the instruction here. Owncloud running on a new port.
- Having php 7.3 and php 7.2 both installed on the server. Configured to use php 7.2 following the instruction here.
- Enable the following apache module manually: rewrite, mod_fcgid, setenvif, headers as suggested here.
- Web initialization, login from web are fine.
- App passwords / tokens created.
- Login from Windows client (Version 2.5.4), Android app (newly installed from google play) failed at authentication.
Expected behaviour
Login from clients works.
Actual behaviour
Authentication failed
Server configuration
Operating system:
Ubuntu 18.04.2 LTS
Web server:
Apache2
Database:
10.1.40-MariaDB-0ubuntu0.18.04.1
PHP version:
7.2
ownCloud version: (see ownCloud admin page)
10.2.0.5
Updated from an older ownCloud or fresh install:
fresh install
Where did you install ownCloud from:
http://download.owncloud.org/download/repositories/10.2/Ubuntu_18.04/
Signing status (ownCloud 9.0 and above):
“No errors have been found.”
Login as admin user into your ownCloud and access
http://example.com/index.php/settings/integrity/failed
paste the results into https://gist.github.com/ and puth the link here.
The content of config/config.php:
List of activated apps:
Are you using external storage, if yes which one: local/smb/sftp/…
no
Are you using encryption: yes/no
no
Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/…
Webdav, I guess.
Client configuration
Operating system:
Windows 10
Logs
Web server error log
Insert your webserver log here
ownCloud log (data/owncloud.log)
I am just pasting those I think the most relevant. Ask me for more.
{"reqId":"bgVYlBUe2xLHEcb8oTvZ","level":0,"time":"2019-06-21T00:15:02+00:00","remoteAddr":"[client ip]","user":"[username]","app":"OC\\User\\Session::validateToken","method":"GET","url":"\/ocs\/v2.php\/apps\/notifications\/api\/v1\/notifications?format=json","message":"token d19e7754c0fd0405edf9e41055a05941b4f58660aa255cf4fe1f0efda36553e7310847ba1515ee2d5ddecb166a994e9409021e41358f09f9262b1772f788cee4 with token id 17 found, validating"}
{"reqId":"9a084e07-71df-44d8-b6ff-985f855ca38b","level":0,"time":"2019-06-21T00:15:22+00:00","remoteAddr":"[client ip]","user":"--","app":"webdav","method":"GET","url":"\/remote.php\/webdav\/","message":"Exception: HTTP\/1.1 401 No 'Authorization: Basic' header found. Either the client didn't send one, or the server is misconfigured, No 'Authorization: Basic' header found. Either the client didn't send one, or the server is misconfigured: {\"Exception\":\"Sabre\\\\DAV\\\\Exception\\\\NotAuthenticated\",\"Message\":\"No 'Authorization: Basic' header found. Either the client didn't send one, or the server is misconfigured, No 'Authorization: Basic' header found. Either the client didn't send one, or the server is misconfigured\",\"Code\":0,\"Trace\":\"#0 [internal function]: Sabre\\\\DAV\\\\Auth\\\\Plugin->beforeMethod(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#1 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/event\\\/lib\\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#2 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(466): Sabre\\\\Event\\\\EventEmitter->emit('beforeMethod', Array)\\n#3 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(254): Sabre\\\\DAV\\\\Server->invokeMethod(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#4 \\\/var\\\/www\\\/owncloud\\\/apps\\\/dav\\\/appinfo\\\/v1\\\/webdav.php(65): Sabre\\\\DAV\\\\Server->exec()\\n#5 \\\/var\\\/www\\\/owncloud\\\/remote.php(165): require_once('\\\/var\\\/www\\\/ownclo...')\\n#6 {main}\",\"File\":\"\\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Auth\\\/Plugin.php\",\"Line\":168}"}
Windows Client log
06-21 08:32:38:972 [ info gui.folder.manager ]: Setup folders from "[folders]" (migration)
06-21 08:32:38:974 [ info sync.clientproxy ]: Set proxy configuration to use system configuration
06-21 08:32:38:989 [ info gui.application ]: No configured folders yet, starting setup wizard
06-21 08:32:41:977 [ info gui.updater ]: Checking for available update
06-21 08:32:41:977 [ info sync.accessmanager ]: 2 "" "https://updates.owncloud.com/client/?version=2.5.4.11415&platform=win32&oem=ownCloud&versionsuffix=&msi=true" has X-Request-ID "f9ae839e-ff14-4f2d-8461-6f1d6e5a2277"
06-21 08:32:42:915 [ info gui.updater ]: Client is on latest version!
06-21 08:34:21:190 [ info gui.wizard ]: No system proxy set by OS
06-21 08:34:21:190 [ info sync.accessmanager ]: 2 "" "https://[server ip]:[port]/status.php" has X-Request-ID "756ebfcf-2652-400e-8dfe-17a284889224"
06-21 08:34:21:190 [ info sync.networkjob ]: OCC::CheckServerJob created for "https://[server ip]" + "status.php" "OCC::OwncloudSetupWizard"
06-21 08:34:23:931 [ info gui.sslerrordialog ]: SSL-Connection is trusted: true
06-21 08:34:23:932 [ info sync.account ]: "SSL-Errors happened for url \"https://[server ip]:[port]/status.php\" \tError in QSslCertificate(\"3\", \"1d:2a:f6:4c:08:82:1e:ff:9d:5d:c6:54:4a:fa:f9:57:1d:64:b0:7b\", \"YssHb3IPgO5eiP0glNJyCw==\", (\"ASGROUP\"), (\"ASGROUP\"), QMap(), QDateTime(2019-06-20 11:35:48.000 UTC Qt::TimeSpec(UTC)), QDateTime(2029-06-17 11:35:48.000 UTC Qt::TimeSpec(UTC))) : \"The certificate is self-signed, and untrusted\" ( \"The certificate is self-signed, and untrusted\" ) \n " Certs are known and trusted! This is not an actual error.
06-21 08:34:23:972 [ info sync.networkjob.checkserver ]: status.php returns: QJsonDocument({"edition":"Community","installed":true,"maintenance":false,"needsDbUpgrade":false,"productname":"ownCloud","version":"10.2.0.5","versionstring":"10.2.0"}) QNetworkReply::NetworkError(NoError) Reply: QNetworkReplyHttpImpl(0xb372190)
06-21 08:34:23:972 [ info sync.networkjob.determineauthtype ]: Determining auth type for QUrl("https://[server ip]:[port]/remote.php/webdav/")
06-21 08:34:23:973 [ info sync.accessmanager ]: 2 "" "https://[server ip]:[port]/remote.php/webdav/" has X-Request-ID "6ef97dfa-5b45-47e6-a851-5bde47aa1cbc"
06-21 08:34:23:973 [ info sync.networkjob ]: OCC::SimpleNetworkJob created for "https://[server ip]" + "" ""
06-21 08:34:23:973 [ info sync.accessmanager ]: 6 "PROPFIND" "https://[server ip]:[port]/remote.php/webdav/" has X-Request-ID "80bab24a-372c-401b-9b5b-a7841c9bcbd1"
06-21 08:34:23:973 [ info sync.networkjob ]: OCC::SimpleNetworkJob created for "https://[server ip]" + "" ""
06-21 08:34:24:059 [ info sync.networkjob.determineauthtype ]: Auth type for QUrl("https://[server ip]:[port]/remote.php/webdav/") is 0
06-21 08:34:32:552 [ info gui.wizard ]: Connect to url: "https://[server ip]:[port]"
06-21 08:34:32:552 [ info sync.accessmanager ]: 6 "PROPFIND" "https://[server ip]:[port]/remote.php/webdav/" has X-Request-ID "747423c4-1f88-4f22-a59e-8f74124bd1be"
06-21 08:34:32:553 [ info sync.networkjob ]: OCC::PropfindJob created for "https://[server ip]" + "/" "OCC::OwncloudSetupWizard"
06-21 08:34:32:635 [ warning sync.credentials.http ]: Stop request: Authentication failed for "https://[server ip]:[port]/remote.php/webdav/"
06-21 08:34:32:641 [ info sync.networkjob.propfind ]: PROPFIND of QUrl("https://[server ip]:[port]/remote.php/webdav/") FINISHED WITH STATUS "AuthenticationRequiredError Host requires authentication"
06-21 08:34:32:641 [ warning sync.networkjob.propfind ]: *not* successful, http result code is 401 ""
06-21 08:54:21:039 [ debug default ] [ OCC::ownCloudGui::slotAbout ]: QSize(512, 512)