Edited at

【連載01】205.SELinuxを無効化する【Ansible SELinuxモジュール】

More than 3 years have passed since last update.

当記事はケーススタディの連載となっています。目次は【こちら】です。

最新のソースコードは【GitHub】で公開中です。

サーバの責務はこちらで確認ください。


1.SELinux無効化概要

SELinuxを無効化する。

image


2.playbookファイルの相関

image


3.playbook(site.yml)

${ANSIBLE_HOME}/site.yml

メインとなるplaybook(site.yml)参照


4.SELinux無効化用のplaybook(/operations/0021_selinux.yml)

${ANSIBLE_HOME}/operations/0021_selinux.yml

# ===================

# SELinuxを無効化する(selinux.yml)
# ===================
# ===================
# すべてのサーバのSELinuxを無効化する
# ===================
- hosts: all
sudo: no
remote_user: root
tasks:

- name: SELinuxのDisable設定
selinux: state=disabled


【SELinuxモジュール】SELinuxの無効化設定



selinuxモジュールを使用する。

書式:


selinux: state=${enforcing または permissive またはdisabled}


state
状態

enforcing
アクセス制限有効

permissive
警告はするがアクセス制限はしない

disabled
無効化する

例:

SELinuxを無効化する。

selinux: state=disabled

disable設定はLinux上でsetenforceコマンドでラベル付けはできない。

Ansibleも同様に起動時に無効化設定されるため、次の章ではAnsibleにて再起動する。

※Ansible(Python)でSELinuxの操作をするにはlibselinux-pythonパッケージが必要。

今回は「yumにて必要なライブラリ/ミドル/ソフトウェアをインストールする」にて先にインストールしているが、本来であればincludeしたファイル単位で冪等性を維持しつつ、凝縮度の高いplaybookを作った方が独立性が高くなる。

その場合先にyumモジュールを使用してlibselinux-pythonをインストールしておくとよい。

  tasks:

#▼ここに追加
- name: Install libselinux-python
yum: name=libselinux-python state=present
#▲

- name: SELinuxのDisable設定
selinux: state=disabled

次回は「SELinux設定Diabledを適用する為サーバを再起動する【Ansible 非同期処理】」について。

連載の目次は【こちら】です。