Carpe Diem

備忘録。https://github.com/jun06t

【旧式】WebDAVの設定(サーバ側)

WebDAVを使うための設定です。SSLを組み込むのでやや手間かも。 というか僕自身あんまり理解できてません。ほぼコピペ。 まずはApacheSSLを有効にする方法について。 ApacheはデフォルトではSSLを使えるようにはなっていません。 通常であれば、SSLの設定のために、httpd.confssl.confに記述が有るのですが、Ubuntuではこれらが無いのでまずは持ってくるところから。httpd-ssl.conf.gzにあるので、下のコマンドにないときはlocateで探してください。 SSL設定ファイルのコピー $ sudo cp /usr/share/doc/apache2.2-common/examples/apache2/extra/httpd-ssl.conf.gz /etc/apache2/sites-available/ $ cd /etc/apache2/sites-available/ $ sudo gunzip httpd-ssl.conf.gz SSL設定ファイルの修正 デフォルトでバーチャルホストの設定になっているので、そのまま使う $ cd /etc/apache2/sites-available/ $ sudo vim httpd-ssl.conf #Listen 443  ←コメントする(別の設定ファイルに既に記入済みのため) <VirtualHost _default_:443> ↓ NameVirtualHost *:443 <VirtualHost *:443> に修正 SSLCertificateFile "/etc/ssl/CA/server.crt"     ← サーバ証明書の位置に変更 SSLCertificateKeyFile "/etc/ssl/CA/server.key"   ← サーバ秘密鍵の位置に変更 保存して、ssl用のモジュールを有効にする。 $ sudo a2enmod ssl Enabling module ssl. See /usr/share/doc/apache2.2-common/README.Debian.gz on how to configure SSL and create self-signed certificates. Run '/etc/init.d/apache2 restart' to activate new configuration! $ sudo /etc/init.d/apache2 restart サイト設定を有効にする $ sudo a2ensite httpd-ssl.conf Enabling site httpd-ssl.conf. Run '/etc/init.d/apache2 reload' to activate new configuration! $ sudo /etc/init.d/apache2 reload で完了。 ちなみにサイト設定を無効にする場合は $ sudo a2dissite httpd-ssl.conf 2バイト文字対応のため、mod-encoding をインストール $ sudo apt-get install libapache2-mod-encoding mod-encoding の設定 $ cd /etc/apache2/mods-available/ $ sudo emacs -nw encoding.conf ←新規ファイルを作成する 以下を記述 <IfModule mod_encoding.c> EncodingEngine on NormalizeUsername on SetServerEncoding UTF-8 DefaultClientEncoding JA-AUTO-SJIS-MS SJIS AddClientEncoding "cadaver/" EUC-JP </IfModule> モジュールの有効化 $ sudo a2enmod dav $ sudo a2enmod dav_fs ←既に有効っぽい $ sudo a2enmod encoding WebDAV用ディレクトリの作成 $ sudo mkdir /var/www-ssl $ sudo mkdir /var/www-ssl/dav WebDAV用ディレクトリに書き込めるようにapacheユーザー権限に変更する。 ちなみにユーザー名は /etc/apache2/envvars に書かれている $ sudo chown -R www-data:www-data /var/www-ssl/dav $ sudo chmod 755 /var/www-ssl/dav SSL設定ファイルをWebDAV用に修正する $ cd /etc/apache2/sites-available/ $ sudo emacs -nw httpd-ssl.conf #DocumentRoot "/usr/share/apache2/default-site/htdocs" DocumentRoot "/var/www-ssl" ←修正 </VirtualHost>の前ぐらいに以下を追加 クライアント認証設定です。 <Location /dav>     Dav on     SSLVerifyClient require     SSLVerifyDepth 1 </Location> 再起動 $ sudo /etc/init.d/apache2 restart 以上で、WebDAV(クライアント認証版)の構築が終わりました。 クライアント側には、クライアント証明書を組み込む必要があります。 クライアント側の設定はまた次回。 ソース: Ubuntuサーバー版でWebDAV環境を構築する Apache2 でWebサーバ