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データ双方向バインディング実装方法

推薦する

Kafka の Docker デプロイメントと Spring Kafka 実装

この記事は主にDockerによるKafkaのデプロイとSpring Kafkaの実装について紹介しま...

Dockerが独自のローカルイメージリポジトリを構築するための手順

1. 環境と準備1. Ubuntu 14.04 2.Docker環境2. 建設プロセス1. ミラーソ...

Win10 への MySQL 5.7 のインストール MSI 版のチュートリアル(画像とテキスト付き)

主にインストール後に my.ini ファイルを確認するために、msi 形式でインストールしました。フ...

Vue カスタム オプション時間カレンダー コンポーネント

この記事の例では、参考のためにvueカスタムオプションタイムカレンダーコンポーネントの具体的なコード...

CSSプロパティに基づいたボタンホバーボーダーと背景アニメーションのコレクション

ハートの属性不透明度: .999 は要素のスタッキングコンテキストを作成し、ボタン6と8のアニメーシ...

MySQLで判定文を書く方法のまとめ

MySQL で判断文を書く方法:方法1. CASE関数case関数の構文: CASE条件 値1の場合...

SQL と NoSQL の違いのまとめ

主な違い: 1. タイプSQL データベースは主にリレーショナル データベース (RDBMS) とし...

検索ナビゲーションバー付きの CSS サンプルコード

この記事では、CSS を使用して検索機能付きのナビゲーション バーを作成する方法を説明します。以下の...

MySQL 5.7 JSON 型の使用の詳細

JSON は、言語に依存しないテキスト形式を使用する軽量のデータ交換形式で、XML に似ていますが、...

JavaScript でプロトタイプ パターンを実装する方法

概要プロトタイプ パターンは、プロトタイプ インスタンスによって作成されるオブジェクトの型を指し、こ...

MySQLリモート接続失敗の解決策

以前、MySQLがローカルでは接続できるのにリモートでは接続できないという問題に遭遇したことがありま...

Mysql の遅いクエリ操作の概要

MySQL の遅いクエリの説明MySQL スロー クエリ ログは、MySQL が提供するログ レコー...

HTML ウェブページ画像タグ

画像タグ <IMG> を挿入します。今日私たちが目にするカラフルなウェブページはすべて、...

CSS3のall属性の使い方を理解する

1. 互換性以下のように表示されます。 互換性は問題ありません。IE を除き、他のブラウザは基本的に...

ミニプログラムの基本的な使用方法の知識ポイント(非常に包括的で、お勧めです!)

目次アプリを登録するときに何をすればよいですか?ページを登録するときに通常何をする必要がありますか?...