DebianでのSSL

コモド関係をベースに書いてみる。Apache2.0.*。

設定

Listen 443
SSLPassPhraseDialog  exec:/etc/apache2/ps.sh

  <VirtualHost コモンネーム:443>
    DocumentRoot "/home/staff/htdocs"
    ServerName コモンネーム:443
    ServerAdmin 連絡先メールアドレス
    TransferLog /var/log/apache2/access_log

    SSLEngine on
    #SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
    #SSLCertificateFile /etc/apache2/SSL2006/server.crt
    SSLCertificateFile /etc/apache2/SSL2006/コモンネーム.crt

    SSLCertificateKeyFile /etc/apache2/SSL2006/server.key

    SSLCACertificatePath /etc/apache2/SSL2006
    #SSLCACertificateFile /etc/apache2/SSL2006/server.crt
    SSLCACertificateFile /etc/apache2/SSL2006/Comodo*************CA.crt

    CustomLog /var/log/apache2/ssl_request_log \
          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
  </VirtualHost>

いちどでもコモドを使ったひとならこれでわかると思う。

証明書作成に用いた<a href="Makefile.txt">Makefileはここにある</a>。

最低限の解説

SSLPassPhraseDialog exec:/etc/apache2/ps.sh

デフォルトはbuiltinになっているが、起動のたびにパスフレーズを聞かれてしまう。よって、こんなシェルを用意してchmod 001 ps.shしておくわけだ。

#!/bin/sh
echo "パスフレーズ"