Ubuntu デスクトップでスマート カード リダイレクトをサポートするには、Samba と Winbind ソリューションを使用して、デスクトップと Active Directory (AD) ドメインを統合します。

スマート カード リダイレクトで Ubuntu デスクトップと Active Directory ドメインを統合するには、次の手順に従います。

説明の中で、Active Directory ドメインの DNS 名などのネットワーク構成のエンティティをプレースホルダーで表している部分があります。次の表を参考にして、これらのプレースホルダーの値をご使用の環境に合わせて変更してください。

プレースホルダーの値 説明
dns_IP_ADDRESS DNS ネーム サーバの IP アドレス
mydomain.com Active Directory ドメインの DNS 名
MYDOMAIN.COM Active Directory ドメインの DNS 名。すべて大文字にします。
MYDOMAIN ワークグループの DNS 名または Samba サーバが含まれている NT ドメインの DNS 名。すべて大文字にします。
ads-hostname Active Directory サーバのホスト名
ads-hostname.mydomain.com Active Directory サーバの完全修飾ドメイン名 (FQDN)
mytimeserver.mycompany.com NTP タイム サーバの DNS 名
AdminUser Linux デスクトップ管理者のユーザー名

手順

  1. Ubuntu デスクトップで、/etc/hostname 構成ファイルを編集して、デスクトップのホスト名を定義します。
  2. DNS を設定します。
    1. /etc/hosts 構成ファイルに DNS サーバ名と IP アドレスを追加します。
    2. 次の例のように、DNS ネーム サーバの IP アドレスと Active Directory ドメインの DNS 名を /etc/network/interfaces 構成ファイルに追加します。
      dns-nameservers dns_IP_ADDRESS
      dns-search mydomain.com
  3. resolvconfig パッケージをインストールします。
    1. インストール コマンドを実行します。
      # apt-get install -y resolvconf
      システムにパッケージのインストールと再起動を許可します。
    2. 次の例のように、/etc/resolve.conf ファイルの DNS 設定を確認します。
      # cat /etc/resolve.conf
      …
      nameserver dns_IP_ADDRESS
      search mydomain.com
  4. ネットワークの時刻同期を設定します。
    1. ntpdate パッケージをインストールします。
      # apt-get install -y ntpdate
    2. 次の例のように、NTP サーバの情報を /etc/systemd/timesyncd.conf 構成ファイル に追加します。
      [Time]
      NTP=mytimeserver.mycompany.com
  5. NTP サービスを再起動します。
    sudo service ntpdate restart
  6. 必要な Active Directory join パッケージをインストールします。
    1. インストール コマンドを実行します。
      # apt-get install -y samba krb5-config krb5-user winbind libpam-winbind
          libnss-winbind
    2. インストール プロンプトでデフォルトの Kerberos レルムが要求されたら、Active Directory ドメインの DNS 名を大文字で入力します(例:MYDOMAIN.COM)。次に、[OK] を選択します。
  7. 次の例のように、/etc/krb5.conf 構成ファイルを編集します。
    [libdefaults]
          dns_lookup_realm = false
          ticket_lifetime = 24h
          renew_lifetime = 7d
          forwardable = true
          rdns = false
          default_realm = MYDOMAIN.COM
          default_ccache_name = KEYRING:persistent:%{uid}
    
    [realms]
          MYDOMAIN.COM = {
                kdc = ads-hostname.mydomain.com
                admin_server = ads-hostname.mydomain.com
                default_domain = ads-hostname.mydomain.com
                pkinit_anchors = FILE:/etc/pki/nssdb/certificate.pem
                pkinit_cert_match = <KU>digitalSignature
                pkinit_kdc_hostname = ads-hostname.mydomain.com
          }
    
    [domain_realm]
          .mydomain.com = MYDOMAIN.COM
          mydomain.com = MYDOMAIN.COM
  8. Kerberos 認証を確認するには、次のコマンドを実行します。
    # kinit Administrator@MYDOMAIN.COM
    
    # klist
    コマンドから次のような出力が返されることを確認します。
    Ticket cache: FILE:/tmp/krb5cc_0
    Default principal: Administrator@MYDOMAIN.COMValid starting        Expires                Service principal
    2019-05-27T17:12:03   2019-05-28T03:12:03    krbtgt/MYDOMAIN.COM@MYDOMAIN.COM
            renew until 2019-05-28T17:12:03    
    
  9. 次の例のように、/etc/samba/smb.conf 構成ファイルを編集します。
    [global]
          workgroup = MYDOMAIN  
          realm = MYDOMAIN.COM
          password server = ads-hostname.mydomain.com
          security = ads
          kerberos method = secrets only
          winbind use default domain = true
          winbind offline logon = false 
          template homedir =/home/%D/%U
          template shell = /bin/bash 
          client use spnego = yes
          client ntlmv2 auth = yes
          encrypt passwords = yes
          passdb backend = tdbsam
          winbind enum users = yes
          winbind enum groups = yes
          idmap uid = 10000-20000
          idmap gid = 10000-20000
  10. Active Directory ドメインに参加し、統合を確認します。
    1. Active Directory join コマンドを実行します。
      # net ads join -U AdminUser@mydomain.com
      # systemctl stop samba-ad-dc
      # systemctl enable smbd nmbd winbind
      # systemctl restart smbd nmbd winbind
    2. 次の例のように、/etc/nsswitch.conf 構成ファイルを変更します。
      passwd:    compat systemd winbind
      group:     compat systemd winbind
      shadow:    compat
      gshadow:   files
    3. Active Directory への参加結果を確認するには、次のコマンドを実行し、正しい出力が返されていることを確認します。
      # wbinfo -u
      
      # wbinfo -g
    4. Winbind ネーム サービスのスイッチを確認するには、次のコマンドを実行し、正しい出力が返されていることを確認します。
      # getent group|grep 'domain admins'
      
      # getent passwd|grep 'ads-hostname'
  11. すべての PAM プロファイルを有効にします。
    # pam-auth-update
    PAM の設定画面で、 [Create home directory on login(ログイン時にホーム ディレクトリを作成)] を含むすべての PAM プロファイルを選択して、 [OK] を選択します。
  12. Ubuntu 16.04 では、ログイン画面でユーザー スイッチを有効にします。次の例のように、/usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf ファイルを変更します。
    user-session=ubuntu
    greeter-show-manual-login=true

次のタスク

Ubuntu デスクトップのスマート カード リダイレクトの設定