

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# `enforcing` モードへの変更
<a name="enforcing-mode"></a>

SELinux を `enforcing` モードで実行すると、SELinux ユーティリティによって設定済みのポリシーが`enforcing`されます。SELinux は、ポリシーのルールに基づいてアクセスを許可または拒否することで、特定のアプリケーションの機能を管理します。

SELinux の現在のモードを調べるには、`getenforce` コマンドを実行します。

```
getenforce
Permissive
```

## 設定ファイルを編集して `enforcing` モードを有効にする
<a name="config-file-enforcing"></a>

モードを `enforcing` に変更するには、次の手順を使用します。

1. `/etc/selinux/config` ファイルを編集して `enforcing` モードに変更します。`SELINUX` 設定は次の例のようになります。

   ```
   SELINUX=enforcing
   ```

1. システムを再起動して `enforcing` モードへの変更を完了します。

   ```
   $ sudo reboot
   ```

次回の起動時に、SELinux はシステム内のすべてのファイルとディレクトリにラベルを付け直します。SELinux は、SELinux が `disabled` であったときに作成されたファイルとディレクトリの SELinux コンテキストも追加します。

`enforcing` モードに変更すると、SELinux ポリシールールが不正確または欠落しているという理由で SELinux が一部のアクションを拒否することがあります。以下のコマンドを使用して SELinux が拒否するアクションを表示できます。

```
$ sudo ausearch -m AVC,USER_AVC,SELINUX_ERR,USER_SELINUX_ERR -ts recent
```

## cloud-init を使用して `enforcing` モードを有効にする
<a name="cloud-init-enforcing"></a>

別の方法として、インスタンスを起動するときに、以下の `cloud-config` をユーザーデータとして渡して、`enforcing` モードを有効にします。

```
#cloud-config
selinux: 
  mode: enforcing
```

デフォルトでは、この設定によりインスタンスが再起動されます。安定性を高めるため、インスタンスを再起動することをお勧めします。ただし、必要に応じて、いかの `cloud-config` を指定して再起動をスキップすることができます。

```
#cloud-config
selinux:
  mode: enforcing
  selinux_no_reboot: 1
```