I’m trying to access collabora through a chain of two reverse proxies. I attempt to open a document and get to this point and receive this error:
I’m using the docker version of collabora and receive this error the following error from the log files
wsd-00017-00328 2020-04-21 12:00:28.975267 [ docbroker_02f ] ERR Cannot get file info from WOPI storage uri [https://test.<redacted>.com/index.php/apps/richdocuments/wopi/files/25_ocny42d5quk3?access_token=i6xUTRFQ8CjnzkiVxGaiqzxim23GoRQu&access_token_ttl=0&permission=edit]. Error: SSL Exception: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version| wsd/Storage.cpp:504
wsd-00017-00328 2020-04-21 12:00:28.975610 [ docbroker_02f ] ERR loading document exception: SSL Exception| wsd/DocumentBroker.cpp:1158
wsd-00017-00328 2020-04-21 12:00:28.975752 [ docbroker_02f ] ERR Failed to add session to [/index.php/apps/richdocuments/wopi/files/25_ocny42d5quk3] with URI [https://test.<redacted>.com/index.php/apps/richdocuments/wopi/files/25_ocny42d5quk3?access_token=i6xUTRFQ8CjnzkiVxGaiqzxim23GoRQu&access_token_ttl=0&permission=edit]: SSL Exception| wsd/DocumentBroker.cpp:1120
wsd-00017-00328 2020-04-21 12:00:28.975915 [ docbroker_02f ] ERR Error while loading : SSL Exception| wsd/LOOLWSD.cpp:2703
wsd-00017-00328 2020-04-21 12:00:28.987900 [ docbroker_02f ] WRN Child session [01b1] not found to forward message: load url=https://test.<redacted>.com/index.php/apps/richdocuments/wopi/files/25_ocny42d5quk3?access_token=i6xUTRFQ8CjnzkiVxGaiqzxim23GoRQu&access_token_ttl=0&permission=edit readonly=0 lang=en| wsd/DocumentBroker.cpp:1770
wsd-00017-00328 2020-04-21 12:00:29.977282 [ docbroker_02f ] ERR Invalid or unknown session [01b1] to remove.| wsd/DocumentBroker.cpp:1194kit-00325-00019 2020-04-21 12:00:29.977618 [ loolkit ] WRN Kit connection lost without exit arriving from wsd. Setting TerminationFlag| kit/Kit.cpp:2240
wsd-00017-00328 2020-04-21 12:00:29.981846 [ docbroker_02f ] ERR No socket associated with WebSocketHandler 0x7f5bb4001a40| ./net/WebSocketHandler.hpp:125
wsd-00017-00018 2020-04-21 12:00:29.982704 [ prisoner_poll ] WRN Prisoner connection disconnected but without valid socket.| wsd/LOOLWSD.cpp:1799
wsd-00017-00332 2020-04-21 12:00:30.267019 [ docbroker_030 ] ERR Cannot get file info from WOPI storage uri [https://test.<redacted>.com/index.php/apps/richdocuments/wopi/files/25_ocny42d5quk3?access_token=i6xUTRFQ8CjnzkiVxGaiqzxim23GoRQu&access_token_ttl=0&permission=edit]. Error: SSL Exception: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version| wsd/Storage.cpp:504
wsd-00017-00332 2020-04-21 12:00:30.267347 [ docbroker_030 ] ERR loading document exception: SSL Exception| wsd/DocumentBroker.cpp:1158
wsd-00017-00332 2020-04-21 12:00:30.267672 [ docbroker_030 ] ERR Failed to add session to [/index.php/apps/richdocuments/wopi/files/25_ocny42d5quk3] with URI [https://test.<redacted>.com/index.php/apps/richdocuments/wopi/files/25_ocny42d5quk3?access_token=i6xUTRFQ8CjnzkiVxGaiqzxim23GoRQu&access_token_ttl=0&permission=edit]: SSL Exception| wsd/DocumentBroker.cpp:1120
wsd-00017-00332 2020-04-21 12:00:30.267939 [ docbroker_030 ] ERR Error while loading : SSL Exception| wsd/LOOLWSD.cpp:2703
wsd-00017-00332 2020-04-21 12:00:30.268191 [ docbroker_030 ] WRN Child session [01b2] not found to forward message: load url=https://test.<redacted>.com/index.php/apps/richdocuments/wopi/files/25_ocny42d5quk3?access_token=i6xUTRFQ8CjnzkiVxGaiqzxim23GoRQu&access_token_ttl=0&permission=edit readonly=0 lang=en| wsd/DocumentBroker.cpp:1770
wsd-00017-00332 2020-04-21 12:00:31.269214 [ docbroker_030 ] ERR Invalid or unknown session [01b2] to remove.| wsd/DocumentBroker.cpp:1194kit-00329-00019 2020-04-21 12:00:31.269482 [ loolkit ] WRN Kit connection lost without exit arriving from wsd. Setting TerminationFlag| kit/Kit.cpp:2240
wsd-00017-00332 2020-04-21 12:00:31.273890 [ docbroker_030 ] ERR No socket associated with WebSocketHandler 0x7f5bb4001a40| ./net/WebSocketHandler.hpp:125
wsd-00017-00018 2020-04-21 12:00:31.274701 [ prisoner_poll ] WRN Prisoner connection disconnected but without valid socket.| wsd/LOOLWSD.cpp:1799
I’m not certain how collabora operates or works through reverse proxies, however if I take the first line or this error log and actually within the browser try to visit the site mentioned:
ERR Cannot get file info from WOPI storage uri [https://test..com/index.php/apps/richdocuments/wopi/files/25_ocny42d5quk3?access_token=i6xUTRFQ8CjnzkiVxGaiqzxim23GoRQu&access_token_ttl=0&permission=edit]. Error: SSL Exception: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version| wsd/Storage.cpp:504
Site I’m attempting to visit:
https://test..com/index.php/apps/richdocuments/wopi/files/25_ocny42d5quk3?access_token=i6xUTRFQ8CjnzkiVxGaiqzxim23GoRQu&access_token_ttl=0&permission=edit
I get the following
So if its reachable in the browser – how come the collabora app can not reach this page complaining of SSL error?
I did some further digging within the collabora container. The container itself runs ubuntu/xenial as a base image. The openssl version inside the container is:
OpenSSL 1.0.2g 1 Mar 2016
I have no idea if this has anything to do with the problem.
Addendum:
I’ve isolated the problem to the container. collabora is running on an Ubuntu 18.04 host.
From the docker host:
# curl https://test.<redacted>.com/index.php/apps/richdocuments/wopi/files/25_ocny42d5quk3?access_token=QAMNMk3aI3e2R7zvmmvq8otOgn4doY6L&access_token_ttl=0&permission=edit
[1] 2357
[2] 2358
root@ubuntu:/etc/nginx/snippets# {"BaseFileName":"About.odt","Size":76671,"Version":"0","UserId":"ncadmin","OwnerId":"ncadmin","UserFriendlyName":"ncadmin","UserExtraInfo":{"avatar":"https:\/\/nextcloud.<redacted>.com\/avatar\/ncadmin\/32"},"UserCanWrite":true,"UserCanNotWriteRelative":false,"PostMessageOrigin":"https:\/\/nextcloud.<redacted>.com\/","LastModifiedTime":"2019-10-06T13:12:44.000000Z","SupportsRename":true,"UserCanRename":true,"EnableInsertRemoteImage":true,"EnableShare":true,"HideUserList":"desktop","DisablePrint":"0","DisableExport":"0","DisableCopy":"0","HideExportOption":"0","HidePrintOption":"0","DownloadAsPostMessage":false}
Same statement as above from the docker container:
root@2bbbb9a893d8:/# curl https://test.<redacted>.com/index.php/apps/richdocuments/wopi/files/25_ocny42d5quk3?access_token=QAMNMk3aI3e2R7zvmmvq8otOgn4doY6L&access_token_ttl=0&permission=edit
[1] 1711
[2] 1712
root@2bbbb9a893d8:/# curl: (35) gnutls_handshake() failed: Error in protocol version