Как установить соединение webdav с аутентификацией сертификата клиента TLS в Ubuntu?

Этот ответ хорошо подходит для установления соединений webdav или webdavs с nautilus.

Однако, когда я пытаюсь сделать это на общем ресурсе webdav, защищенном аутентификацией сертификата клиента TLS с собственной подписью, я получаю:

Сначала:

The signing certificate authority is not known.
Certificate information:
....
Are you really sure you would like to continue?

И после того, как я нажимаю на да :

...Unhandled error message: HTTP Error: Error performing TLS handshake: A TLS fatal allert has been received.

... и у меня никогда не спрашивают сертификат клиента. Я на Ubuntu 16.04 с Unity и желательно, чтобы это работало с Nautilus. Мне нужны инструкции, включая установку сертификата клиента (и центра сертификации).

PS: Этот вопрос кажется связанным (не идентичным), но также не имеет ответа.

2
задан 8 June 2016 в 14:56

2 ответа

Поскольку это сам подписанный сертификат, необходимо будет удостовериться, чтобы ОБА концы имели установленный сертификат общественности CA.

Это обычно не работает таким же образом на все пакеты, поскольку некоторые не используют центральное хранилище сертификата.

Heres некоторые инструкции относительно установки базируются сертификаты CA в ubuntu How, я устанавливаю корневой сертификат?

0
ответ дан 9 June 2016 в 00:56
  • 1
    Кроме того, Учетные записи пользователей использует adduser, doesn' t это? – Gunnar Hjalmarsson 2 November 2017 в 11:05

Одно решение, которое работало, использует davfs.

Установка

конфигурация davfs

sudo apt-get install davfs2

Установки

затем копирует сертификат с CA (в pem формате) к/ect/davfs2/certs и клиентскому сертификату (в .p12 формате) к/ect/davfs/certs/private и изменяет конфигурационный файл, например,

sudo nano /etc/davfs2/davfs2.conf

путем некомментария (удаление #) строк trust_ca_cert и clientcert и добавление, что полные пути к соответствующим сертификатам, например,

trust_ca_cert         /etc/davfs2/certs/ca.cert.pem
#servercert
clientcert            /etc/davfs2/certs/private/xxx.yyy.com.p12

сохранили файл и выход ( Ctrl + O , Ctrl + x в нано) и удостоверяются, что clientcert имеет корректные полномочия

sudo su
chmod 0600 /etc/davfs2/certs/private/xxx.yyy.com.p12
exit

Использование

, Чтобы смонтировать, что файловая система работает

sudo mount -t davfs -o uid=bruni,gid=users https://serveraddress /home/bruni/mountpoint

Недостатки

, проблемы с этим решением:

  1. я должен ввести пароль сертификата каждый раз, когда я монтирую долю webdav (пароли сертификата, как предполагается, не известны пользователям, и они довольно длинны) обновление : Это не абсолютно верно. Можно использовать /etc/davfs2/secrets учетный файл.
  2. веб-сайт предлагает ссылки в форме davs://, которые не работают с вышеупомянутым сценарием
  3. , Freefilesync возвращает следующую ошибку, когда я пытаюсь синхронизироваться с папкой, смонтированной как выше:

>

Cannot set directory lock for "/path/to/mountpoint".

Cannot write file "/path/to/mountpoint/sync.ffs_lock".

Error Code 13:Permission denied (open)

обновление Для смягчения этого я переключился на rsync. Следовательно, я предпочел бы ответ, включающий инструкции относительно того, как сделать это использование стандартного метода Наутилуса или некоторых средств к вышеупомянутым проблемам.

0
ответ дан 9 June 2016 в 00:56
  • 1
    Ваш второй блок кода все еще использует useradd в команде; это, как предполагалось, было adduser? – David Z 2 November 2017 в 11:04

Другие вопросы по тегам:

Похожие вопросы: