参照先:
https://qiita.com/rryu/items/5e02ea60e36d7fd956b8
以下、httpd.confに追記する。
Apache HTTPサーバーが通常、rootユーザーで起動し、その後特権を降格してからリクエストを処理するメカニズムは、セキュリティと安全性を確保するための重要な設計です。これを理解するために、以下のポイントを詳しく解説します。
起動時の特権 Apache HTTPサーバーは通常、起動時にはrootユーザーとして実行されます。これにより、Apacheは必要なファイルやポートにアクセスするために必要な特権を持つことができます。
特権の降格(特権分離) Apacheが必要な初期設定やファイルへのアクセスを完了した後、特権を降格します。特権の降格はセキュリティ上の理由から行われます。root権限を持つプロセスは攻撃者によって悪用される可能性が高いため、リクエストを処理する段階では特権を持たない一般ユーザーとして動作することが推奨されます。
セキュリティ向上 特権の降格により、Apacheは攻撃者が攻撃に使用できる潜在的な脆弱性を利用されにくくなります。例えば、特権を持つプロセスがリクエストを処理する場合、攻撃者はそのプロセスを標的にしようとします。しかし、特権を持たない一般ユーザーとして動作するApacheは、攻撃者にとっては難しいターゲットとなります。
セキュリティ対策の重要性 特権の降格はセキュリティ対策の重要な要素の1つですが、それだけでなく他のセキュリティ対策も必要です。例えば、適切なファイルアクセス権限の設定、セキュリティパッチの適用、DoS攻撃への対策などがあります。
総じて、Apache HTTPサーバーがroot権限で起動してから特権を降格するメカニズムは、システム全体のセキュリティを向上させる重要な手段です。これにより、潜在的な攻撃からシステムを保護し、安全性を確保することが可能となります。
1)/etc/httpd/conf.d/mpm.confを作成する
2)00-mpm.confの編集を行う。
3)httpd.confに追記
4)apache のサービスを再起動
FPMのログを設定
dockerfileにapacheを入れているので、以下の記載により詳細なデバッグログが表示される
Dockerfileにefsのマウントパス宛に、ファイルコピーを行うと
ECSのサービス作成時に、コンテナのデプロイ失敗に(container run time error)になるので
別経由で、EFSにファイルをコピーした方が良い!!
<Dockerfile>
以下を追記
->logLevel は用途に応じて
httpd.conf
———
ErrorLog "logs/php/error.log"
LogLevel debug
————
php.ini
以下に編集する。
———————————
# エラーログを有効にする
log_errors = On
# エラー表示を有効にする(開発環境用)
display_errors = On
# エラーレポートのレベルを指定する(開発環境用)
error_reporting = E_ALL
# デバッグレベルのログを出力する
# 以下のように設定することで全てのログが出力される
log_errors_max_len = 0
————————————
apacheの再起動を行う
以下に出力される(ディレクトリの作成が必要)
mkdir -p /etc/httpd/logs/php/
環境:
AmazonLinux2
ユーティリティが必要なのでインストール;
yum install amazon-efs-utils
マウント用にディレクトリ作成:
mkdir -p /efs
マウント実施:
(注意:ルート配下にて実施すること!)
①ヘルパーのマウント
sudo mount -t efs -o tls fs-006d44246be2a962f:/ /efs
->実施、場所を間違えると、実行できないので、注意
②マウント
sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-xxxxxxxxxxxxxxx.efs.ap-northeast-1.amazonaws.com:/ efs
コードを1枚貼って、テストイベントを実行するだけで、 全台の確認結果が返ってくる手順です。 [ゴール] Nameタグが web-* / api-* / batch-* のEC2すべてに確認コマンドを流し、 NGの台だけ を結果に表示します。確認対象のuserdata(Ubu...