テクノロジーガイド

LighttpdでFedora 9にWebDAVを設定する方法

1 min read サーバー 更新されました 21 Oct 2025
LighttpdでFedora 9にWebDAVを設定する
LighttpdでFedora 9にWebDAVを設定する

概要

このガイドは、Fedora 9サーバー上でlighttpdにWebDAVを設定する手順を説明します。WebDAVは「Web-based Distributed Authoring and Versioning」の略で、HTTPの拡張によりユーザーがサーバー上のファイルを直接編集したり、アップロード/ダウンロードできるようにします。本手順は一般的な構成例であり、環境に合わせた調整が必要です。

重要: 本手順が全ての環境で動作することを保証しません。運用前にテスト環境で検証してください。

前提条件

  • この例ではサーバーのIPを192.168.0.100とします。環境に応じて変更してください。
  • root権限で作業します。
  • Fedora 9が稼働していること。

1 インストール

lighttpd(およびWebDAVモジュール)と、htpasswdコマンドを含むhttpd-toolsをインストールします:

yum install lighttpd httpd-tools

lighttpdを自動起動に登録して起動します:

chkconfig --levels 235 lighttpd on
/etc/init.d/lighttpd start

2 モジュールの有効化

/etc/lighttpd/lighttpd.confを編集し、server.modulesセクションにmod_alias、mod_webdav、mod_authを追加します。mod_webdavはmod_authの前に来るようにしてください。

vi /etc/lighttpd/lighttpd.conf

下記のようなserver.modulesスタンザをファイル内で探して編集します(抜粋):

[...]
server.modules              = (
#                               "mod_rewrite",
#                               "mod_redirect",
                                "mod_alias",
                                "mod_access",
#                               "mod_cml",
#                               "mod_trigger_b4_dl",
                                "mod_webdav",
                                "mod_auth",
#                               "mod_status",
#                               "mod_setenv",
#                               "mod_fastcgi",
#                               "mod_proxy",
#                               "mod_simple_vhost",
#                               "mod_evhost",
#                               "mod_userdir",
#                               "mod_cgi",
#                               "mod_compress",
#                               "mod_ssi",
#                               "mod_usertrack",
#                               "mod_expire",
#                               "mod_secdownload",
#                               "mod_rrdtool",
                                "mod_accesslog" )
[...]

編集後にlighttpdを再起動します:

/etc/init.d/lighttpd restart

3 仮想ホストの作成

ここでは例として www.example.com のvhostを /var/www/web1/web に作成します。既存のvhostを使う場合は適宜読み替えてください。

ディレクトリを作成し、lighttpdユーザーを所有者にします:

mkdir -p /var/www/web1/web
chown lighttpd:lighttpd /var/www/web1/web

lighttpdの設定にvhostを追加します:

vi /etc/lighttpd/lighttpd.conf

ファイル末尾に次を追加します:

[...]
$HTTP["host"] == "www.example.com" {
  server.document-root = "/var/www/web1/web"
}

追加後、lighttpdを再起動します:

/etc/init.d/lighttpd restart

4 基本認証とパスワードファイル(推奨)

WebDAVはファイル操作を許可するため、少なくとも基本認証で保護することを推奨します。htpasswdでユーザーを作成します:

htpasswd -c /etc/lighttpd/webdav.passwd user1

このファイルをlighttpdプロセスが読み取れるように適切にパーミッションを設定してください(例: root:root で600)。mod_authの設定方法はlighttpdのドキュメントを参照し、上で作成したパスワードファイルを使うように設定します。

重要: 認証設定は必須ではありませんが、未認証で書き込みが可能な公開WebDAVはセキュリティリスクが高いです。

5 セキュリティと実運用の注意点

  • HTTPSを必ず使用してください。認証情報は平文で送られるため、HTTPだと盗聴されます。
  • ファイアウォールでポート80/443を開放する際は最小限の許可にしてください。
  • SELinuxが有効な環境では、書き込みやアクセスがブロックされることがあります。/var/log/audit/audit.logを確認し、必要に応じてファイルコンテキストを調整するか、一時的にポリシーを確認してください。
  • 書き込み権限は最小限に。ドキュメントルート配下で書き込みを必要とするディレクトリのみ所有権やパーミッションを調整してください。

6 トラブルシューティングのヒント

  • サービスが起動しない: /var/log/lighttpd/error.log を確認。設定ミスや構文エラーが多いです。
  • WebDAVのPUT/DELETEが失敗する: パーミッション、所有者、SELinux、またはmod_webdavの有効化漏れを確認。
  • 認証が効かない: auth設定のスコープ(URLパスの指定)やパスワードファイルのパーミッションを確認。

7 ロール別チェックリスト

  • 管理者: lighttpdの起動設定、モジュール有効化、ログ監視を行う。
  • 開発者: WebDAVクライアントでアップロード・編集をテスト。
  • セキュリティ担当: HTTPS導入、認証方式、SELinuxポリシー、ファイアウォールルールを確認。

8 用語(1行定義)

  • WebDAV: HTTPの拡張で、リモートファイルの編集やバージョン管理を可能にする仕組み。
  • htpasswd: Apache互換のパスワードファイルを作るコマンドラインツール(httpd-toolsに含まれる)。

サンプル運用チェック(短いSOP)

  1. 設定変更後は設定合成チェック(config lint)ができるなら実行。
  2. lighttpdを再起動。
  3. クライアントでPUT/GET/DELETEを確認(HTTPSかつ認証ありで確認)。
  4. エラーログを確認し、必要なら権限・SELinuxを調整。

まとめ

このガイドでは、Fedora 9上でlighttpdにWebDAVを導入する基本的な手順を示しました。インストール、モジュール有効化、仮想ホスト作成、認証の準備、運用上の注意点とトラブルシュートのヒントを含みます。実運用ではHTTPSやアクセス制御、SELinuxとファイアウォールの確認を必ず行ってください。

重要: 本手順は環境により調整が必要です。まずはテスト環境で検証してください。

共有する: X/Twitter Facebook LinkedIn Telegram
著者
編集

類似の素材

Debian 11 に Podman をインストールして使う
コンテナ

Debian 11 に Podman をインストールして使う

Apt-pinning入門:Debianで複数リポジトリを管理
Linux

Apt-pinning入門:Debianで複数リポジトリを管理

OptiScalerでFSR 4を全対応ゲームに導入する方法
ゲーム

OptiScalerでFSR 4を全対応ゲームに導入する方法

Dansguardian と Squid(NTLM)を Debian Etch に導入する方法
ネットワーク

Dansguardian と Squid(NTLM)を Debian Etch に導入する方法

AndroidでSDカードのインストールエラーを修正する方法
トラブルシューティング

AndroidでSDカードのインストールエラーを修正する方法

KNetAttach と KDE の remote:/ でネットワークフォルダーを設定
Linux ネットワーク

KNetAttach と KDE の remote:/ でネットワークフォルダーを設定