GNU/Linux >> Linux の 問題 >  >> Linux

SELinuxとは何ですか?なぜあなたはそれを無効にしたいのですか?

SELinuxについてすでに知っていて、それを無効にするときに発生するリスクを完全に認識している場合は、次の方法でそれを行うことができます。

  • 設定ファイルを開きます/etc / selinux / config またはそのシンボリックリンク/etc / sysconfig / selinux
  • 行をSELINUX=enforcingから変更します SELINUX=無効
  • システムを再起動するか、 setenforce 0を使用します すぐに変更を呼び出します。

SELinuxとは何か、SELinuxを無効にする方法、およびSELinuxを無効にすることが常に良いとは限らない理由の詳細については、この記事をお読みください。

SELinuxとは何ですか?

SELinuxはSecurityEnhancedLinuxの略です。これは、不正使用を回避するために、許可されていないプロセスや、そのようなアクセス権を持たない、または必要としない許可されたプロセスから、システム内のファイルやその他のオブジェクトに高いセキュリティを提供するためのラベル付けメカニズムです。

SELinuxは既存のLinuxシステムにインストールできます。この使用法は、すべての個々のユーザーに役立つわけではありませんが、サーバーシステムには不可欠です。

そのセキュリティの厳格さは、SELinuxでは、ハッキングされた場合でもルートが所有するプロセスが、アクセス権が付与されていないファイルにアクセスできないという事実から理解できます。

SELinuxの仕組み

SELinuxは、プロセスがファイルまたはオブジェクトにアクセスする必要がある場合は常にカーネルが従うアクセスポリシーを適用します。ポリシーに基づいて、各ファイルまたはプロセスにラベルが割り当てられます。したがって、ラベルa:a:aのプロセスが(ラベルb:b:bの)ファイルにアクセスする必要がある場合、両方が一致する必要があります(ポリシーに従って階層が続くMLS構成を除く)。

こことここでラベル付けの詳細をお読みください。

サーバーでSELinuxを無効にすると、システムに多くの脅威が戻ることに注意してください。利便性や記事の内容の推測ではなく、正当な理由でこれを行っていることを確認してください。

SELinuxを無効にすることの欠点

SELinuxを無効にすると、各プロセスは通常のLinuxシステムと同様にファイルにアクセスできるようになります。権利の悪用を防ぐことはできません。ハッキングされたプロセスは、本来の目的には必要なく、悪用される可能性のある秘密のファイルにアクセスする可能性があります。これは深刻な問題です。

ルート権限を持つプロセスが危険にさらされると、システム全体が危険にさらされます。 SELinuxが提供するのは、より厳格なセキュリティです。リスクについて詳しくは、こちらをご覧ください。

セキュリティ機能の場合、SELinuxを無効にする理由

多くの場合、極端なセキュリティ機能が苦痛になるためです。 SELinuxについても同じことが言えます。

どのプロセスからどのファイルにアクセスできるかが厳しすぎるため、サーバー上でさまざまなサービスを適切に機能させるのに苦労します。

たとえば、/ var / lib内のファイルがrootによって所有され、ファイル権限が000の場合、これらのファイルを必要とするプログラムは実行されません。

また、アプリケーションをデバッグしているとき、SELinuxは苦痛になります。無効にすると、頭痛の種を減らすことができます。

ヒント:SELinuxで許容モードを使用する

比較的良い方法は、アプリケーションをデプロイする前、または問題をデバッグする前にSELinuxを許容モードにして、その後再度有効にすることです。

許容モードは、SELinuxが無効になっているように機能しますが、同時に、SELinuxが有効になっているかのようにログに記録されます。

このようにして、/ var / log / messagesログから、SELinuxが有効になっている場合にアプリケーションで何が起こるかを知ることができます。拒否メッセージを確認します。

システムは、許可モードのSELinuxポリシーで保護されていないことに注意してください。

CentOSおよびその他のLinuxディストリビューションでSELinuxを無効にする

次の手順を使用して、SELinuxを無効にできます。これらのコマンドはCentOSでテストされていますが、FedoraおよびRedHatLinuxでは完全に機能するはずです。

同じ手順を他のLinuxディストリビューションにも適用できると思います。そうでない場合は、コメントセクションでお知らせください。

まず、sestatusを使用してSELinuxステータスを確認します コマンド。

SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 31

SELinuxが有効で、強制モードになっている場合は、次の手順を使用して無効にできます。

ステップ1: 構成ファイルを開きます / etc / selinux / config またはそのシンボリックリンク/etc / sysconfig / selinux

ステップ2: 行をSELINUX=enforcingから変更します SELINUX=disabledへ 。

ステップ3: システムを再起動するか、setenforce 0を使用してください 現在のセッションのSELinuxモードを変更すると、変更は再起動時にアクティブになります。

:SELinuxをpermissiveモードにするには、設定ファイルをSELINUX=permissiveに変更します

SELinuxを再度有効にする方法

前述のように、問題をデバッグした後、またはアプリケーションをデプロイした後、SELinuxを再度有効にすることができます。実際、SELinuxを一時的に無効にするのがおそらく最善の方法です。

以前に行った変更を元に戻すことで、SELinuxを再度有効にすることができます。

ステップ1: / etc / selinux/configまたは/etc/ sysconfig/selinuxファイルを再度開きます。

ステップ2: 今回は、行をSELINUX =enforcing

に変更します。

ステップ3: 最後に、システムを再起動するか、コマンド setenforce 1を使用します SELinuxをすぐに適用します。

SELinuxについて、許容モードと強制、SELinuxの無効化など、いくつかのことを明確にしたいと思います。

この記事を改善するための質問や提案がある場合は、以下のコメントセクションでお知らせください。 SELinuxを無効にすることについてのあなたの考えも共有してください。


Linux
  1. POSIXとは何ですか? Linux / UNIXユーザーにとってなぜ重要なのですか?

  2. なぜデイスとそれは何ですか?

  3. CentOSでSELinuxを無効にする方法は?

  1. ipのifconfigを削除する必要がある理由

  2. シェルドットファイルでできること

  3. CentOS 6 で SELinux を無効にする

  1. SELinuxを一時的または永続的に無効にする方法

  2. TAMとは何ですか?なぜあなたはTAMになりたいのですか?

  3. Linuxシステムの現在のランレベルはどれくらいですか?