Apache2にSSLを設定して,WebDAVサーバを動かす

HTTPS(SSL)上でWebDAVを動かす

 特にハマりそうなところはなかった.

どちらかというと,SSL, HTTPS自体のセットアップに手間がかかったので, それを詳しくメモった方が良さそうではありますが.書くのも面倒なので...そのうち

httpd.confより抜粋

# https 用 virtualHost記述
<VirtualHost _default_:443>
  ServerName kamoland.com:443
  DocumentRoot /var/www/ssl/
  Alias /davssl /var/www/davssl
  SSLEngine on
  SSLCertificateFile /usr/local/apache2/ssl/kamoland_ca.crt
  SSLCertificateKeyFile /usr/local/apache2/ssl/kamoland.com_run.pem
  CustomLog logs/ssl_log combined
</VirtualHost>

# Webdav on ssl 用
<Directory /var/www/davssl>
     DAV On
     AllowOverride None
     Options None
     AuthName "WebDAV Folder"
     AuthType Basic
     AuthUserFile /usr/local/apache/conf/.dav
     <LimitExcept HEAD OPTIONS>
          Require user davuser
     </LimitExcept>
</Directory>

 この設定の意図するところは,

  • https://kamoland.com/davssl

配下でWebDAV共有しているフォルダを,

  • Basic認証で隠しておきたい.
  • さらに,Basic認証のパスワードや通信内容をSSLで暗号化することで,盗聴を防ぎたい

ということなので,もし間違えて

  • http://kamoland.com/davssl

で参照しようとしたときは,却下されるのが望ましい動きです. しかしそれが実現されているかどうかが,いまいち怪しい.

結果的にはアクセス却下されているようなんですが,エラーの出方が腑に落ちない.

WebDAV共有フォルダに対してAliasを切るんじゃなくて, https用DocumentRootの配下に共有フォルダを作ってしまう方が,単純でいいのかも.
(でもかなり気持ち悪い.覗かれないかどうかの秘匿性の検証を十分にやっておきたい)

ssl.conf - 全て

Listen 443
AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl    .crl
SSLPassPhraseDialog  builtin
SSLSessionCache         dbm:logs/ssl_scache
SSLSessionCacheTimeout  300
SSLMutex  file:logs/ssl_mutex
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
<Files ~ "\.(cgi|shtml|phtml|php3?)$">
     SSLOptions +StdEnvVars
</Files>

SetEnvIf User-Agent ".*MSIE.*" \
          nokeepalive ssl-unclean-shutdown \
           downgrade-1.0 force-response-1.0
CustomLog logs/ssl_request_log \
          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
※ 注:これらの設定は,フィクションです. (動作は確認済みですが,実際に運用しているわけではありません.侵入されたら困るので)
kamolandをフォローしましょう


© 2017 KMIソフトウェア