无法在启用 SSL 的情况下同步客户端上的库,卡在“正在连接到服务器”

无法在启用 SSL 的情况下同步客户端上的库,卡在“正在连接到服务器”

我的工作是在我们的 seafile 服务器上配置 SSL,我是 linux/certificate 的初学者。

我们有来自 GoDaddy 的通配符证书,并且需要转换 crt 和密钥扩展,我配置了default.conf设置适当的配置,如下所示:

#
# The default server
#


server {

    listen 80;
    server_name ***.*******.com;

}

server {

    listen 12443;
    ssl on;
    ssl_certificate /etc/pki/tls/certs/*****.crt;
    ssl_certificate_key /etc/pki/tls/certs/*****.key;
    server_name ***.*******.com;

    location / {
        fastcgi_pass    127.0.0.1:8000;
        fastcgi_param   SCRIPT_FILENAME   $document_root$fastcgi_script_name;
        fastcgi_param   PATH_INFO         $fastcgi_script_name;

    fastcgi_param       SERVER_PROTOCOL   $server_protocol;
    fastcgi_param       QUERY_STRING          $query_string;
    fastcgi_param       REQUEST_METHOD    $request_method;
    fastcgi_param       CONTENT_TYPE          $content_type;
    fastcgi_param       CONTENT_LENGTH    $content_length;
    fastcgi_param       SERVER_ADDR       $server_addr;
    fastcgi_param       SERVER_PORT       $server_port;
    fastcgi_param       SERVER_NAME       $server_name;
    fastcgi_param       REMOTE_ADDR       $remote_addr;
    fastcgi_param       HTTPS             on;
    fastcgi_param       HTTP_SCHEME       https;

    access_log  /var/log/nginx/seahub.access.log;
    error_log   /var/log/nginx/seahub.error.log;
    }

SSL 中的 URL 运行良好,这边一切正常,但在工作站客户端,存在同步问题,库卡在“连接到服务器”时。服务器版本为 4.0.2,客户端版本为 4.3.4。

seafile.log当我尝试使用证书验证同步库时,出现此问题:

[10/20/15 20:12:15] http-tx-mgr.c(653): libcurl failed to GET https://***.******.com:12443/seafhttp/protocol-version: Peer certificate cannot be authenticated with given CA certificates.
[10/20/15 20:12:15] clone-mgr.c(812): Transition clone state for 9156de90 from [connect] to [connect].
[10/20/15 20:12:18] clone-mgr.c(812): Transition clone state for 9156de90 from [connect] to [canceled].

当然,有一个临时解决方案,即在客户端高级选项中删除证书验证,但让它正常工作就更好了。

我是否遗漏了什么?任何帮助都将不胜感激,谢谢。

答案1

由于这个问题有点过时了,因此它是为了未来的访问者而回答的。

Seafile 客户端中“连接到服务器”状态未结束通常是由于客户端无法检查证书。当您使用自签名证书时会发生这种情况,但如果您的 Web 服务器或 Seafile 未配置正确的主机名,也可能会发生这种情况,在这种情况下检查也会失败。

您可以在高级设置对话框中将客户端配置为不验证证书。

相关内容