DokuWikiのセキュリティ対策 公開ディレクトリ外への移動

DokuWikiDokuWiki
この記事は約3分で読めます。

PHPベースのオープンソースのウィキソフトウェア DokuWikiのセキュリティ対策について解説します。

ルートディレクトリ直下のdata・conf・binディレクトリには、データファイルや設定ファイルなどが含まれます。

インターネット上に公開する場合は、これらのディレクトリを公開ディレクトリ外へ移動して安全性を高めましょう。

なお、今回のバージョンは以下の通りです。

  • DokuWiki 2018-04-22a “Greebo”

data・conf・binディレクトリの概要

DokuWikiのルートディレクトリ直下にあるdata・conf・binの各ディレクトリに含まれるファイルは、以下の通りです。

ディレクトリ概要
dataページデータや画像ファイルなど
conf設定ファイル
binコマンドラインツール

そして、data・conf・binの各ディレクトリ内には.htaccessファイルがあり、Webからのアクセスが制限されています。

内容は以下のようになっています。

<IfModule mod_authz_host>
    Require all denied
</IfModule>
<IfModule !mod_authz_host>
    Order allow,deny
    Deny from all
</IfModule>

しかし、サーバーの設定によっては、.htaccessファイルが有効でない場合があります。

また、より安全性を高めるためにも、これらのディレクトリは公開ディレクトリ(ドキュメントルート)外へ移動させる方が望ましいです。

公開ディレクトリ外への移動

各ディレクトリの移動と設定手順について、解説します。

dataディレクトリ

dataディレクトリの配置パスは、設定項目のsavedirで指定します。

この値を

/home/yourname/data/

のように移動先のパスに変更してから、ディレクトリを移動します。

なお、管理画面で設定変更する前にディレクトリを移動した場合は、管理画面が開けなくなるので、

conf/local.php

ファイルに以下を追加して変更します。

$conf['savedir'] = '/home/yourname/data/';

confディレクトリ

confディレクトリは、デフォルトの場所から変更する場合は、

inc/preload.php

ファイルを作成します。
inc/preload.php.distファイルをコピーして利用すればOKです。

以下のように配置パスを設定してから、ディレクトリを移動します。

<?php
 
define('DOKU_CONF','/home/yourname/conf/');

binディレクトリ

binディレクトリは、ディレクトリを移動するだけです。

ただし、ディレクトリ内のコマンドラインツールを実行する際は、デフォルトの場所に再度設置してから実行しないとパスが見つからずにエラーとなりますので注意です。

最後に

今回は、DokuWikiのセキュリティ対策について解説しました。

インターネット上に公開する場合は、data・conf・binディレクトリを公開ディレクトリ外へ移動して、安全性を高めましょう。

DokuWikiの使い方については、こちらの記事にまとめています。

DokuWiki
\よかったらシェアしてね/
えふめん

大阪在住、30代。
業務系SE・社内SEの仕事を通じて学んだこと、PCトラブルで困って調べたこと、手作業を効率化して改善したこと、WordPressのブログ運営などの記事を書いています。

えふめんをフォローする
この記事が気に入ったら
いいね!しよう
最新情報をお届けします。
俺の開発研究所

コメント

タイトルとURLをコピーしました