SELinux を利用する
Movable Type AMI版には、SELinux(Security-Enhanced Linux)環境で Movable Type を動作させるために必要な設定済みポリシーがインストールされています。
movabletype-selinux ポリシーパッケージによって、movabletype_ 接頭辞で始まるタイプを含むセキュリティコンテキストがシステムに導入され、Movable Type AMI版の動作に必要な各アプリケーションの権限が設定されます。
SELinux モードの設定について
Amazon Linux 2023 では、SELinux モードはデフォルトで Permissive に設定されています。モードを Permissive から Enforcing に変更することで、システム全体で SELinux ポリシーに基づくアクセス制御が実施されます。
SELinux モードの設定手順は、AWS ドキュメント「AL2023 の SELinux モードの設定」を参照してください。
ユーザーデータ領域のタイプとアクセス権限
ユーザーデータ領域(/data/file 配下)のリソースに適用されるタイプとアクセス権限の対応関係は、表の通りです。
| タイプ | アクセス権限(ディレクトリ) | アクセス権限(ファイル) |
|---|---|---|
| movabletype_content_t | 読み取り、検索 | 読み取り |
| movabletype_rw_content_t | 読み取り、書き込み、作成、削除 | 読み取り、書き込み、作成、削除 |
| movabletype_script_exec_t | 検索 | 読み取り、実行 |
| movabletype_lib_t | 読み取り、検索 | 読み取り、実行 |
各種コマンド
リソースのセキュリティコンテキストを確認する
ls コマンドを使用して、ファイルやディレクトリに適用されているセキュリティコンテキストを確認します。
$ ls -lZ /path/to/file
ファイルコンテキスト定義を確認する
semanage fcontext コマンドを使用して、SELinux ポリシーで定義されているファイルパスとセキュリティコンテキストのマッピング情報を確認します。
$ sudo semanage fcontext -l | grep movabletype
SELinux ポリシーの許可ルールを検索する
sesearch コマンドを使用して、特定のドメインからタイプに対して許可されている操作を検索します。
$ sudo sesearch -A -s <source_domain> -t <target_type> -c <object_class>
関連リソース
Movable Type の SELinux ポリシーの仕様およびインターフェースの定義は、システム内のリソースから確認できます。
- SELinux ポリシーの仕様(man ページ)
movabletype_selinux (8)
- インターフェース定義(マクロ)
/usr/share/selinux/devel/include/contrib/movabletype.if
注意事項
構成変更に伴うポリシーの調整や変更、お客様がインストールしたプラグインの動作などに関しては、テクニカルサポートの範囲外です。