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

推薦する

Reactにおけるキーの役割の詳細な説明

目次質問: ボタンをクリックすると、スパンの色が赤に変わりますか?上記の問題を分析します。 2番目の...

WeChatアプレットwebViewにH5を埋め込む方法の例

序文WeChat ミニプログラムは新しいオープン機能を提供します!ついにミニプログラムにHTMLペー...

Vueのdiffアルゴリズムについての簡単な説明

目次概要バーチャルドム原理実装プロセスパッチ方式sameVnode関数patchVnode関数upd...

jQueryカルーセル機能を実装する方法

この記事では、jQueryカルーセル機能の実装コードを参考までに共有します。具体的な内容は次のとおり...

Centos7のホスト名を変更する3つの方法

方法 1: hostnamectl の変更ステップ1 ホスト名を確認するホスト名ステップ2 ホスト名...

Flash が HTML div 要素を覆わないようにする方法

今日、フラッシュ広告のコードを書いていたとき、フラッシュに付属するリンクはポップアップ広告と間違われ...

CSS3 FlexBox の伸縮自在なレイアウトを 10 分で理解する

基本的な紹介特徴Flexbox は、よりシンプルで効率的なレイアウト方法を提供する CSS 表示タイ...

Linux でテキストを表示するためのヒント (非常に実用的!)

序文日常の開発では、サーバー上でさまざまなテキストやログの表示操作を実行する必要があることがよくあり...

Vue のグローバル ウォーターマーク実装例

目次1. 透かしのJsファイルを作成する2. 導入操作2.1 App.vueや他のページでの参照2....

DockerはGitを使用してJenkinsのリリースとテストプロジェクトの詳細なプロセスを実装します

目次1. Dockerをインストールする2. カスタムネットワークアドレスを作成する3. Docke...

Windows 64 ビットに MySQL を再インストールするチュートリアル (Zip バージョン、解凍バージョンの MySQL インストール)

MySQLをアンインストールする1. コントロールパネルで、MySQLのすべてのコンポーネントをア...

docker の実行に必要な権限の分析

Docker を実行するには root 権限が必要です。非 root ユーザーに docker コマ...

Vue実戦記録のログインページの実装

目次1. 事前準備1.1 Node.jsをインストールする1.2 webpackをインストールする1...

Mysql クエリの結果セットを JSON データに変換するサンプル コード

Mysql はクエリ結果セットを JSON データに変換します 序文 学生テーブル 学生スコアテーブ...

Linuxターミナルでファイルを作成する2つの一般的な方法を簡単に理解する

mkdir コマンドを使用して新しいディレクトリを作成できることは誰もが知っていますが、多くの場合、...