Webmail“无法与服务器建立安全连接”

Webmail“无法与服务器建立安全连接”

我正在配置 Ubuntu14/NGinX 服务器,几乎所有东西都已启动并运行(phpmyadmin、ispconfig 等)。

我安装了 Dovecot/Postfix/Squirelmail 来建立邮件服务器。我遵循 HowToForge 的“the-perfect-server-ubuntu-14.04-nginx-bind-mysql-php-postfix-dovecot-and-ispconfig3”手册

我可以通过 https 连接到 ISPConfig(端口 8080),但是 webmail(端口 8081)给出 SSL 连接错误;

Unable to make a secure connection to the server. 
This may be a problem with the server, 
or it may be requiring a client authentication 
certificate that you don't have.


Error code: ERR_SSL_PROTOCOL_ERROR

这是我第一次(尝试)在 Ubuntu/NGinx 上配置邮件服务器,我认为它几乎可以工作,但无法修复最后的步骤..


更新:

以下是来自 sites-enabled 的 apps.vhost

server {
    listen 8081;

    server_name _;

    root   /var/www/apps;

    client_max_body_size 20M;

    location / {
           index index.php index.html;
    }

    # serve static files directly
    location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt)$ {
           access_log        off;
    }

    location ~ \.php$ {
           try_files $uri =404;
           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   SCRIPT_FILENAME         $request_filename;
           fastcgi_param   SCRIPT_NAME             $fastcgi_script_name;
           fastcgi_param   REQUEST_URI             $request_uri;
           fastcgi_param   DOCUMENT_URI            $document_uri;
           fastcgi_param   DOCUMENT_ROOT           $document_root;
           fastcgi_param   SERVER_PROTOCOL         $server_protocol;

           fastcgi_param   GATEWAY_INTERFACE       CGI/1.1;
           fastcgi_param   SERVER_SOFTWARE         nginx/$nginx_version;

           fastcgi_param   REMOTE_ADDR             $remote_addr;
           fastcgi_param   REMOTE_PORT             $remote_port;
           fastcgi_param   SERVER_ADDR             $server_addr;
           fastcgi_param   SERVER_PORT             $server_port;
           fastcgi_param   SERVER_NAME             $server_name;

           fastcgi_param   HTTPS                   $https;

           # PHP only, required if PHP was built with --enable-force-cgi-redirect
           fastcgi_param   REDIRECT_STATUS         200;
           fastcgi_pass unix:/var/lib/php5-fpm/apps.sock;
           fastcgi_index index.php;
           fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
           #fastcgi_param PATH_INFO $fastcgi_script_name;
           fastcgi_buffer_size 128k;
           fastcgi_buffers 256 4k;
           fastcgi_busy_buffers_size 256k;
           fastcgi_temp_file_write_size 256k;
    }

    location ~ /\. {
           deny  all;
    }

    location /phpmyadmin {
           root /usr/share/;
           index index.php index.html index.htm;
           location ~ ^/phpmyadmin/(.+\.php)$ {
                   try_files $uri =404;
                   root /usr/share/;
                   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   SCRIPT_FILENAME         $request_filename;
                   fastcgi_param   SCRIPT_NAME             $fastcgi_script_name;
                   fastcgi_param   REQUEST_URI             $request_uri;
                   fastcgi_param   DOCUMENT_URI            $document_uri;
                   fastcgi_param   DOCUMENT_ROOT           $document_root;
                   fastcgi_param   SERVER_PROTOCOL         $server_protocol;

                   fastcgi_param   GATEWAY_INTERFACE       CGI/1.1;
                   fastcgi_param   SERVER_SOFTWARE         nginx/$nginx_version;

                   fastcgi_param   REMOTE_ADDR             $remote_addr;
                   fastcgi_param   REMOTE_PORT             $remote_port;
                   fastcgi_param   SERVER_ADDR             $server_addr;
                   fastcgi_param   SERVER_PORT             $server_port;
                   fastcgi_param   SERVER_NAME             $server_name;

                   fastcgi_param   HTTPS                   $https;

                   # PHP only, required if PHP was built with --enable-force-cgi-redirect
                   fastcgi_param   REDIRECT_STATUS         200;
                   # To access phpMyAdmin, the default user (like www-data on Debian/Ubuntu) must be used
                   #fastcgi_pass 127.0.0.1:9000;
                   fastcgi_pass unix:/var/run/php5-fpm.sock;
                   fastcgi_index index.php;
                   fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                   fastcgi_buffer_size 128k;
                   fastcgi_buffers 256 4k;
                   fastcgi_busy_buffers_size 256k;
                   fastcgi_temp_file_write_size 256k;
                   fastcgi_read_timeout 1200;
           }
           location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
                   root /usr/share/;
           }
    }
    location /phpMyAdmin {
           rewrite ^/* /phpmyadmin last;
    }

    location /squirrelmail {
           root /usr/share/;
           index index.php index.html index.htm;
           location ~ ^/squirrelmail/(.+\.php)$ {
                   try_files $uri =404;
                   root /usr/share/;
                   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   SCRIPT_FILENAME         $request_filename;
                   fastcgi_param   SCRIPT_NAME             $fastcgi_script_name;
                   fastcgi_param   REQUEST_URI             $request_uri;
                   fastcgi_param   DOCUMENT_URI            $document_uri;
                   fastcgi_param   DOCUMENT_ROOT           $document_root;
                   fastcgi_param   SERVER_PROTOCOL         $server_protocol;

                   fastcgi_param   GATEWAY_INTERFACE       CGI/1.1;
                   fastcgi_param   SERVER_SOFTWARE         nginx/$nginx_version;

                   fastcgi_param   REMOTE_ADDR             $remote_addr;
                   fastcgi_param   REMOTE_PORT             $remote_port;
                   fastcgi_param   SERVER_ADDR             $server_addr;
                   fastcgi_param   SERVER_PORT             $server_port;
                   fastcgi_param   SERVER_NAME             $server_name;

                   fastcgi_param   HTTPS                   $https;

                   # PHP only, required if PHP was built with --enable-force-cgi-redirect
                   fastcgi_param   REDIRECT_STATUS         200;
                   # To access SquirrelMail, the default user (like www-data on Debian/Ubuntu) must be used
                   #fastcgi_pass 127.0.0.1:9000;
                   fastcgi_pass unix:/var/run/php5-fpm.sock;
                   fastcgi_index index.php;
                   fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                   fastcgi_buffer_size 128k;
                   fastcgi_buffers 256 4k;
                   fastcgi_busy_buffers_size 256k;
                   fastcgi_temp_file_write_size 256k;
           }
           location ~* ^/squirrelmail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
                   root /usr/share/;
           }
    }
    location /webmail {
           rewrite ^/* /squirrelmail last;
    }

    location /cgi-bin/mailman {
           root /usr/lib/;
           fastcgi_split_path_info (^/cgi-bin/mailman/[^/]*)(.*)$;
           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   SCRIPT_FILENAME         $request_filename;
           fastcgi_param   SCRIPT_NAME             $fastcgi_script_name;
           fastcgi_param   REQUEST_URI             $request_uri;
           fastcgi_param   DOCUMENT_URI            $document_uri;
           fastcgi_param   DOCUMENT_ROOT           $document_root;
           fastcgi_param   SERVER_PROTOCOL         $server_protocol;

           fastcgi_param   GATEWAY_INTERFACE       CGI/1.1;
           fastcgi_param   SERVER_SOFTWARE         nginx/$nginx_version;

           fastcgi_param   REMOTE_ADDR             $remote_addr;
           fastcgi_param   REMOTE_PORT             $remote_port;
           fastcgi_param   SERVER_ADDR             $server_addr;
           fastcgi_param   SERVER_PORT             $server_port;
           fastcgi_param   SERVER_NAME             $server_name;

           fastcgi_param   HTTPS                   $https;

           # PHP only, required if PHP was built with --enable-force-cgi-redirect
           fastcgi_param   REDIRECT_STATUS         200;
           fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
           fastcgi_param PATH_INFO $fastcgi_path_info;
           fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
           fastcgi_intercept_errors on;
           fastcgi_pass unix:/var/run/fcgiwrap.socket;
    }

    location /images/mailman {
           alias /usr/share/images/mailman;
    }

    location /pipermail {
           alias /var/lib/mailman/archives/public;
           autoindex on;
    }
}

更新2

我无法发表评论,因为我的声誉还不到 50 点,而且我无法回答我自己的问题,所以现在我不知道如何处理评论和回复。

答案1

您尚未将该端口配置为 ssl,因此您的浏览器返回错误。

ssl在 Nginx 上,您可以通过添加监听行来在端口上启用 ssl 协议。

server {
        listen 8081 ssl;
...
       }

您也可以在您的配置中使用ssl on,但最好使用上述方法。

您还需要完整指定您的 SSL 密钥和证书信息。

server {
    listen              443 ssl;
    server_name         www.example.com;
    ssl_certificate     www.example.com.crt;
    ssl_certificate_key www.example.com.key;
    ssl_protocols       SSLv3 TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers         HIGH:!aNULL:!MD5;
    ...
}

有关详细信息,请参阅配置 HTTPS 服务器在 Nginx。

相关内容