4.4. スマートカード
					スマートカードに基づいた認証は、パスワードベースの認証の代替手段です。ユーザーの認証情報がスマートカードに格納され、特別なソフトウェアやハードウェアを使用して、その情報にアクセスします。スマートカードを使用して認証するには、ユーザーはスマートカードリーダーにスマートカードを設置してから、そのスマートカードの PIN コードを指定する必要があります。
				
重要
						次のセクションでは、pam_pkcs11 パッケージおよび pam_krb5 パッケージを使用して、ローカルユーザーでスマートカード認証に単一のシステムを設定する方法を説明します。これらのパッケージは、『7.4 リリースノート』 の 非推奨の機能 で説明されているように、非推奨になりました。
					
						スマートカード認証を一元的に設定するには、System Security Services Daemon(SSSD) が提供する拡張スマートカード機能を使用します。詳細は、『Linux Domain Identity, Authentication, and Policy Guide』のSmart-card Authentication in Identity Managementを参照してください。
					
4.4.1. authconfigを使用したスマートカードの設定 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
						Enable smart card support オプションを選択すると、スマートカードの動作を設定するための追加の制御が表示されます。
					
図4.3 スマートカードオプション
						Red Hat Enterprise Linux サーバーおよびワークステーションにおけるスマートカードでのログインはデフォルトでは有効になっておらず、システム設定で有効にする必要があります。
					
注記
							Red Hat Enterprise Linux にログインする際にシングルサインオンを使用するには、以下のパッケージが必要です。
						
- nss-tools
 - nss-pam-ldapd
 - esc
 - pam_pkcs11
 - pam_krb5
 - opensc
 - pcsc-lite-ccid
 - gdm
 - authconfig
 - authconfig-gtk
 - krb5-libs
 - krb5-workstation
 - krb5-pkinit
 - pcsc-lite
 - pcsc-lite-libs
 
4.4.1.1. UI でのスマートカード認証の有効化 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
- root でシステムにログインします。
 - ネットワーク用のルート CA 証明書をベース 64 形式でダウンロードし、サーバーにインストールします。証明書は、certutil コマンドを使用して適切なシステムデータベースにインストールされます。以下に例を示します。
certutil -A -d /etc/pki/nssdb -n "root CA cert" -t "CT,C,C" -i /tmp/ca_cert.crt
[root@server ~]# certutil -A -d /etc/pki/nssdb -n "root CA cert" -t "CT,C,C" -i /tmp/ca_cert.crtCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記インポートされた証明書は、プロセスの後でauthconfigUI に表示されないことに注意してください。UI に証明書は表示されません。認証中に/etc/pki/nssdb/ディレクトリーから証明書を取得します。 - トップメニューで メニューを選択し、 を選択してから をクリックします。
 - 高度なオプション タブを開きます。
 - Enable Smart Card Support チェックボックスをクリックします。
 - スマートカードでは 2 つの動作が設定可能です。
- カード 削除アクション メニューは、アクティブなセッション中にスマートカードが削除された場合にシステムが取得する応答を設定します。
無視オプションは、スマートカードが削除され、Lockが画面を直ちにロックしている間に、システムが通常通りに機能し続けることを意味します。 - Require smart card for login チェックボックスは、ログインにスマートカードが必要であるかどうかを設定します。このオプションを選択すると、認証の他の方法はすべてブロックされます。警告スマートカードを使用して正常にログイン するまで は、これを選択しないでください。
 
 - デフォルトでは、証明書が失効したかどうかを確認するメカニズム (オンライン証明書ステータスプロトコル、OCSP、応答) は無効です。有効期限が切れる前に証明書を失効したかどうかを検証するには、
cert_policyディレクティブにocsp_onオプションを追加して OCSP チェックを有効にします。pam_pkcs11.confファイルを開きます。vim /etc/pam_pkcs11/pam_pkcs11.conf
vim /etc/pam_pkcs11/pam_pkcs11.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow ocsp_onオプションが含まれるように、すべてのcert_policy行を変更します。cert_policy = ca, ocsp_on, signature;
cert_policy = ca, ocsp_on, signature;Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記ファイルの解析方法により、cert_policy と等号記号の間にスペースが 必要 です。そうでない場合は、パラメーターの解析に失敗します。
 - (個人証明書とキーによる設定で) スマートカードが登録されていない場合、スマートカードを登録します。
 - スマートカードが CAC カードの場合は、CAC ユーザーのホームディレクトリーに
.k5loginファイルを作成します。CAC カードに Microsoft プリンシパル名を使用するには、.k5loginファイルが必要です。 - 以下の行を
/etc/pam.d/smartcard-authファイルおよび/etc/pam.d/system-authファイルに追加します。auth optional pam_krb5.so use_first_pass no_subsequent_prompt preauth_options=X509_user_identity=PKCS11:/usr/lib64/pkcs11/opensc-pkcs11.so
auth optional pam_krb5.so use_first_pass no_subsequent_prompt preauth_options=X509_user_identity=PKCS11:/usr/lib64/pkcs11/opensc-pkcs11.soCopy to Clipboard Copied! Toggle word wrap Toggle overflow OpenSC モジュールが想定どおりに機能しない場合は、coolkey パッケージの モジュール(/usr/lib64/pkcs11/libcoolkeypk11.so)を使用します。この場合は、Red Hat テクニカルサポートへの問い合わせ、または問題に関する Bugzilla レポートの作成を検討してください。 /etc/krb5.confファイルを設定します。この設定は、CAC カードか Gemalto 64K カードを使用しているかによって異なります。- CAC カードでは、CAC カードの使用に関連するすべてのルート証明書を
pkinit_anchorsで指定します。CAC カードを設定するための/etc/krb5.confファイルの例では、EXAMPLE.COM は CAC カードのレルム名で、kdc.server.hostname.com は KDC サーバーのホスト名です。Copy to Clipboard Copied! Toggle word wrap Toggle overflow  - 以下の Gemalto 64K カードを設定するための
/etc/krb5.confファイルの例では、EXAMPLE.COM は KDC サーバー上に作成されたレルム、kdc-ca.pem は CA 証明書、kdc.server.hostname.com は KDC サーバーのホスト名です。Copy to Clipboard Copied! Toggle word wrap Toggle overflow  
注記
								スマートカードが挿入されると、デバッグモードで実行する際に pklogin_finder ユーティリティーがログイン ID をカード上の証明書にマッピングしてから、証明書の有効性に関する情報の出力を試みます。
							
pklogin_finder debug
pklogin_finder debug
								このコマンドは、スマートカードを使用してシステムにログインする際の問題を診断する上で役立ちます。
							
4.4.1.2. コマンドラインでのスマートカード認証の設定 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
							システムでスマートカードを使用するために必要なのは 
、--enablesmartcard オプションを設定することだけです。
						authconfig --enablesmartcard --update
[root@server ~]# authconfig --enablesmartcard --update
							スマートカードの他の設定オプションには、その他にもデフォルトのスマートカードモジュールの変更、スマートカードの削除時にシステムの動作の設定、ログイン用のスマートカードの要求などの設定オプションがあります。
						
							値が 0 の場合は、スマートカードが削除された場合にすぐにユーザーをロックするようにシステムに指示します。1 を設定すると、スマートカードが削除された場合にこれを無視します。
						
authconfig --enablesmartcard --smartcardaction=0 --update
[root@server ~]# authconfig --enablesmartcard --smartcardaction=0 --update
							スマートカード認証が正常に設定およびテストされたら、シンプルなパスワードベースの認証ではなく、ユーザーにスマートカード認証を要求するようにシステムを設定できます。
						
authconfig --enablerequiresmartcard --update
[root@server ~]# authconfig --enablerequiresmartcard --update
警告
								スマートカードを使用してシステムに正常に認証されるまで 
--enablerequiresmartcard オプションを使用しないでください。それ以外の場合は、ユーザーがシステムにログインできなくなる可能性があります。
							4.4.2. Identity Management でのスマートカード認証 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
						Red Hat Identity Management は、IdM ユーザーのスマートカード認証をサポートします。詳細は、『Linux Domain Identity, Authentication, and Policy Guide』のSmart-card Authentication in Identity Managementを参照してください。。
					
4.4.3. 対応するスマートカード  リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
						Red Hat Enterprise Linux では、以下のスマートカードとリーダーがサポートされます。
					
スマートカード
- Athena ASECard Crypto スマート、pkcs15-unit
 - ATOS (Siemens) CardOS 5.0
 - Gemalto ID Classic 230 / TOP IM CY2 64kv2
 - Gemalto Cyberflex Access 64k V2c
 - Gemalto GemPCKey USB フォームファクターキー
 - Giesecke & Devrient (G&D) SmartCafe Expert 6.0 (SCP03)
 - Giesecke & Devrient (G&D) SmartCafe Expert 7.0 (SCP03)
 - Safenet 330J
 - Safenet SC650 (SCP01)
 - Siemens Card CardOS M4.4
 - Yubikey 4
 
リーダー
- スマートカードリーダーを内臓した HP キーボード KUS1206
 - Omnikey 3121 リーダー
 - PID 0x3022 リーダーを備えた Omnikey 3121
 - Reiner SCT cyberJack RFID komfort リーダー
 - SCR331 CCID リーダー