
によるとSELinux の紹介、セクション14.4.2、
SELinux サポートは、Debian が提供する標準カーネルに組み込まれています。コア Unix ツールは、変更なしで SELinux をサポートします。
selinux-basics
私は、およびselinux-policy-default
パッケージをインストールしましたデビアン・ウィージー(安定した) システムをインストールし、インストール中にいくつかのポリシーがロードされていることを確認したので、インストール自体は正常に行われたと確信しています。
/etc/default/grub を次のように編集しました:
GRUB_CMDLINE_LINUX="selinux=1 audit=1 enforcing=0"
(その変数は以前は空でした)、update-grub を実行しました。/boot/grub/grub.cfg には SELinux 関連のカーネル パラメータが含まれています。
/.autorelabel
/usr/sbin/selinux-activate スクリプトの「enable」ブランチに基づいてファイルを作成しました。
上記の変更を行った後、システムを再起動しました。再起動中に異常なことは何も起こりませんでした。
dmesg | head
出力:
Command line: BOOT_IMAGE=/boot/vmlinuz-3.2.0-4-amd64 root=UUID=c050d662-f94a-447a-9342-0fc69f65a513 ro selinux=1 audit=1 enforcing=0 quiet pci=nomsi
私の知る限り、すべては整っています。しかし、動作していないようです。 id -Z
戻り値:
$ id -Z
id: --context (-Z) works only on an SELinux-enabled kernel
$
状態与える:
# sestatus
SELinux status: disabled
#
# check-selinux-installation
getfilecon: getfilecon(/proc/1) failed
SELinux is not enabled.
Could not read the domain of PID 1.
/etc/pam.d/login is not SELinux enabled
Postfix init script is syncing the chroots.
Postfix has chrooted service in master.cf
FSCKFIX is not enabled - not serious, but could prevent system from booting...
#
システムで SELinux を有効にするには何が欠けているのでしょうか?
答え1
security=selinux
コメントで指摘されているように、カーネルにもパラメータを渡す必要があります。Debian システムでは、これは によって GRUB 構成に自動的に追加されるはずですselinux-activate
。
カーネルドキュメンテーションパラメータを説明しますsecurity
:
[SECURITY] 起動時に有効にするセキュリティ モジュールを選択します。この起動パラメータが指定されていない場合は、セキュリティ登録を要求する最初のセキュリティ モジュールのみがロードされます。無効なセキュリティ モジュール名は、モジュールが選択されていないものとして扱われます。
Debian では、AppArmor セキュリティ モジュールもサポートされているため、これが関連します。