WebDAV, SSL Handshake, OwnCloud, CloudFlare, and Ubuntu 12.04

by @edent | # # # # # | Read ~1,524 times.

OwnCloud Logo
Right, that’s enough keyword stuffing!

I’ve been trying to mount an OwnCloud instance via WebDAV. I kept receiving the error

Mounting failed. SSL handshake failed: SSL error: sslv3 alert handshake failure

Or

SSL handshake failed: SSL alert received: Handshake failed

The route of this problem seems to be that the version of libneon (the WebDAVS connector library) shipped with Ubuntu 12.04 doesn’t play nicely with the SSL certificates issued by CloudFlare.

Here’s the solution I discovered.

Grab libneon 30.1 – and extract it to a directory.

Compile

./configure --prefix=/usr --enable-shared --with-ssl=openssl --disable-static
make
sudo make install

We now need to replace the old libneon-gnutls.so – and we want the end result to look like

/usr/lib/libneon-gnutls.so.27 -> /usr/lib/libneon.so.27
/usr/lib/libneon.so -> libneon.so.27.3.1
/usr/lib/libneon.so.27 -> libneon.so.27.3.1

First, back up the old version.

sudo mv /usr/lib/libneon-gnutls.so.27 /usr/lib/libneon-gnutls.so.27.old

Then, in /usr/lib/

sudo ln -s /usr/lib/libneon.so.27.3.1 libneon.so.27
sudo ln -s /usr/lib/libneon-gnutls.so.27.3.1 libneon.so
sudo ln -s /usr/lib/libneon.so.27 libneon-gnutls.so.27

Then, to mount the directory.

sudo mount -t davfs -o uid=me,gid=users https://example/owncloud/remote.php/webdav/ /mount/remote

(Where “me” is your user name.)

That made everything work!

Leave a Reply

Your email address will not be published. Required fields are marked *