web-dev-qa-db-ja.com

ファイルシステムモジュールを強化するために、RHEL 7サーバーでファイルシステムモジュールをアンロードするにはどうすればよいですか?

CISガイドラインに従ってRHELLinuxサーバー7を強化しようとしているので、cramfsをアンロードしたいと思います。

次のコマンドを入力しました:modprobe -n -v cramfs

そして私は次の答えを得ました:

insmod /lib/modules/3.10.0-693.el7.x86_64/kernel/fs/cramfs/cramfs.ko.xz

cISで言及されているものの代わりに:install/bin/true。私のシステムにはそのようなファイルがないことに注意してください。

質問:出力はどういう意味ですか?このコンテキストでは、どうすればcramfsをアンマウントできますか?

1
Housna

実行しているコマンドmodprobe -n -v cramfsは、-nの短いオプションである--dry-runを渡したときの出力以外は何もしません。出力insmod /lib/modules/3.10.0-693.el7.x86_64/kernel/fs/cramfs/cramfs.ko.xzは、その場所にcramfsモジュールをロードします。

modprobe -v -r cramfsフラグは-rの短いオプションであるため、おそらく--removeを実行したいと思うでしょう。

これは、モジュールが再起動時に再度ロードされたり、手動で再度ロードされたりすることを妨げるものではありません。これを防ぐには、もう少し複雑なモジュールをブラックリストに登録する必要があります。

3
GracefulRestart

したがって、GracefulRestartが指摘したように、modprobe -n -v cramfsは変更を実行しません。コマンドを書く別の方法はmodprobe --dry-run --verbose crampfsです。

これが、CISエントリのauditセクションの下に表示される理由であり、準拠していないため、出力が予想とは異なることに気付くでしょう。 。したがって、etc/modprobe.d/の下に。confファイルを作成する特定のチェックの修復セクションに移動できます。次の行を追加します。

install cramfs /bin/true

その後、実行します

rmmod cramfs

cramfsをアンロードする

後で準拠する必要があります。


何が起こっているかについてもう少し情報を提供するには:

modprobe.dのマニュアルページ

install modulenameコマンド...これは最も強力なプリミティブです。通常のようにカーネルにモジュールを挿入する代わりに、コマンドを実行するようにmodprobeに指示します。コマンドは任意のシェルコマンドにすることができます。これにより、必要に応じてあらゆる種類の複雑な処理を実行できます。たとえば、モジュール「fred」がすでにインストールされているモジュール「barney」でより適切に機能する場合(ただし、モジュール「barney」に依存しないため、modprobeは自動的にロードしません)、「install fred/sbin/modprobebarney」と言うことができます。 ;/sbin/modprobe --ignore-install fred "、これはあなたが望むことをするでしょう。 --ignore-installに注意してください。これにより、2番目のmodprobeが同じinstallコマンドを再度実行できなくなります。以下の削除も参照してください。

したがって、cramfsモジュールをカーネルに追加する代わりに、そのアクションをinstall cramfs /bin/trueに置き換えます。これは、0の値を返し、次に進みます。

0