Translated message

A translation of this page exists in English.

ユーザーのプロセス数のデフォルトで指定されたソフト制限またはハード制限を設定または変更する方法

Solution Verified - Updated -

Environment

  • Red Hat Enterprise Linux 5
  • Red Hat Enterprise Linux 6
  • Red Hat Enterprise Linux 7
  • Red Hat Enterprise Linux 8
  • Red Hat Enterprise Linux 9

Issue

  • システム全体の設定ファイル /etc/security/limits.d/90-nproc.conf (RHEL5RHEL6)、/etc/security/limits.d/20-nproc.conf (RHEL7) は、デフォルトの nproc 制限を次のように指定します。

    *            soft    nproc     1024
    root       soft    nproc     unlimited
    
  • ただし、root でログインすると、ulimit には別の値が表示されます。

    $ ulimit -u
    1024
    
  • この場合、これが unlimited ではないのはなぜですか?

  • ユーザーのプロセス数のデフォルトで指定された soft limit または hard limit を、設定または変更するにはどうすればよいですか?

Resolution

システム全体に nproc 制限を unlimited に設定するには、/etc/security/limits.d/90-nproc.conf (RHEL5RHEL6) ファイル、/etc/security/limits. d/20-nproc.conf (RHEL7 以降) ファイルは以下のようになります。

  • root ユーザーの場合:

    root       hard    nproc     unlimited
    
  • root ユーザーの場合 ('soft' と 'hard' の両方):

    root       -    nproc     unlimited
    
  • または、デフォルトのドメインの場合 ('soft' と 'hard' の両方)。以下に例を示します。

    *          -    nproc     unlimited
    
  • ドメインの soft 値に適用される unlimited のオプションは、ドメインの hard 制限を超えることはできません。 詳細な説明と例については、What are the true user's ulimits? の記事を参照してください。

  • 変更を有効にするには、再ログインします。

    $ ulimit -u
    
  • セッションごとに制限を設定する別のオプションとして、コマンドラインで指定することが挙げられます。

    $ ulimit -u unlimited
    
  • このコマンドは、softhard の両方の制限に適用されます。 考えられるリスクについては、リンクされている記事を確認してください。

注記: RHEL5 および RHEL8 の pam では、/etc/security/limits.d の下にはファイルはありません。 必要に応じて、ファイルを作成します。

Root Cause

デフォルトでは、ルールは /etc/security/limits.conf ファイルから読み込まれます。 これらのルールの形式に関する詳細な説明は、limits.conf (5) の man ページを参照してください。 さらに、特定のアプリケーションやサービス専用の /etc/security/limits.d ディレクトリーに個別の設定ファイルを作成できます。 デフォルトでは、pam_limits モジュールは /etc/pam.d/ ディレクトリー内のファイルに多数含まれています。 ユーザープロセスのデフォルト制限は、Fork 爆弾などの悪意のあるサービス拒否 (DoS) 攻撃を回避するために、/etc/security/limits.d/90-nproc.conf (RHEL5RHEL6)、/etc/security/limits.d/20-nproc.conf (RHEL7) のファイルで定義されています。 ユーザープロセスのデフォルト制限を 50 に変更するには、このファイルの値を変更します。

注記: RHEL8 および RHEL9 には、/etc/security/limits.d/20-nproc.conf のようなファイルがないため、RHEL8 および RHEL9nproc を制限する場合は、/etc/security/limits.d//etc/security/limits.d/20-nproc.conf のようなファイルを作成する必要があります。

Source: RHEL6 Security Guide, ⁠Chapter 2. Securing Your Network

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Comments