5.1 ZENworksファイルにアクセスするためのLinuxサーバの設定

ZENworksファイルを保存し、ファイルにアクセスするための「バックエンド」としてLinuxサーバを使用する場合は、後でZENworksがLinuxサーバに保存されているファイルにアクセスできるように、(ZENworks Desktop Management Serverをインストールする前に、またはインストールした後に) Linuxサーバを設定する必要があります。

メモ:ファイルにアクセスするためのLinuxサーバの設定はオプションです。Linuxバックエンドサーバを使用したまま、NetWare®サーバまたはWindowsサーバを設定してファイルにアクセスできます。

この節では、ZENworksファイルにアクセスするための、Novell Open Enterprise Server (OES)サーバの設定ではなく、SUSE® Linux Enterprise Server (SLES)サーバの設定について説明します。OES Linux にはNovell eDirectory™がすでに存在し、Novell Storage Services (NSS)はそのファイルシステムにアクセスできます。したがって、OES Linuxサーバに格納されているポリシーまたはアプリケーションファイルは、UNC形式のパス(\\OES_server_name/sys/public/....)を使用できるため、ZENworksファイルにアクセスするための設定は不要です。

ファイルにアクセスできるようにSLESサーバを設定するには、Active Directory*ドメインまたはeDirectoryツリーから認証情報を取得するようにSambaサーバソフトウェアを設定し、サーバ上にSamba共有を1つまたは複数作成する必要があります。これにより、Samba共有をこのディレクトリで管理できます。

この節では、必要な認証を実行する基本的な方法について説明します。Sambaの設定方法は多数あります。詳細については、Samba Documentation Collectionを参照してください。

この節には、次の情報が含まれています。

5.1.1 Active Directory環境でのLinuxサーバの設定

ZENworks Management ServerをインストールするSLES 9またはSLES 10サーバでActive Directoryを使用する場合は、ZENworksで使用するためにSLES 9またはSLES 10サーバ上に格納するアプリケーションおよびその他のファイルにディレクトリベースのCIFSでアクセスする必要があります。

重要:この方法は推奨されませんが、Novell Client™がインストールされているWindowsワークステーションから、ユーザがOESサーバ/Samba共有にアクセスできるようになります。ただし、OESサーバ名とは異なるnetBIOS名を提供するようにSambaを設定する必要があります。

この節では、次の情報について紹介します。

Kerberosを使用するためのSamba設定

認証にKerberos*を使用するようにSLES 9サーバを設定するには、次の手順に従います。

  1. Kerberos (heimdal-libバージョン0.6以降)の設定ファイルを編集して、追加するActive Directoryドメインの名前を指定します。

    1. テキストエディタを使用して、Linuxサーバ上にある/etc/krb5.confを開きます。

    2. このファイルで次の行を検索します。

      [libdefaults]
      default_realm = YOUR.KERBEROS.REALM
      
      
      [realms]
      YOUR.KERBEROS.REALMS = {
      kdc = your.kerberos.server
           }
      
    3. この行を次のように変更します。

      [libdefaults]
      default_realm = DOMAIN_NAME
      
      
      [realms]
      DOMAIN_NAME = {
      kdc = wins_name
      admin_server = wins_name
      kpasswd_server = wins_name
           }
      

      この例のDOMAIN_NAME値には、追加するActive Directoryドメインの完全修飾名を指定します(例: RESEARCH.MYLOCATION.DIGITALAIRLINES.COM)。名前を入力するときは、大文字を使用します。

      変更後のkdc行および新しく追加したadmin_server行とkpasswd_server行のwins_name値には、ドメイン内のプライマリドメインコントローラまたは任意のドメインコントローラを指定します(例: DC1)。

  2. Sambaサーバの設定ファイルを編集して、Active Directoryドメインでのユーザ認証にKerberosを使用するように指定します。

    1. テキストエディタを使用して、Linuxサーバ上にある/etc/samba/smb.confを開きます。

    2. ファイルのGlobalセクションにある次の行を検索します。

      security = user
      
    3. 次のようにこの行を変更し、行を追加します。

      security = ADS
      realm = YOUR.KERBEROS.REALM
      encrypt passwords = yes
      netbios name = advertised_name
      

      この例のYOUR.KERBEROS.REALM値には、krb5.confファイルで指定されているドメイン名を指定します(ステップ 1.cを参照)。

      netbios name行のadvertised_name値には、Sambaサーバのアドバタイズされたネットワーク名およびActive Directory内でのアドバタイズされたネットワーク名を指定します(例: myserver_smb)。

  3. Active Directoryコンテナにサーバの名前を挿入します。

    1. Linuxサーバのコマンドラインに、次のコマンドを入力します。

      kinit administrator@YOUR.KERBEROS.REALM
      

      この例のYOUR.KERBEROS.REALM値には、krb5.confファイルで指定されているドメイン名を指定します。

    2. Linuxサーバのコマンドラインに、次のコマンドを入力します。

      net ads join
      

Samba共有のセットアップ

WindowsワークステーションがSLES 9またはSLES 10サーバ上のファイルにアクセスするために、Samba共有を作成する必要があります。

  1. テキストエディタを使用して、Linuxサーバ上にある/etc/samba/smb.confを開き、ファイルに次の行を追加します。

    [sharename]
    path = local_directory
    guest ok = no
    read only = no
    

    最初の行のsharename値には、Samba共有のアドバタイズされたネットワーク名を指定します(例: zenfiles)。

    2行目のlocal_directory値には、共有が存在するサーバ上のローカルディレクトリを指定します。

  2. 共有にアクセスするすべてのユーザを1つのLinuxアカウントにマップします。

    1. Linuxサーバのコマンドラインに、次のコマンドを入力します。

      /usr/sbin/useradd new_account_name
      

      new_account_nameパラメータには、作成するLinuxアカウントの名前を指定します(例: smbuser)。

    2. Linuxサーバ上にある/etc/samba/smbusersファイルを検索します。

    3. ファイルに次の行を追加します。

      new_account_name = *
      

      この行のnew_account_name値には、ステップ 2.aで作成したアカウント名を指定します。

  3. Linuxサーバのコマンドラインに次のコマンドを入力して、共有へのパスの所有権を変更します。

    mkdir -p directory_name
    
    chown -R Linux_account_name directory_name
    
    chmod 755 directory_name
    

    directory_name値は、ステップ 1で指定したローカルディレクトリへのパスを表します。

    Linux_account_name値には、ステップ 2.aで割り当てた「新しいアカウント名」を指定します。

  4. Linuxサーバのコマンドラインに次のコマンドを入力して、設定ファイルが新しいパラメータで実行されるようにSambaサーバを再起動します。

    /etc/init.d/smb restart
    

5.1.2 eDirectory環境でのLinuxサーバの設定

ZENworks Management ServerをインストールするSLES 9またはSLES 10サーバでeDirectoryを使用する場合は、ZENworksで使用するためにSLES 9またはSLES 10サーバ上に格納するアプリケーションおよびその他のファイルにディレクトリベースのCIFSでアクセスする必要があります。

この節では、eDirectory環境内でZENworks Desktop Managementで使用できるようにSLES 9またはSLES 10サーバを設定するために必要な情報について説明します。

LDAPを使用してeDirectoryに対する認証を実行するためのLinuxの設定

この節では、LDAPを介してNovell eDirectoryへの認証リダイレクトを提供するために、SLES 9サーバまたはSLES 10サーバ(LDAPクライアントとして機能)およびNovell eDirectory (LDAPサーバとして機能)を設定するために必要な手順について説明します。ここでは、Novell eDirectory 8.7.3 (以降)がSLES 9サーバまたはSLES 10サーバにインストールされていることを前提とします。

サーバの設定が終了すると、どのユーザでもeDirectoryアカウント情報を使用してSLES 9サーバまたはSLES 10サーバにログインできるようになります。

次の手順を順に実行してください。

Linuxアカウント認証のためのeDirectoryスキーマの拡張

eDirectory認証のためにSLES 9サーバまたはSLES 10サーバを設定するには、既存のeDirectoryスキーマを拡張する必要があります(OESサーバ上のスキーマはZENworksのインストールにより拡張されています)。

スキーマの拡張は、ndsschemaユーティリティまたはICEユーティリティを使用して実行できます。この2つのユーティリティはSLES 9サーバまたはSLES 10サーバ上にあります。これらのユーティリティのコマンドライン構文については、この節で後述します。

重要:ICEユーティリティを使用する前に、これから使用するeDirectoryツリー内のLDAP GroupオブジェクトのプロパティをConsoleOneを使用して確認しておく必要があります。

LDAP Groupオブジェクトを右クリックし、[プロパティ][一般]の順にクリックし、[TLSにパスワードの単純なバインドを要求する]の選択を解除します。

Linuxアカウント認証のために定義されたスキーマは、RFC 2307で定義されています。Novellでは、Novell eDirectoryスキーマを拡張するために使用する、従来のeDirectoryスキーマ形式およびLightweight Data Interchange Format (LDIF)のスキーマインポートファイルを用意しています。

使用している環境でeDirectoryスキーマを拡張するには、次の手順に従います。

  1. Novell eDirectoryを実行しているLinuxサーバにルートユーザとしてログインします。

  2. bashプロンプトが表示されたら、「cd /usr/lib/nds-schema」と入力します。

  3. ユーティリティを実行して、スキーマを拡張します。

    • ndsschemaを使用する方法: bashプロンプトが表示されたら、次のコマンドを入力してスキーマを拡張します。

      ndssch cn=admin_name.o=admin_container_name rfc2307-usergroup.sch
      
    • ICEを使用する方法: bashプロンプトが表示されたら、次のコマンドを入力してスキーマを拡張します。

      ice -S LDIF -f rfc2307-usergroup.ldif -D LDAP -s localhost -d cn=admin_name,o=admin_container_name -W
      
SambaのためのeDirectoryスキーマの拡張
  1. bashプロンプトが表示されたら、次のコマンドを入力します。

    cd /usr/share/doc/packages/samba/examples/LDAP
    

    この場所は、samba-doc RPMパッケージによって用意されます。代わりに、次のコマンドを使用して、samba-client RPMパッケージのスキーマファイルを使用することもできます。

    cd /usr/share/samba/LDAP
    
  2. 次のコマンドを入力し、ICEユーティリティを使用してSambaのeDirectoryスキーマを拡張します。

    ice -S LDIF -f samba-nds.schema -D LDAP -s localhost -d cn=admin_name,o=admin_container_name -W
    
匿名バインドのためのプロキシユーザの作成

匿名バインドのためにeDirectoryでプロキシユーザをセットアップするには、次の手順に従います。

  1. ConsoleOneで、新しいユーザアカウントを作成して、パスワードをnullに設定します。プロンプトが表示されたら、[キャンセル]ではなく[OK]をクリックして、パブリック/プライベートキーを生成します。

  2. 新しいユーザオブジェクトを右クリックし、[プロパティ][パスワード制限]の順にクリックして、[パスワード変更許可]の選択を解除します。

  3. ツリーのルートオブジェクトで、オブジェクトを右クリックして[このオブジェクトのトラスティ割り当て]を選択し、新しいユーザにエントリ参照の権利を付与してから、新しいユーザに次の属性に対するプロパティの読み込みと比較の権利を付与します。

    • CN
    • Description
    • O
    • OU
    • Object Class
    • dc
    • gecos
    • gidNumber
    • homeDirectory
    • [loginShell]
    • memberUid
    • uidNumber
    • uniqueID

    これらの属性を設定する場合に、各属性に対してInheritableが選択されていることを確認します。

  4. このユーザオブジェクトの属性リストから[すべての属性権]を削除します。

  5. LDAP Groupオブジェクトを右クリックし、[プロパティ][一般]の順にクリックして、この新しいユーザをプロキシユーザとして選択します。

    ヒント:ZENworks 7 Companion 1 CDに収録されているバージョンのConsoleOneから[一般]タブにアクセスすることはできません。ZENworks Desktop Managementを適切に使用するには、NovellダウンロードWebサイトからZENworks 7 Desktop Management snap-ins for ConsoleOne 1.3.6をダウンロードする必要があります。

    ダウンロードサイトの指示に従って、スナップインをインストールします。

  6. LDAPサーバオブジェクトを右クリックし、[プロパティ][一般]の順にクリックして、[NLDAPサーバを即時リフレッシュ]を選択します。

SLES 9サーバまたはSLES 10サーバ(LDAPクライアント)の設定
  1. YaST2コントロールセンターを起動します。

    1. /sbin/yast2を実行します。

    2. menu」と入力します。

  2. メニューから、[Network Services (ネットワークサービス)][LDAP Client (LDAPクライアント)][Use LDAP (LDAPを使用)]の順に選択します。

    手順1と2を実行する代わりに、コマンドラインから/sbin/yast2 ldapを簡単に実行して、LDAPクライアントの設定ウィンドウを開くこともできます。

  3. [サーバ]フィールドおよびユーザが配置されている場所の検索ベースにLDAPサーバを追加します。例:

    Base DN: ou=users, ou=novell

    Addresses of LDAP Servers: 127.0.0.1

  4. [LDAP TLS/SSL]を選択し、[終了]をクリックして変更内容を保存します。

Linux認証のためのeDirectoryアカウントの設定

ユーザアカウントにposixAccount補助クラスを追加して必須フィールドを設定するには、次の手順に従います。

  1. ConsoleOneで、ユーザアカウントを選択して右クリックします。

  2. [このオブジェクトの拡張]を選択します。

  3. [拡張の追加]をクリックします。

  4. リストで[posixAccount]を選択し、[OK]をクリックします。

  5. [一般的な編集]ダイアログボックスで[OK]をクリックします。

  6. 新しいposixAccountのダイアログボックスで、フィールドに入力します。次の表は、フィールド名、目的、および入力するデータ例を示しています。

    フィールド名

    目的

    Name

    この拡張の名前

    posixAccount

    homeDirectory

    ユーザのホームディレクトリ

    /home/tjones

    uniqueID

    ユーザの固有ID

    tjones

    Common Name

    Linuxのgecosフィールド

    Trevor Jones

    gidNumber

    LinuxのGID

    515

    uidNumber

    LinuxのGID

    515

    ユーザオブジェクトの[その他]ページで追加できるその他の必須属性は次のとおりです。

    フィールド名

    目的

    [loginShell]

    ユーザのシェルを設定します。loginShell属性は、適切なXログインのためにSUSE Linuxで必須です。

    /bin/bash

  7. [OK]をクリックして変更内容を保存します。

ユーザ用のSambaアカウント情報の作成

管理対象ユーザ用のSambaアカウント情報は、標準のLinuxアカウント情報とは別に保持されます。ユーザアカウント用のSambaアカウント情報を追加するには、次の手順に従います。

  1. SLES 9サーバまたはSLES 10サーバでRootとしてログインし、bashプロンプトが表示されたら次のコマンドを入力します。

    smbpasswd -a username
    

    この設定では、サーバにログインするユーザはサーバのSambaパスワードを入力するように要求されます。この構文では、usernameは、ユーザのeDirectoryユーザ名です。ユーザは、LDAPクライアントを設定するときに、コンテキスト内でベースDNとして指定される必要があります。詳細については、SLES 9サーバまたはSLES 10サーバ(LDAPクライアント)の設定を参照してください。

    メモ:これはSambaアカウントを作成する基本的な方法です。LinuxとSambaの両方のパスワードを1つのコマンドで管理するために使用できるユーティリティおよび方法は多数あります。詳細については、Samba Documentation Collectionを参照してください。

Samba共有のセットアップ

WindowsワークステーションがSLES 9サーバまたはSLES 10サーバ上のファイルにアクセスするために、Samba共有を作成する必要があります。

  1. テキストエディタを使用して、Linuxサーバ上にある/etc/samba/smb.confを開き、ファイルに次の行を追加します。

    [sharename]
    path = local_directory
    guest ok = no
    read only = no
    

    最初の行のsharename値には、Samba共有のアドバタイズされたネットワーク名を指定します(例: zenfiles)。

    2行目のlocal_directory値には、共有が存在するサーバ上のローカルディレクトリを指定します。

  2. Linuxサーバのコマンドラインに次のコマンドを入力して、共有へのパスの所有権を変更します。

    mkdir -p directory_name
    
    chown -R admin_user_name
    
    chmod 755 directory_name
    

    admin_user_name値には、ZENworksでポリシーとアプリケーションを作成するときに使用するユーザ名を指定します。このユーザ名は、Samba共有へのアクセスに使用されます。

    directory_name値は、ステップ 1で指定したローカルディレクトリへのパスを表します。

  3. Linuxサーバのコマンドラインに次のコマンドを入力して、設定ファイルが新しいパラメータで実行されるようにSambaサーバを再起動します。

    /etc/init.d/smb restart
    

SLES 9サーバ上のワークステーション関連ZENworksファイルへのアクセス(オプションA)

eDirectoryによる方法を使用して、SLES 9サーバ上にあるワークステーション関連のポリシーファイルおよびアプリケーションファイルにアクセスする必要がある場合、Samba共有はGuestアクセスを許可するように設定されている必要があります。Samba共有を設定するには、次の手順に従います。

  1. テキストエディタを使用して、サーバ上にある/etc/samba/smb.confを開きます。

  2. ファイルの[sharename]セクションにある次の行を検索します。

    guest ok = no

    sharename値には、Samba共有のアドバタイズされたネットワーク名を指定します(例: zenfiles)。

  3. この行を次のように変更します。

    guest ok = yes

SLES 9サーバまたはSLES 10サーバ上のワークステーション関連ZENworksファイルへのアクセス(オプションB)

Windows Middle Tier Serverを使用して、eDirectoryによる方法でSLES 9サーバまたはSLES 10サーバ上のワークステーション関連のポリシーファイルやアプリケーションファイルにアクセスする場合、Samba共有をGuestアクセスを許可するように設定(前述のステップ 3を参照)する必要はありません。これらのファイルへのアクセスを許可するには、次の手順に従います。

  1. インストール中にMiddle Tierを作成する際に、Windows Middle Tier Serverの共有アカウント情報を入力しておきます。これらの情報は、NSAdminユーティリティを使用してMiddle Tier上で設定することもできます(LMAUTHアクセス情報)。

  2. 同じアクセス情報がMiddle Tier Serverのローカルに保存されていることを確認します。

ファイアウォールが使用されている場合でも、Middle Tierがワークステーションの代わりにZENworksファイルにアクセスできるようになります。

制限付きユーザの定義

smb.confファイルを変更して、ファイルを変更する権限を制限するユーザを定義できます。制限付きユーザを定義するには、次の手順に従います。

  1. テキストエディタを使用して、サーバ上にある/etc/samba/smb.confを開きます。

  2. ファイルの[sharename]セクションにある次の行を検索します。

    read only = no

    sharename値には、Samba共有のアドバタイズされたネットワーク名を指定します(例: zenfiles)。

  3. この行を次のように変更します。

    read only = yes

  4. bashプロンプトが表示されたら、次のコマンドを入力します。

    write list = admin_user_name

メモ:admin_user_name値には、Samba共有でファイルに対する読み込み権のみを持つユーザ名(またはユーザ名をカンマで区切った一覧)を指定します。