Solaris のシステム管理 (セキュリティサービス)

Kerberos サーバー上のセキュリティーの強化

Kerberos アプリケーションサーバーと KDC サーバーのセキュリティーを強化するには、次の手順に従ってください。

表 23–4 Kerberos サーバーのセキュリティーの強化 (作業マップ)

タスク 

説明 

説明 

Kerberos 認証を使用してアクセスを有効にします。 

ネットワークアクセスを制限し、サーバーで Kerberos 認証のみが許可されるようにします。 

「Kerberos アプリケーションのみを有効にする方法」

KDC サーバーへのアクセスを制限します。 

KDC サーバーとそのデータのセキュリティーを強化します。 

「KDC サーバーへのアクセスを制限する方法」

辞書ファイルを使用してパスワードセキュリティーを強化します。 

新しいパスワードを辞書と照合してパスワードのセキュリティーを強化します。 

「辞書ファイルを使用してパスワードセキュリティーを強化する方法」

ProcedureKerberos アプリケーションのみを有効にする方法

この手順を実行すると、telnetftprcprsh、および rlogin を実行しているサーバーへのネットワークアクセスが、Kerberos 認証されたトランザクションだけを使用するネットワークアクセスに制限されます。

  1. telnet サービスの exec プロパティーを変更します。

    telnetexec プロパティーに -a user オプションを追加すると、有効な認証情報を提供できるユーザーにアクセスが制限されます。


    # inetadm -m svc:/network/telnet:default exec="/usr/sbin/in.telnetd -a user"
  2. (省略可能) まだ構成されていない場合は、telnet サービスのexec のプロパティーを変更します。

    ftpexec プロパティーに -a オプションを追加すると、Kerberos 認証された接続のみが許可されます。


    # inetadm -m svc:/network/ftp:default exec="/usr/sbin/in.ftpd -a"
  3. 他のサービスを無効にします。

    in.rshdin.rlogind デーモンを無効にする必要があります。


    # svcadm disable network/shell
    # svcadm disable network/login:rlogin
    

ProcedureKDC サーバーへのアクセスを制限する方法

マスター KDC およびスレーブ KDC には、KDC データベースのローカルコピーがあります。データベースを保護するためにこれらのサーバーへのアクセス権を制限することは、Kerberos 全体のセキュリティーにとって重要です。

  1. 必要に応じて、遠隔サービスを無効にします。

    KDC サーバーをセキュリティー保護するために、不要なネットワークサービスをすべて無効にします。構成によっては、いくつかのサービスは既に無効になっています。svcs コマンドを使用して、サービス状態を確認します。ほとんどの環境では、KDC がマスターの場合に動作している必要のあるサービスは krb5kdckadmin のみです。ループバック TLI を使用するサービス (ticltsticotsord、および 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
    
  2. KDC をサポートするハードウェアに対するアクセスを制限します。

    物理的なアクセスを制限するために、KDC とそのモニターは安全な場所に設置します。このサーバーへのアクセスを完全に制限することが目的です。

  3. KDC データベースのバックアップを、ローカルディスクまたはスレーブ KDC に格納します。

    KDC のバックアップをテープに作成する場合、そのテープのセキュリティーを十分に確保してください。キータブファイルのコピーも、同様に作成します。これらのファイルをローカルファイルシステムに格納する場合は、できるだけほかのシステムと共有しないでください。格納先のファイルシステムは、マスター KDC または任意のスレーブ KDC から選択できます。

Procedure辞書ファイルを使用してパスワードセキュリティーを強化する方法

Kerberos サービスで辞書ファイルを使用することにより、新しい資格の作成時に辞書内の単語がパスワードとして使用されるのを防ぐことができます。辞書の用語がパスワードとして使用されないようにすると、パスワードの推測が困難になります。デフォルトでは /var/krb5/kadm5.dict ファイルが使用されますが、これは空です。

  1. マスター KDC 上でスーパーユーザーになります。

  2. 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
                    }
  3. Kerberos デーモンを再起動します。


    kdc1 # svcadm restart -r network/security/krb5kdc
    kdc1 # svcadm restart -r network/security/kadmin