Kerberos アプリケーションサーバーと KDC サーバーのセキュリティーを強化するには、次の手順に従ってください。
表 23–4 Kerberos サーバーのセキュリティーの強化 (作業マップ)
タスク |
説明 |
説明 |
---|---|---|
Kerberos 認証を使用してアクセスを有効にします。 |
ネットワークアクセスを制限し、サーバーで Kerberos 認証のみが許可されるようにします。 | |
KDC サーバーへのアクセスを制限します。 |
KDC サーバーとそのデータのセキュリティーを強化します。 | |
辞書ファイルを使用してパスワードセキュリティーを強化します。 |
新しいパスワードを辞書と照合してパスワードのセキュリティーを強化します。 |
この手順を実行すると、telnet、ftp、rcp、rsh、および rlogin を実行しているサーバーへのネットワークアクセスが、Kerberos 認証されたトランザクションだけを使用するネットワークアクセスに制限されます。
telnet サービスの exec プロパティーを変更します。
telnet の exec プロパティーに -a user オプションを追加すると、有効な認証情報を提供できるユーザーにアクセスが制限されます。
# inetadm -m svc:/network/telnet:default exec="/usr/sbin/in.telnetd -a user" |
(省略可能) まだ構成されていない場合は、telnet サービスのexec のプロパティーを変更します。
ftp の exec プロパティーに -a オプションを追加すると、Kerberos 認証された接続のみが許可されます。
# inetadm -m svc:/network/ftp:default exec="/usr/sbin/in.ftpd -a" |
他のサービスを無効にします。
in.rshd と in.rlogind デーモンを無効にする必要があります。
# svcadm disable network/shell # svcadm disable network/login:rlogin |
マスター KDC およびスレーブ KDC には、KDC データベースのローカルコピーがあります。データベースを保護するためにこれらのサーバーへのアクセス権を制限することは、Kerberos 全体のセキュリティーにとって重要です。
必要に応じて、遠隔サービスを無効にします。
KDC サーバーをセキュリティー保護するために、不要なネットワークサービスをすべて無効にします。構成によっては、いくつかのサービスは既に無効になっています。svcs コマンドを使用して、サービス状態を確認します。ほとんどの環境では、KDC がマスターの場合に動作している必要のあるサービスは krb5kdc と kadmin のみです。ループバック TLI を使用するサービス (ticlts、ticotsord、および ticots) は、有効にしておくことができます。
# svcadm disable network/comsat # svcadm disable network/dtspc/tcp # svcadm disable network/finger # svcadm disable network/login:rlogin # svcadm disable network/rexec # svcadm disable network/shell # svcadm disable network/talk # svcadm disable network/tname # svcadm disable network/uucp # svcadm disable network/rpc_100068_2-5/rpc_udp |
KDC をサポートするハードウェアに対するアクセスを制限します。
物理的なアクセスを制限するために、KDC とそのモニターは安全な場所に設置します。このサーバーへのアクセスを完全に制限することが目的です。
KDC データベースのバックアップを、ローカルディスクまたはスレーブ KDC に格納します。
KDC のバックアップをテープに作成する場合、そのテープのセキュリティーを十分に確保してください。キータブファイルのコピーも、同様に作成します。これらのファイルをローカルファイルシステムに格納する場合は、できるだけほかのシステムと共有しないでください。格納先のファイルシステムは、マスター KDC または任意のスレーブ KDC から選択できます。
Kerberos サービスで辞書ファイルを使用することにより、新しい資格の作成時に辞書内の単語がパスワードとして使用されるのを防ぐことができます。辞書の用語がパスワードとして使用されないようにすると、パスワードの推測が困難になります。デフォルトでは /var/krb5/kadm5.dict ファイルが使用されますが、これは空です。
マスター KDC 上でスーパーユーザーになります。
KDC 構成ファイル (kdc.conf) を編集します。
行を追加して、サービスで辞書ファイルが使用されるようにする必要があります。この例では、spell ユーティリティーに含まれる辞書を使用します。構成ファイルの詳細は、kdc.conf(4) のマニュアルページを参照してください。
kdc1 # cat /etc/krb5/kdc.conf [kdcdefaults] kdc_ports = 88,750 [realms] EXAMPLE.COM = { profile = /etc/krb5/krb5.conf database_name = /var/krb5/principal admin_keytab = /etc/krb5/kadm5.keytab acl_file = /etc/krb5/kadm5.acl kadmind_port = 749 max_life = 8h 0m 0s max_renewable_life = 7d 0h 0m 0s sunw_dbprop_enable = true sunw_dbprop_master_ulogsize = 1000 dict_file = /usr/share/lib/dict/words } |
Kerberos デーモンを再起動します。
kdc1 # svcadm restart -r network/security/krb5kdc kdc1 # svcadm restart -r network/security/kadmin |