Linuxにおけるselinuxの基本設定チュートリアルの詳細な説明

Linuxにおけるselinuxの基本設定チュートリアルの詳細な説明

selinux ( Security-Enhanced Linux)は、Linux カーネル モジュールであり、Linux のセキュリティ サブシステムです。

3つのモード:

強制: 強制モード。selinux が実行中の場合、ドメイン/タイプの制限が開始されます。

permissive: 警告モード。selinux の実行中に警告メッセージが表示されますが、ドメイン/タイプのアクセスは制限されません。

disabled: 無効モード。

getenforceを使用してselinuxのステータスを確認できます

ファイルにおける selinux の役割:

selinux が有効になっている場合、selinux は各ファイルのタグ コンテキストをロードします。セキュリティ コンテキストが一致している必要があります。一致していない場合はファイルにアクセスできません。

テスト:

###selinuxを有効にする


ここに画像の説明を挿入

ファイルを作成し、FTPリリースディレクトリに移動する

touch /mnt/filemv /mnt/file /var/ftp/

ここに画像の説明を挿入

ユーザーはFTPにログインしてファイルを閲覧します


ここに画像の説明を挿入

匿名ユーザーは、以前にFTPに移動されたファイルを読み取ることができないことがわかります。

しかし、ファイルはFTPディレクトリに存在します


ここに画像の説明を挿入

ファイルのセキュリティコンテキストを表示する

ls -Z /var/ftp/

ここに画像の説明を挿入

2 つのファイルのセキュリティ コンテキストが異なるため、表示されないことがわかります。
セキュリティコンテキストを一時的に変更する

chcon -t public_content_t /var/ftp/file

ここに画像の説明を挿入

ファイルを表示するにはFTPにログインしてください


ここに画像の説明を挿入

セキュリティ コンテキストが一貫しているため、ファイルを表示できます。

chcon はセキュリティ コンテキストの一時的な変更に過ぎません。システム selinux を再起動すると、変更は無効になります。

###セキュリティコンテキストを永続的に変更する

##独自のFTPホームディレクトリを作成し、ディレクトリのセキュリティコンテキストラベルを変更します

mkdir /ftphomesemanage fcontext -a -t pubilc_content_t '/ftphome(/.*)?'

###ディレクトリのセキュリティコンテキストを表示する


ここに画像の説明を挿入

ここで、セキュリティ コンテキスト ラベルが変更されていないことがわかります。カーネル リスト サービスを再起動する必要があります。

restorecon -RvvF /ftphome###R: 再帰的 vv: ディレクトリの下のサブディレクトリまたはファイルの変更情報を表示する、F: ディレクトリ内のファイルとディレクトリのセキュリティ コンテキストを強制的に一致させる

ここに画像の説明を挿入

セキュリティコンテキストが変更されました


ここに画像の説明を挿入

サービスにおける selinux の役割:

selinux がサービスに与える影響は、デフォルトではオフになっているスイッチをサービスに追加するのと同じです。 1: スイッチをオンにする; 0: スイッチをオフにする

selinux がオンになっている場合は、ftp にログインして、サービスに対する selinux の切り替え効果をテストします。

ここに画像の説明を挿入

ユーザーはファイルをアップロードしたり削除したりすることはできません

FTP の SELinux スイッチのステータスを確認する


ここに画像の説明を挿入

すべて非公開状態なので、ユーザー権限に制限があります

機能スイッチをオンにする

setsebool -P ftp_home_dir オン setsebool -P ftpd_anon_write オン

ここに画像の説明を挿入

FTPに再度ログインすると、ユーザーはファイルをアップロードできます


ここに画像の説明を挿入

selinuxエラーログの解決策を提供できるsetroubleshootをインストールします。

/var/log/audit/audit.log ### selinuxによって収集されたログを記録します

ここに画像の説明を挿入

/var/log/audit/audit.log をダウンロードします ### selinux によって収集されたログを記録します

ここに画像の説明を挿入

要約する

上記は、編集者が紹介した Linux の selinux の基本設定チュートリアルの詳細な説明です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • SELINUXの動作原理の詳細な説明
  • SELinux 入門
  • Android の SELinux TE について簡単に説明します
  • Android Selinux の権限と問題の詳細な説明
  • CentOS 7 システムで SELinux が MongoDB の起動を妨げる問題の詳細な説明
  • SELinux により PHP が MySQL に異常接続する。MySQL サーバーに接続できない問題の解決方法
  • selinux(ファイアウォール)を無効にする方法
  • Linux での SELinux を理解する方法

<<:  MySQLが大量のデータを処理する際にクエリ速度を最適化するいくつかの方法

>>:  Vueデータ双方向バインディング実装方法

推薦する

MySQL 8.0.11 のインストールと設定方法のグラフィックチュートリアル MySQL 8.0 の新しいパスワード認証方法

この記事では、参考までにMySQL8.0.11のインストールと設定方法、およびMySQL8.0の新し...

デザイン参考 WordPressウェブサイト構築成功事例

これら 16 のサイトはそれぞれ注意深く読む価値があり、どのサイトでも推奨されている Web サイト...

MySQL 8.0.16 圧縮パッケージのインストールと設定方法のグラフィックチュートリアル

この記事では、MySQL 8.0.16圧縮パッケージのインストールと設定方法を参考までに紹介します。...

MySQLデータベースとテーブルシャーディングの概要

プロジェクトの開発中に、データベースのデータがどんどん大きくなり、その結果、1 つのテーブルにデータ...

珍しいけれど役に立つJSテクニックをいくつか紹介します

序文プログラミング言語には通常、さまざまな隠されたトリックが含まれており、これらのトリックを上手に使...

ReactでuseStateを使用する詳細な例

使用状態useState は、関数コンポーネント内で呼び出すことで、コンポーネントに内部状態を追加し...

docker compose の使い方の詳しい説明

目次Docker Compose の使用シナリオ基本的なデモ基本的な操作とメンテナンスdocker-...

MySQLのロック機構の詳細な説明

序文データの一貫性と整合性を確保するために、あらゆるデータベースにはロック メカニズムが備わっていま...

Linux サーバーと Windows システム間でファイルをアップロードおよびダウンロードする方法

背景: Linux サーバーのファイルのアップロードとダウンロード。 XShell+Xftp インス...

この記事では、jsのデータ型とデータ構造の世界を紹介します。

目次1. 動的型付けとは何ですか? 2. データ型2.1 プリミティブ型 (6 つのプリミティブ型、...

Linux resolv.conf の簡単な分析

1. はじめにresolv.conf は、さまざまなオペレーティング システムのドメイン ネーム シ...

linuxdeployqt を使用して Ubuntu で Qt プログラムをパッケージ化する問題を解決する

いくつかの Qt インターフェース プログラムを作成しましたが、Qt 環境がインストールされていない...

Dockerコンテナのインポ​​ートとエクスポートに関するチュートリアル

背景Docker の人気は、コンテナの共有と移植が容易であることと密接に関係しています。ユーザーは、...

ie8/ie9/ie10/ie11 chrome firefox を区別するための CSS コード

ウェブサイトの互換性のデバッグは本当に面倒です。今日のウェブサイト デザイナーは、以前よりもはるかに...

スマートCSSを使用して、ユーザーのスクロール位置に基づいてスタイルを適用します。

現在のスクロール オフセットを html 要素の属性に追加することで、現在のスクロール位置に基づいて...