ウェブサイト検索

Samba および Winbind を使用して Ubuntu 16.04 をドメイン メンバーとして AD に統合する - パート 8


このチュートリアルでは、ファイルやディレクトリのローカルACLを使用してADアカウントを認証するために、Ubuntu マシンをSamba4 Active Directoryドメインに参加させる方法について説明します。ドメイン コントローラー ユーザーのボリューム共有を作成およびマッピングします (ファイル サーバーとして機能します)。

要件:

  1. Ubuntu 上で Samba4 を使用して Active Directory インフラストラクチャを作成する

ステップ 1: Ubuntu を Samba4 AD に参加させるための初期構成

1. Ubuntu ホストを Active Directory DC に参加させる前に、一部のサービスがローカル マシンで適切に設定されていることを確認する必要があります。

マシンの重要な要素はホスト名を表します。ドメインに参加する前に、hostnamectl コマンドを使用するか、/etc/hostname ファイルを手動で編集して、適切なマシン名を設定します。


hostnamectl set-hostname your_machine_short_name
cat /etc/hostname
hostnamectl

2. 次のステップで、マシンのネットワーク設定を開いて、適切な IP 構成を使用して手動で編集します。ここで最も重要な設定は、ドメイン コントローラーをポイントする DNS IP アドレスです。

/etc/network/interfaces ファイルを編集し、以下のスクリーンショットに示すように、適切な AD IP アドレスとドメイン名を含む dns-nameservers ステートメントを追加します。

また、同じ DNS IP アドレスとドメイン名が /etc/resolv.conf ファイルに追加されていることを確認してください。

上のスクリーンショットでは、192.168.1.254192.168.1.253Samba4 AD DCTecmint.lan< の IP アドレスです。 は、レルムに統合されているすべてのマシンによってクエリされる AD ドメインの名前を表します。

3. 新しいネットワーク構成を適用するために、ネットワーク サービスを再起動するか、マシンを再起動します。 DNS 解決が期待どおりに機能しているかどうかをテストするには、ドメイン名に対して ping コマンドを発行します。

AD DC は FQDN で再生する必要があります。 LAN ホストに IP 設定を自動的に割り当てるようにネットワーク内の DHCP サーバーを構成している場合は、必ず AD DC IP アドレスを DHCP サーバーの DNS 構成に追加してください。


systemctl restart networking.service
ping -c2 your_domain_name

4. 必要な最後の重要な構成は、時刻同期によって表されます。次のコマンドを実行して、ntpdate パッケージをインストールし、AD DC との時間をクエリして同期します。


sudo apt-get install ntpdate
sudo ntpdate -q your_domain_name
sudo ntpdate your_domain_name

5. 次のステップでは、以下のコマンドを実行して、ドメインに完全に統合するために Ubuntu マシンに必要なソフトウェアをインストールします。


sudo apt-get install samba krb5-config krb5-user winbind libpam-winbind libnss-winbind

Kerberos パッケージのインストール中に、デフォルトのレルムの名前を入力するように求められます。ドメイン名を大文字で入力し、Enter キーを押してインストールを続行します。

6. すべてのパッケージのインストールが完了したら、AD 管理アカウントに対して Kerberos 認証をテストし、以下のコマンドを実行してチケットを一覧表示します。


kinit ad_admin_user
klist

ステップ 2: Ubuntu を Samba4 AD DC に参加させる

7. Ubuntu マシンを Samba4 Active Directory ドメインに統合する最初のステップは、Samba 設定ファイルを編集することです。

次のコマンドを実行して、クリーンな構成で開始するために、パッケージ マネージャーによって提供される Samba のデフォルト構成ファイルをバックアップします。


mv /etc/samba/smb.conf /etc/samba/smb.conf.initial
nano /etc/samba/smb.conf 

新しい Samba 構成ファイルに以下の行を追加します。


[global]
        workgroup = TECMINT
        realm = TECMINT.LAN
        netbios name = ubuntu
        security = ADS
        dns forwarder = 192.168.1.1

idmap config * : backend = tdb        
idmap config *:range = 50000-1000000
	
   template homedir = /home/%D/%U
   template shell = /bin/bash
   winbind use default domain = true
   winbind offline logon = false
   winbind nss info = rfc2307
   winbind enum users = yes
   winbind enum groups = yes

  vfs objects = acl_xattr
  map acl inherit = Yes
  store dos attributes = Yes

ワークグループレルムネットビオス名、およびDNS フォワーダー変数を独自のカスタム設定に置き換えます。

winbind use デフォルト ドメイン パラメータにより、winbind サービスは修飾されていない AD ユーザー名を AD のユーザーとして扱います。 AD アカウントと重複するローカル システム アカウント名がある場合は、このパラメータを省略する必要があります。

8. ここで、以下のコマンドを発行して、すべての samba デーモンを再起動し、不要なサービスを停止して削除し、システム全体で samba サービスを有効にする必要があります。


sudo systemctl restart smbd nmbd winbind
sudo systemctl stop samba-ad-dc
sudo systemctl enable smbd nmbd winbind

9. 次のコマンドを発行して、Ubuntu マシンを Samba4 AD DC に参加させます。レルムへのバインドが期待どおりに機能するようにするには、管理者権限を持つ AD DC アカウントの名前を使用します。


sudo net ads join -U ad_admin_user

10. RSAT ツールがインストールされている Windows マシンから、AD UC を開き、コンピュータ コンテナに移動できます。ここに、Ubuntu に参加したマシンがリストされるはずです。

ステップ 3: AD アカウント認証を構成する

11. ローカル マシンで AD アカウントの認証を実行するには、ローカル マシン上のいくつかのサービスとファイルを変更する必要があります。

まず、ネーム サービス スイッチ (NSS) 構成ファイルを開いて編集します。


sudo nano /etc/nsswitch.conf

次に、以下の抜粋に示すように、passwd 行と group 行に winbind 値を追加します。


passwd:         compat winbind
group:          compat winbind

12. Ubuntu マシンがレルムに正常に統合されたかどうかをテストするには、wbinfo コマンドを実行してドメイン アカウントとグループを一覧表示します。


wbinfo -u
wbinfo -g

13. また、getent コマンドを発行して Winbind nsswitch モジュールを確認し、結果を grep などのフィルタにパイプして出力を絞り込みます。特定のドメイン ユーザーまたはグループ。


sudo getent passwd| grep your_domain_user
sudo getent group|grep 'domain admins'

14. ドメイン アカウントを使用して Ubuntu マシンで認証するには、root 権限で pam-auth-update コマンドを実行し、winbind サービスに必要なすべてのエントリを追加する必要があります。最初のログイン時に各ドメインアカウントのホームディレクトリを自動的に作成します。

[space] キーを押してすべてのエントリを確認し、ok をクリックして設定を適用します。


sudo pam-auth-update

15. Debian システムでは、認証されたドメイン ユーザーのホームを自動的に作成するために、/etc/pam.d/common-account ファイルと次の行を手動で編集する必要があります。


session    required    pam_mkhomedir.so    skel=/etc/skel/    umask=0022

16. Active Directory ユーザーが Linux のコマンド ラインからパスワードを変更できるようにするには、/etc/pam.d/common-password を開きます。 > ファイルを編集し、パスワード行から use_authtok ステートメントを削除すると、最終的には以下の抜粋のようになります。


password       [success=1 default=ignore]      pam_winbind.so try_first_pass

17. Samba4 AD アカウントを使用して Ubuntu ホストで認証するには、su – コマンドの後にドメイン ユーザー名パラメーターを使用します。 id コマンドを実行して、AD アカウントに関する追加情報を取得します。


su - your_ad_user

pwd コマンドを使用してドメイン ユーザーの現在のディレクトリを確認し、パスワードを変更する場合は passwd コマンドを使用します。

18. Ubuntu マシン上で root 権限を持つドメイン アカウントを使用するには、以下のコマンドを実行して、AD ユーザー名を sudo システム グループに追加する必要があります。


sudo usermod -aG sudo your_domain_user

ドメイン アカウントで Ubuntu にログインし、apt-get update コマンドを実行してシステムを更新し、ドメイン ユーザーに root 権限があるかどうかを確認します。

19. ドメイン グループに root 権限を追加するには、visudo コマンドを使用して /etc/sudoers ファイルを編集し、図に示すように次の行を追加します。以下のスクリーンショットにあります。


%YOUR_DOMAIN\\your_domain\  group       		 ALL=(ALL:ALL) ALL

ドメイン グループ名に含まれるスペースをエスケープするか、最初のバックスラッシュをエスケープするには、バックスラッシュを使用します。上の例では、TECMINT レルムのドメイン グループの名前は「domain admins 」です。

前にあるパーセント記号 (%) 記号は、ユーザー名ではなくグループを参照していることを示しています。

20. Ubuntu のグラフィカル バージョンを実行していて、ドメイン ユーザーでシステムにログインする場合は、/usr/share/lightdm を編集して LightDM ディスプレイ マネージャーを変更する必要があります。 /lightdm.conf.d/50-ubuntu.conf ファイルに次の行を追加し、マシンを再起動して変更を反映します。


greeter-show-manual-login=true
greeter-hide-users=true

これで、your_domain_username または your_domain_username@your_domain.tld または your_domain\your_domain_username の形式を使用して、ドメイン アカウントで Ubuntu Desktop にログインできるようになります。 。