【DokuWiki】ApacheのBASIC認証を使いローカルネットワークからは認証なしとする

スポンサーリンク

以前記事で、Ubuntu ServerにDokuWikiをインストールした。

【Ubuntu 20.04/18.04 LTS Server】DokuWikiをインストールし、Markdown記法が使えるようにする
Markdownで書けるWikiを探していた。DokuWikiはプラグインで対応出来るとの事で、使えるようにしたので備忘録を残す。 追記(2018/6/2) Ubuntu 18.04 LTS Serverでも動作する事を確認した。 追記(2...

そこで、外部からのアクセスはパスワード認証し、ローカルネットワークからは認証なしでアクセス出来るようにしたので備忘録を残す。

パスワードファイルの作成

まずは、認証に使うユーザ名とパスワードのファイルを作成する。

$ sudo htpasswd -c /etc/apache2/.htpasswd user1
New password:
Re-type new password:
Adding password for user user1
  • 初回パスワードファイルを作成する時には -c を付ける。(2回目以降のユーザ追加では付けない)

パスワードの変更

パスワードを変更したい場合も、同様のコマンドで更新する。

$ sudo htpasswd /etc/apache2/.htpasswd user1
New password:
Re-type new password:
Updating password for user user1

ユーザーの削除

オプション -D を付ける。

$ sudo htpasswd -D /etc/apache2/.htpasswd user1
Deleting password for user user1

Apacheの設定

以前の記事で作成した、 /etc/apache2/sites-available/003-dokuwiki.conf ファイルを変更。

Alias /dokuwiki /var/www/dokuwiki
<Directory /var/www/dokuwiki>
    Options FollowSymLinks
    AllowOverride All

    AuthType Basic
    AuthName "Please Enter Your ID and pass"
    AuthUserFile /etc/apache2/.htpasswd
    require valid-user

    Satisfy Any
    Order Allow,Deny
    Allow from 192.168.1.0/24
</Directory>

下記コマンドで、Apacheの再起動。

$ sudo service apache2 restart

これで、外部からのアクセス時のみBASIC認証が働く。
尚、パスワード入力が盗聴されないよう、SSL通信(https://)にしておいた方が安心。

【Ubuntu 18.04/16.04 LTS Server】DokuWikiをSSL通信化(https)する
DokuWikiのサイトをSSL通信化(https)したので備忘録を残す。 基本的にはベースのWebサーバ(Apache)をSSL化(https)するだけでOK。 まずは、下記記事を参考にApacheをSSL対応しておく。 続いて、Doku...

補足

  • Satisfy Any」ならば、IP認証、Basic認証どちらかが通過すればよく、「Satisfy All」はIP認証、Basic認証どちらも通過しなければ閲覧出来ない。

関連記事

【Ubuntu 18.04 LTS Server】Apache2とPHP7.2を動かす
以前の記事で「Ubuntu 18.04 LTS Server」をインストールした。 続いて、WordPressやDokuWikiを動かす準備として、Apache2とPHP7.2を動かすようにしたので備忘録を残す。 Apache2のインストー...
【Ubuntu 18.04 LTS Server】ApacheのSSL通信(https)を使う
以前の記事で、「Ubuntu 18.04 LTS Server」のApacheでWebサーバを構築したが、SSL通信(https)を動かしたので備忘録を残す。 Apacheの設定 まずは、Apacheのインストール時にサンプルのSSL証明書...

参考

  1. Apache2 で Basic認証 を設定
  2. Basic認証を利用する
  3. IP認証によるアクセス制限のテクニック (2/2)
  4. Apacheで特定のIPの場合、BASIC認証を回避する
  5. Basic認証された、またはローカルからのアクセスを許可する
  6. 実践! 初めてのIPv6 ~サーバ編~

コメント

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