Apacheベーシック認証の設定手順とセキュリティ上の注意点について確認しました。
下記資料を参考にしました。
NSA(National Security Agency)の『Guide to the Secure Configuration of Red Hat Enterprise Linux 5』
セキュリティ上の注意点
・ベーシック認証は、ネットワーク越しに平文パスワードで処理されるので、ログイン時にパスワードスニッフィングされる危険性があります。
SSLなどのようなセキュアなチャネルを介した暗号化認証を使用する事が推奨されます。
ベーシック認証の設定手順
1)パスワードファイルをセットアップ
①既存のパスワードファイルがなく、新規に作成する場合
# htpasswd -cs パスワードファイル名 ユーザー名
-c:パスワードファイルを作成
-s:パスワードをSHA暗号を使用
既存のファイルがある場合は上書きしてしまうので注意
②既存のパスワードファイルが存在する場合
# htpasswd -s パスワードファイル名 ユーザー名
2)グループ認証を使用する場合はグループファイルを作成
グループファイル内は下記フォーマットでグループ名と所属するユーザー名を設定します。
group : user1 user2
group2 : user3
3)Apacheがグループファイルとパスワードファイルを読めるようにパーミッションを変更
# chgrp apache パスワードファイル名 グループファイル名
# chmod 640 パスワードファイル名 グループファイル名
4)Apache設定ファイルでベーシック認証の設定
①単一のユーザーを認証設定する場合の例
<Directory "directory "> # ... AuthName "Private Data" AuthType Basic AuthUserFile パスワードファイル名 require user ユーザー名 # ... </Directory>
②グループを使って複数のユーザーを認証する場合
<Directory "directory "> # ... AuthName "Private Data" AuthType Basic AuthUserFile パスワードファイル名 AuthGroupFile グループファイル名 require group グループ名 # ... </Directory>
③パスワードファイルにリストされている人であれば誰でも許可する場合
<Directory "directory "> # ... AuthName "Private Data" AuthType Basic AuthUserFile passwdfile require valid-user # ... </Directory>
※パスワードファイルとグループファイルは、リモートから不正にアクセスされるリスクを軽減するために、Webでアクセスできるドキュメントツリーの範囲外に置くようにします。
/etc/httpd/confディレクトリ内に置くことが推奨されます。
-
インストール、設定全般、運用
- Apacheのインストール
- Apache初期設定確認
- Apacheの静的、DSOモジュールの確認、インストール方法
- Apacheでconf.dディレクトリ内の設定ファイルのインクルードに注意
- Apacheのhttpdサービスの使用方法
- WordPressパーマリンク設定時のApache設定
- Apache mod_rewriteの仕組み、設定方法、動作確認
- Apacheで特定の拡張子を含むリクエストをログ対象から外す
- CentOS Stream9でApache、PHPを設定する際の注意点
- ApacheのTraceメソッドを無効にする
- ヘッダーにApacheバージョンが表示されないようにする
- PHPのバージョン情報とApacheの設定
- Apacheでディレクトリ内一覧表示を無効にする
- Apacheで不要なモジュールはロードしない
- Apacheで不要なモジュールはロードしない(1)ベーシック認証と認証プロバイダ
- Apacheで不要なモジュールはロードしない(2)ダイジェスト認証
- Apacheで不要なモジュールはロードしない(3)mod_rewrite、LDAP、WebDAV
- Apacheで不要なモジュールはロードしない(4)Server Side Includes
- Apacheで不要なモジュールはロードしない(5)mod_mime_magic
- Apacheで不要なモジュールはロードしない(6)mod_info、mod_status
- Apacheで不要なモジュールはロードしない(7)mod_speling、mod_userdir
- Apacheで不要なモジュールはロードしない(8)プロキシ関連のモジュール
- Apacheで不要なモジュールはロードしない(9)キャッシュ関連のモジュール
- Apacheで不要なモジュールはロードしない(10)CGI関連のモジュール
- Apacheで不要なモジュールはロードしない(11)フィルター、expires、圧縮のモジュール
- Apacheでディレクトリへのアクセスを制限する設定方法
- Apacheベーシック認証の設定手順とセキュリティ上の注意
- Apacheで使用できるHTTPメソッドを制限する
- FIPS140-2とApacheのmod_nss
- Apacheにおける自己証明書作成手順
- ApacheにおけるSSL証明書インストール手順
- DoS攻撃からWebサーバーを保護するApacheモジュール
- Apacheに関するLinux側のセキュリティ設定(パーミッション、iptables、chroot)
- Modsecurityの概要と特徴
- Modsecurityのインストール方法
- modsecurityの設定方法と設定例
- Apacheのパフォーマンスに影響を与えるOS、ハードウェアの要素、注意点
- ApacheのMPMの概要とチューニング
- ApacheのMaxClientsのチューニングとListenBacklog
- HostnameLookupsを有効にして名前解決を行う場合のApacheパフォーマンスに与える影響
- FollowSymLinks、SymLinksIfOwnerMatchの設定とApacheのパフォーマンス
- AllowOverrideの設定とApacheのパフォーマンス
- コンテントネゴシエーションの設定とApacheのパフォーマンス
- Apacheのプロセス生成とパフォーマンスに与える影響
セキュリティ
パフォーマンス