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のファジークエリのような遅い速度を解決する方法

質問: インデックスは作成されているのに、Like ファジー クエリがまだ遅いのはなぜですか?インデ...

反応ループデータの実装(リスト)

まず、バックグラウンドから来るデータをシミュレートしてみましょう。ここでは、コードをわかりやすくする...

Mac 向け MySQL 5.7.17 のインストールと設定のチュートリアル

1. MySQLをダウンロードする公式サイトのダウンロードページをクリックすると次のページに入ります...

2つのボールが交差する粘着効果を実現するCSSサンプルコード

これは純粋に CSS のみを使用して作成されたエフェクトです。簡単に言うと、このエフェクトは画像処理...

デザインスキルを向上させる良い方法

いわゆる才能(左脳と右脳)つまり、芸術的な才能があるかどうかは、人間の左脳と右脳の分業によって主に決...

Docker を使用した MySQL のデプロイの詳細説明 (データ永続化)

この記事では、Docker を使用して MySQL をデプロイし、データを保持する方法について簡単に...

Windows で Nginx を使用して https サーバーとリバース プロキシを構成する際の問題

リクエストロジックフロントエンド --> https経由でnginxをリクエストnginx -...

mysql5.7.18 のインストール時にエントリが見つからない問題の解決方法

mysql5.7.18のインストール時に次の問題が発生しました: プログラム入力ポイントfesetr...

入力ボックスのオートコンプリート機能をオフにする

これで、autocomplete と呼ばれる input の属性を使用できるようになりました。オート...

CSSにスティッキー効果を追加する方法

前面に書かれたfilter:blur と filter:contrast がこのような素晴らしい化学...

MySQL ステートメントコメントの紹介

MySQL は次の 3 種類のコメントをサポートしています。 1. 行末の「#」文字から。 2. 「...

Windows7 での Mysql5.7 my.ini ファイルの読み込みパスとデータの場所の変更方法

更新: MySQL の公式 Web サイトにアクセスして MySQL インストーラーをインストールし...

Vue コンポーネントはどのように解析され、レンダリングされるのでしょうか?

序文この記事では、Vue コンポーネントがどのように解析され、レンダリングされるかを説明します。 V...

WeChatアプレットキャンバスが署名機能を実装

WeChatアプレットプロジェクトでは、開発モジュールに手書き署名機能が含まれ、WeChatアプレッ...

Nginx+SpringBoot による負荷分散の実装例

負荷分散の概要Nginx の負荷分散実装を紹介する前に、負荷分散の分類について簡単に説明します。負荷...