Linuxは安全なオペレーティングシステムと見なされていますが、そのセキュリティはログインユーザーのパスワード強度と同じくらい優れています。パスワードポリシーは、ユーザーに強力なパスワードを設定するために存在します。Linuxユーザーは、これらのポリシーを適用して、侵害が発生しにくいようにする必要があります。確かに、ハッカーによって数秒でブルートフォースされる可能性のある弱いパスワードや推測可能なパスワードをユーザーが設定することは望ましくありません。
この記事では、Linux、より具体的にはCentOSとUbuntuでパスワードポリシーを適用する方法に基づいて触れます。パスワードの有効期限、パスワードの複雑さ、パスワードの長さなどのパスワードポリシーの適用について説明します。
Ubuntu/Debianでパスワードポリシーを適用する
パスワードポリシーを適用する主な方法は2つあります。それぞれについて詳しく見ていきましょう。
1)パスワードを使用できる最大日数を設定します
まず、ユーザーが特定の日数後にパスワードを変更することを要求するパスワードポリシーを構成できます。ベストプラクティスでは、悪意のあるユーザーを危険にさらし、システムへの侵入を困難にするために、パスワードを定期的に変更する必要があります。これは、Linuxだけでなく、WindowsやmacOSなどの他のシステムにも当てはまります。
これを実現するには、Debian / Ubuntuで、/ etc / login.defsファイルを変更し、 PASS_MAX_DAYSに注意する必要があります。 属性。
デフォルトでは、これは示されているように99、999日に設定されています。
これを妥当な期間、たとえば30日に変更できます。図のように現在の値を30に設定し、変更を保存するだけです。 30日が経過すると、別のパスワードを作成する必要があります。
2)pamを使用してパスワードの複雑さを構成する
パスワードがある程度の複雑さを満たしていることを確認することも同様に重要であり、ハッカーが力ずくでシステムに侵入しようとする試みをさらに阻止します。
原則として、強力なパスワードは大文字、小文字、数字、特殊文字の組み合わせで、少なくとも12〜15文字の長さである必要があります。
Debian / Ubuntuシステムでパスワードを複雑にするには、次のようにlibpam-pwqualityパッケージをインストールする必要があります。
$ sudo apt install libpam-pwquality
インストールしたら、パスワードポリシーを設定する/etc/pam.d/common-passwordファイルに移動します。デフォルトでは、ファイルは次のように表示されます:
以下に示す行を見つけます
password requisite pam_pwquality.so retry=3
次の属性を行に追加します:
minlen=12 maxrepeat=3 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1 difok=4 reject_username enforce_for_root
行全体が次のように表示されます:
これらのディレクティブが何を表すかを具体化してみましょう:
- try =3:このオプションは、終了してエラーを返す前に、ユーザーに3回プロンプトを表示します。
- minlen =12:これは、パスワードが12文字以上であることを指定します。
- maxrepeat =3:これにより、パスワードに含めることができるのは最大3文字の繰り返し文字のみになります。
- ucredit =-1:このオプションでは、パスワードに少なくとも1つの大文字が必要です。
- lcredit =-1:このオプションでは、パスワードに少なくとも1つの小文字が必要です。
- dcredit =-1:これは、パスワードに最後に数字を含める必要があることを意味します。
- ocredit =-1:このオプションでは、パスワードに少なくとも1つの特殊文字が含まれている必要があります。
- difok =3:これは、新しいパスワードの最大3文字の変更のみが古いパスワードに存在する必要があることを意味します。
- reject_username:このオプションは、パスワードが通常の方法または逆の方法でユーザー名で構成されている場合、パスワードを拒否します。
- enforce_for_root:これにより、rootユーザーがパスワードを構成している場合でも、パスワードポリシーが確実に遵守されます。
CentOS/RHELでパスワードポリシーを適用する
DebianおよびUbuntuシステムの場合、 /etc/pam.d/common-password に変更を加えることで、パスワードポリシーを適用しました。 構成ファイル。
CentOS 7およびその他の派生物については、 /etc/pam.d/system-authを変更します。 または/etc/security/pwquality.conf 構成ファイル。
したがって、先に進んでファイルを開きます:
$ sudo vim /etc/pam.d/system-auth
以下に示す行を見つけます
password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=
図のように、行にオプションを追加します。
minlen=12 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1 enforce_for_root
以下の行が表示されます:
完了したら、パスワードポリシーを保存し、ファイルを終了します。
繰り返しになりますが、適用されたポリシーに準拠していない弱いパスワードでユーザーを作成しようとすると、ターミナルに表示されるエラーが発生します。
結論
これまで見てきたように、パスワードポリシーの適用は非常に簡単で、ユーザーが推測しやすい、またはブルートフォース攻撃を受けやすい弱いパスワードを設定するのを防ぐための優れた方法として機能します。これらのポリシーを適用することで、システムのセキュリティを強化し、ハッカーがシステムを危険にさらすのをより困難にすることができます。