2.2. authconfig の使用

authconfig ツールは、LDAP など、どのようなデータストアをユーザー認証情報に使用するかを設定する上で役立つことができます。Red Hat Enterprise Linux の authconfig には、ユーザーのデータストアを設定するオプションとして、GUI とコマンドラインの両方を使用できます。authconfig ツールは、システムで異なる形式の認証メカニズムを使用するのに加え、固有のサービス (SSSD、LDAP、NIS または Winbind) をユーザーデータベースとして使用するように設定することができます。

重要

Red Hat は、Identity Management システムの設定には authconfig ではなく ipa-client-install ユーティリティーまたは realmd システムを使用することを推奨します。authconfig ユーティリティーは機能に制約があり、柔軟性が大幅に低下します。詳細情報は、「システム認証用の Identity Management ツール」 を参照してください。
認証セッティングの設定には、以下の 3 つの authconfig ユーティリティーが使用できます。
  • authconfig-gtk は、完全なグラフィカルインターフェースを提供します。
  • authconfig は、手動での設定に使用するコマンドラインインターフェースを提供します。
  • authconfig-tui はテキストベースの UI を提供します。このユーティリティーは非推奨であることに注意してください。
これらの設定ユーティリティーはすべて root として実行する必要があります。

2.2.1. authconfig CLI 使用時のヒント

authconfig コマンドラインツールは、スクリプトに渡されたセッティングにしたがい、システム認証に必要な設定ファイルとサービスのすべてを更新します。UI で設定可能な ID と認証設定オプションよりもさらに多くを提供すると共に、authconfig ツールを使うとバックアップファイルとキックスタートファイルも作成できます。
authconfig オプションの完全なリストについては、ヘルプの出力と man ページを参照してください。
authconfig の実行に際しては、以下の点に留意してください。
  • すべてのコマンドで --update--test のオプションを使用します。これらのオプションのいずれかがコマンドを正しく実行するために必要になります。--update を使用すると設定の変更を書き込みます。--test オプションは設定への変更を表示しますが、適用はしません。
    --update オプションを使用しないと、システム設定ファイルに変更が書き込まれません。
  • コマンドラインは、既存設定の更新のほか、新規設定にも使用することができます。このためコマンドラインでは、(強制すると、コマンドが設定すべてを更新する可能性があるため) 指定の呼び出しに必須属性が強制的に使用されることはありません。
    認証設定を編集する際は、設定が完全かつ正確であることを確認してください。認証設定を不完全なものまたは間違った値に変更すると、ユーザーがシステムからロックアウトされてしまう可能性があります。--update オプションを使用して変更を書き込む前に、--test オプションで設定が適切であることを確認してください。
  • それぞれの「enable」オプションには対応する「disable」オプションがあります。

2.2.2. authconfig UI のインストール

authconfig UI は、デフォルトではインストールされませんが、管理者が認証設定に簡単な変更を加える際には役立ちます。
UI をインストールするには、authconfig-gtk パッケージをインストールします。このパッケージには、authconfig コマンドラインツールや Bash、Python など一般的なシステムパッケージへの依存関係があります。これらのほとんどは、デフォルトでインストールされます。
[root@server ~]# yum install authconfig-gtk
Loaded plugins: langpacks, product-id, subscription-manager
Resolving Dependencies
--> Running transaction check
---> Package authconfig-gtk.x86_64 0:6.2.8-8.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package              Arch         Version            Repository           Size
================================================================================
Installing:
 authconfig-gtk       x86_64       6.2.8-8.el7        RHEL-Server       105 k

Transaction Summary
================================================================================
Install  1 Package

... 8< ...

2.2.3. authconfig UI の起動

  1. 端末を開いて、root でログインします。
  2. system-config-authentication コマンドを実行します。

重要

authconfig UI を閉じると、すぐに変更が反映されます。
認証の設定 ダイアログボックスには以下の 3 つの設定タブがあります。
  • 識別と認証 ID ストア (ユーザー ID と対応する認証情報が保存されるデータレポジトリー) として使用されるリソースを設定します。
  • 高度なオプション スマートカードや指紋などのパスワードや認証情報以外の認証方法を設定します。
  • パスワードオプション パスワードの認証方法を設定します。
authconfig ウィンドウ

図2.1 authconfig ウィンドウ

2.2.4. 認証設定のテスト

認証設定を完全かつ適切に行うことは極めて重要です。これが行われないと、ユーザー (root さえも) すべてがシステムからロックアウトされたり、一部のユーザーがブロックされてしまったりする可能性があります。
--test オプションは、システム用のすべての ID および認証メカニズムに関する認証設定をプリントします。これには、有効なものおよび無効なエリアの設定の両方が表示されます。
test オプションはそれのみで使用して完全な現行設定を表示するか、authconfig コマンドと使用して (実際に変更せずに) 設定がどのように変更されるか を表示することができます。これは、提示された認証設定が完全かつ正確かどうかを確認する上で非常に便利なものです。
[root@server ~]# authconfig --test
caching is disabled
nss_files is always enabled
nss_compat is disabled
nss_db is disabled
nss_hesiod is disabled
 hesiod LHS = ""
 hesiod RHS = ""
nss_ldap is disabled
 LDAP+TLS is disabled
 LDAP server = ""
 LDAP base DN = ""
nss_nis is disabled
 NIS server = ""
 NIS domain = ""
nss_nisplus is disabled
nss_winbind is disabled
 SMB workgroup = "MYGROUP"
 SMB servers = ""
 SMB security = "user"
 SMB realm = ""
 Winbind template shell = "/bin/false"
 SMB idmap range = "16777216-33554431"
nss_sss is enabled by default
nss_wins is disabled
nss_mdns4_minimal is disabled
DNS preference over NSS or WINS is disabled
pam_unix is always enabled
 shadow passwords are enabled
 password hashing algorithm is sha512
pam_krb5 is disabled
 krb5 realm = "#"
 krb5 realm via dns is disabled
 krb5 kdc = ""
 krb5 kdc via dns is disabled
 krb5 admin server = ""
pam_ldap is disabled
 LDAP+TLS is disabled
 LDAP server = ""
 LDAP base DN = ""
 LDAP schema = "rfc2307"
pam_pkcs11 is disabled
 use only smartcard for login is disabled
 smartcard module = ""
 smartcard removal action = ""
pam_fprintd is disabled
pam_ecryptfs is disabled
pam_winbind is disabled
 SMB workgroup = "MYGROUP"
 SMB servers = ""
 SMB security = "user"
 SMB realm = ""
pam_sss is disabled by default
 credential caching in SSSD is enabled
 SSSD use instead of legacy services if possible is enabled
IPAv2 is disabled
IPAv2 domain was not joined
 IPAv2 server = ""
 IPAv2 realm = ""
 IPAv2 domain = ""
pam_pwquality is enabled (try_first_pass local_users_only retry=3 authtok_type=)
pam_passwdqc is disabled ()
pam_access is disabled ()
pam_mkhomedir or pam_oddjob_mkhomedir is disabled (umask=0077)
Always authorize local users is enabled ()
Authenticate system accounts against network services is disabled

2.2.5. authconfig を使用した設定の保存と復元

認証設定を変更すると、問題が発生する場合があります。不適切な変更を行うと、アクセスがあるべきユーザーを除外したり、ID ストアへの接続が失敗したり、システムへのすべてのアクセスがロックアウトされてしまうことすらあります。
管理者は認証設定を変更する前に、すべての設定ファイルのバックアップを作成することが強く推奨されます。これは --savebackup オプションで実行できます。
[root@server ~]# authconfig --savebackup=/backups/authconfigbackup20190701
--restorebackup オプションと適用するバックアップ名を使用することで、以前に保存されたあらゆるバージョンの認証設定をも復元することができます。
[root@server ~]# authconfig --restorebackup=/backups/authconfigbackup20190701
authconfig コマンドは、設定が変更されるたびに自動的にバックアップを保存します。--restorelastbackup オプションを使用すると、最新の自動バックアップを復元できます。
[root@server ~]# authconfig --restorelastbackup