OpenSuSE 13.1でApache2用のSSLを設定する方法

OpenSuSE 13.1でApache2用のSSLを設定する方法

複数の仮想Webサイトを実行している仮想ホスティングサーバーにOpenSuSEをインストールしました。通常のhttpでは、すべてがうまく動作します。 httpに加えて、httpsで仮想サイトの1つを実行したいと思います。だからSSL証明書を購入しました。証明書ファイルをサーバーにコピーしました。

SSLCertificateFile    /etc/apache2/crt/site.crt
SSLCertificateKeyFile /etc/apache2/key/my.key
SSLCACertificateFile  /etc/apache2/ca.txt

"/etc/sysconfig/apache2"ファイルのApacheモジュールでSSLを有効にしました。

APACHE_MODULES="rewrite actions alias auth_basic authn_file authz_host authz_groupfile  authz_user autoindex cgi dir env expires include log_config mime negotiation setenvif ssl userdir php5 reqtimeout authn_core authz_core alias_module headers"

/etc/apache2の私のlistening.confは次のようになります。

Listen 80
<IfDefine SSL>
    <IfDefine !NOSSL>
        <IfModule mod_ssl.c>
            Listen 443
        </IfModule>
    </IfDefine>
</IfDefine>

私のWebホスト設定ファイルは次のとおりです。

<IfDefine SSL>
<IfDefine !NOSSL>
<VirtualHost *:443>
        DocumentRoot "/srv/www/vhosts/dialogis-mediation.de/"
        ServerName dialogis.coach:443
        ServerAdmin [email protected]
        ErrorLog /var/log/apache2/error_log
        TransferLog /var/log/apache2/access_log
        SSLEngine on
        SSLProtocol all -SSLv2
        SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
SSLCertificateFile    /etc/apache2/crt/site.crt
SSLCertificateKeyFile /etc/apache2/key/my.key
SSLCACertificateFile  /etc/apache2/ca.txt
SSLCertificateChainFile /etc/apache2/ca.txt
        <FilesMatch "\.(cgi|shtml|phtml|php)$">
            SSLOptions +StdEnvVars
        </FilesMatch>
        <Directory "/srv/www/cgi-bin">
            SSLOptions +StdEnvVars
        </Directory>
        BrowserMatch "MSIE [2-5]" \
                 nokeepalive ssl-unclean-shutdown \
                 downgrade-1.0 force-response-1.0
        CustomLog /var/log/apache2/ssl_request_log   ssl_combined
</VirtualHost>
</IfDefine>
</IfDefine>

今質問は: Apacheではポート443も有効になっていません。

私がしたこと: 「listen.conf」の「Listen 80」の直後の行に「Listen 443」を追加します。この場合、サーバーはポート443でリッスンしますが、Chromeはエラー「ERR_SSL_PROTOCOL_ERROR」を表示します。

私が何を間違って設定したのかよくわかりません。

ベストアンサー1

また、/etc/sysconfig/apache2のAPACHE_SERVER_FLAGSにSSLフラグを追加する必要があります。

# Notably, to enable ssl support, 'SSL' needs to be added here.
# To enable the server-status, 'STATUS' needs to be added here.
#
# It does not matter if you write flag1, -D flag1 or -Dflag1.
# Multiple flags can be given as "-D flag1 -D flag2" or simply "flag1 flag2".
#
# Specifying such flags here is equivalent to giving them on the commandline.
# (e.g. via rcapache2 start -DReverseProxy)
#
# Example:
#      "SSL STATUS AWSTATS SVN_VIEWCVS no_subversion_today"
#
APACHE_SERVER_FLAGS="SSL"

おすすめ記事