プラグ可能な認証モジュール(PAM)は、Linuxで長い間使用されてきました。 PAMの目標は、サービスとモジュールの認証と認証の要件を一元化することです。
PAMを紹介する最近の記事で、他のユーティリティを使用して多くの構成変更が行われると述べました。それらのユーティリティの1つはauthconfig
です 。このツールは、RHEL7までのRed HatEnterpriseLinuxで使用されます。 FedoraおよびRHEL8の最新バージョンは、 authselect
を使用します 代わりに、 authconfig
が見つかるかもしれませんが 互換モードのユーティリティ。
authconfig
ツールは、集中認証のためのクライアント構成を支援するために作成されました。 PAMファイルは、この構成の一部にすぎません。たとえば、 authconfig
を使用します Kerberos認証を有効にするには、 /etc/nsswitch.conf
に変更を加えます ファイルと/etc/krb5.conf
pam_krb5
の追加に加えてファイル /etc/pam.d/ {system、password} -auth
へのモジュール ファイル。 authconfig
を使用して追加のPAM構成も可能になりました 以下の例でわかるように、ツール。
3つのauthconfigインターフェイス
多くのシステム構成ユーティリティと同様に、認証は、グラフィカルユーザーインターフェース(GUI)ツール、インタラクティブテキストインターフェース(TUI)、またはコマンドラインで構成できます。 3つのオプションすべてを見てみましょう。
グラフィカルツールはauthconfig-gtk
によって提供されます パッケージ。このユーティリティには、オプションを整理するための複数のタブがあります。
インタラクティブテキストバージョン(「TUI」)には、 authconfig-tui
を使用してアクセスします。 指図。 TAB
を使用する フィールドとSPACE
を移動するためのキー オプションを選択または選択解除するためのバー:
最後に、スクリプト可能なコマンドラインツール authconfig
があります。 。このコマンドには、-help
で説明されている多くのオプションもあります オプションとman
ページ。
グラフィカルバージョンとテキストバージョンはインタラクティブですが、オプションが制限されています。たとえば、3つのインターフェイスすべてで指紋リーダーを使用して認証を有効にできますが、 pam_faillock
を構成するオプションがあるのはコマンドラインツールだけです。 モジュール。 pam_pwquality
を使用したパスワード強度の変更 モジュールはグラフィカルツールとコマンドラインツールで作成されていますが、インタラクティブテキストインターフェイスでは作成されていません。
最初の例:指紋リーダーを有効にする
コマンドラインオプションの使用の詳細に入る前に、 authconfig-tui
のいずれかを使用して指紋リーダーを有効にすることによって行われた変更を見てみましょう。 またはauthconfig-gtk
:
[demo] $ grep fprintd /etc/pam.d/*#指紋リーダーを有効にする前/etc/pam.d/fingerprint-auth:authsufficient pam_fprintd.so/etc/pam.d/fingerprint -auth-ac:auth十分なpam_fprintd.so
このオプションを無効にすると、 fingerprint-auth
のみが使用されます ファイルには、 fprintd
への参照が含まれています モジュール。オプションを有効にすると、新しい行が /etc/pam.d/system-auth
に追加されます ファイル:
[demo] $ grep fprintd /etc/pam.d/*#指紋リーダーを有効にした後/etc/pam.d/fingerprint-auth:authsufficient pam_fprintd.so/etc/pam.d/fingerprint -auth-ac:authsufficient pam_fprintd.so/etc/pam.d/system-auth:authsufficient pam_fprintd.so/etc/pam.d/system-auth-ac:auth soufficient 2番目の例:pwquality設定
グラフィカルツールには、パスワードオプションもあります / etc / security / pwquality
を制御するタブ ファイル:
[demo]#grep'^ [^#]' /etc/security/pwquality.conf#フィールドを変更する前
このファイルには、構文とデフォルト値を示す多くの有用なコメントがあります。フィールドの1つを変更すると、すべてのオプションがファイルの最後に設定されます。
[demo]#grep'^ [^#]' /etc/security/pwquality.conf#フィールドを変更した後minlen =12minclass =2maxrepeat =0maxclassrepeat =0lcredit =0ucredit =0dcredit =0ocredit =0
>
必要な長さと必要な文字クラスの数を変更しました。
authconfigCLIツールを使用する
authconfig
を使用するときに覚えておくべきトリッキーなことの1つ コマンドラインで-update
を追加します オプション。 -test
があります 構文をチェックするオプション、-update
authconfig
を更新するオプション 指定されたオプションの情報と実際の構成ファイル、および-updateall
authconfig
に一致するようにすべての構成ファイルをリセットするオプション 設定。 -updateall
オプションは、管理者がシステムに対して行った可能性のあるすべての手動変更を削除するための優れた方法です。私のワークフローは通常、-update
を使用します 変更ごとのオプション。
authconfig
を実行する場合 通常のユーザーとしてコマンドを実行する場合、コマンドを実行する前に、特権を昇格させるためのパスワードの入力を求められます。これは、-help
にも当てはまります。 クエリ:
[demo]#authconfig --helpUsage:authconfig [options] {--update | --updateall | --test | --probe | --restorebackup | --savebackup | --restorelastbackup}オプション:...省略... --test構成ファイルを更新せず、新しい設定のみを印刷します--update、-kickstart --testの反対、設定を変更して構成ファイルを更新します--updateall updateすべての構成ファイル
GUIおよびTUIバージョンに見られるように、指紋認証はオン/オフの切り替えです。コマンドラインオプションは次のとおりです。
[demo]#authconfig --help | grepfinger--enablefingerprintデフォルトで指紋リーダーによる認証を有効にします--disablefingerprintデフォルトで指紋リーダーによる認証を無効にします
また、指紋機能を有効にするコマンドは次のとおりです。
[demo]#authconfig --enablefingerprint --update
GUIバージョンでは使用できるがTUIバージョンでは使用できないパスワード設定も、コマンドラインで設定できます。
[demo]#authconfig --help | grep passmin --passminlen=パスワードの最小長--passminclass=パスワード内の文字クラスの最小数
同時に複数のオプションを設定できます:
[demo]#authconfig --passminlen =12 --passminclass =2 --update
pwquality
のすべてではないので authconfig
のすべてのバージョンで設定を行うことができます 、-passminlen
などのコマンドラインオプションの1つを使用するのが一般的です。 オプション、最初に / etc / security / pwquality
を構成します ファイル。ユーティリティは、ファイルの下部にあるすべてのオプションの値を設定します。管理者は、 sed
を使用して、これらのフィールドを手動で簡単に編集できます。 コマンド、またはAnsible lineinfile
を使用して モジュール。
faillock
モジュールは、コマンドラインバージョンの authconfig
でのみ使用できるPAM構成ファイルへの変更の例です。 。このモジュールは、指定された間隔でユーザーごとに失敗した認証の試行をカウントし、連続して失敗した認証が多すぎる場合はアカウントをロックします。
[demo]#authconfig --help | grepfail--enablefaillock連続した認証の失敗が多すぎる場合にアカウントのロックを有効にする--disablefaillock連続した認証の失敗が多すぎる場合にアカウントのロックを無効にする--faillockargs=pam_faillockモジュールのオプション
faillock
モジュールも少し異なります。有効または無効にするためのオプションがありますが、引数を渡すためのオプションもあります。カウントしきい値は、間隔の長さとロック解除タイムアウトと同様に調整できます。モジュールを通常のユーザーのみに適用するか、rootアカウントにも適用するかを選択することもできます。 pam_faillock
のマニュアルページ は、/etc/pam.d/*
の最終行の有効なオプションとサンプルを示しています。 ファイル。 -faillockargs
authconfig
のオプション PAMファイルで設定したすべてのオプションの引用符で囲まれた文字列が必要です。オフのままにすると、モジュールのデフォルトオプションが使用されます。
無効にすると、 pam_faillock
への参照はありません モジュール。ただし、 grep
の場合 ただ失敗 pam_faildelay
が表示される場合があります モジュール:
[demo]#grep faillock /etc/pam.d/*#フェイルロックモジュールを有効にする前
必ずfaillock
を引用してください そのオプションを含める場合の引数:
[demo]#authconfig --enablefaillock --faillockargs ='deny =4 Unlock_time =300' --update
モジュールを有効にした後、いくつかの行がいくつかの /etc/pam.d/*auth
に追加されます ファイル。
PAMファイルの手動編集はどうですか?
authconfig
によって変更されたPAMファイルの探索中 、 /etc/pam.d
にいくつかのファイルがあることに気付くかもしれません。 ディレクトリの上部に、ユーティリティによって上書きされる手動編集についてのコメントがあります。ユーティリティは、標準のPAM機能の多くをカバーするように拡張されましたが、手動で変更する必要がある場合があります。手動で変更する場合は、 authconfig
から直接変更を無効にする必要があります 。
手動編集の手順を提供するknowlegebaseの記事とサービスのブログ投稿があります。また、Red Hat Security:Linux in Physical、Virtual、and Cloud(RH415)コースに参加することで、手動で変更するための正式なトレーニング演習を見つけ、いくつかの特定のモジュールを深く掘り下げることができます。
結局のところ、これは非推奨のツールですか?
authconfig
ユーティリティは元々、さまざまなタイプの集中認証の構成を支援するために作成されました。長年にわたって、他のPAM構成も処理できるように拡張されています。現在のシステムでは、集中認証のほとんどが ipa-client-install
を介して構成されています。 またはrealmd
、どちらも sssd
を期待しています およびpam_sss
モジュール。 authselect
ユーティリティはauthconfig
を置き換えます 最近のバージョンのFedoraで、バージョン8のRed Hat Enterprise Linuxに導入されました。この新しいツールは、プロファイルを介して構成を管理し、すべての異なる集中構成ファイルを編集しなくなりました。焦点は/etc/nsswitch.conf
にあります ファイルとPAM構成ファイル。指紋リーダー、スマートカード、 faillock
などの機能を有効または無効にするための、同様のオプションが多数あります。 モジュール。 man authselect-migration
を使用して、移行について詳しく知ることができます。 。
[無料ダウンロード:高度なLinuxコマンドのチートシート。 ]
Linux