Basic認証とは(Wikipediaより)
Basic認証(ベーシックにんしょう、Basic Authentication)とは、HTTPで定義される認証方式の一つ。基本認証と呼ばれることも。 Basic認証では、ユーザ名とパスワードの組みをコロン “:” でつなぎ、Base64でエンコードして送信する。このため、盗聴や改竄が簡単であるという欠点を持つが、ほぼ全てのWebサーバおよびブラウザで対応しているため、広く使われている。
公開前などのサイトへの不特定多数のアクセスを避けたい。そんなときによく使われているのがBasic認証です。
前提条件
今回はWordpressのサイトにBasic認証を設定することにします。
Apache、Wordpressはインストールされているものとします。
WordPressは”/var/www/html/”以下にインストールされていることにします。
設定方法
1.Basic認証用のユーザーを作成します。例えば、ユーザー名「myuser」、パスワード「mypassword」の場合は以下のようにします。
sudo htpasswd -c /etc/httpd/.htpasswd myuser
このコマンドを実行すると、ユーザー名とパスワードが、/etc/httpd/.htpasswdに保存されます。
2.Apacheの設定ファイルを変更します。
WordPressをインストールしているディレクトリへBasic認証の記述をします。
今回は”httpd.conf”の中に設定します。
sudo vim /etc/httpd/conf/httpd.conf
上記のコマンドでファイルを開きファイル内で、以下のように変更します。
<Directory /var/www/html/wordpress> AuthType Basic AuthName "Restricted Content" AuthUserFile /etc/httpd/.htpasswd Require myuser </Directory>
これで、Basic認証が設定されました。/var/www/html/wordpressディレクトリ内のファイルにアクセスすると、ユーザー名とパスワードが求められるようになります。
3.Apacheを再起動します。
sudo systemctl restart httpd
これで、Basic認証が有効になります。