大学の研究室なら当然ながら&color(teal){Mac};[Pro|Mini|Book[Pro|Air]]がある。
これらMacOSXマシンを&color(darkorchid){''ActiveDirectory''};に参加させて、ユーザアカウントの統一管理を行ってみる

手元にあるのはMacOSX 10.7.5(Lion)である。名前とかIPは下記のようにした
|BGCOLOR(YELLOW):コンピュータ名|BGCOLOR(YELLOW):IPアドレス|BGCOLOR(YELLOW):DNS上でのホスト名|BGCOLOR(YELLOW):参照DNSサーバ|BGCOLOR(YELLOW):検索ドメイン|
|lion|192.168.0.64|lion.sybyl.local|192.168.0.3|sybyl.local|
&color(red){*};&size(10){コンピュータ名は、「システム環境設定」->「共有」の「コンピュータ名」で定義};
&color(red){*};&size(10){IPは、「システム環境設定」->「ネットワーク」から手入力で定義};
&color(red){*};&size(10){DNSと検索ドメインは、「システム環境設定」->「ネットワーク」->「詳細...」->「DNS」タブで定義};

***ドメイン参加 [#q0fa0ccc]
まずはMacOSXマシンを&color(darkorchid){''ActiveDirectory''};に参加させる
「システム環境設定」->「ユーザとグループ」を開く
&ref(2015y03m22d_203257957.png,nolink);
開いた「ユーザとグループ」画面で左下の鍵をクリックして、管理者によるパスワード認証されると
編集可能な状態になる。ここで「ネットワークアカウントサーバ」欄の「接続...」をクリックする
&ref(2015y03m22d_204613459.png,nolink);
すると接続するサーバを問われ、ここの&color(darkorchid){''ActiveDirectory''};のドメイン「&color(deeppink){sybyl.local};」を入力する。
入力と同時に、この&color(darkorchid){''ドメインコントローラー''};への接続認証が求められる。
&ref(2016y01m23d_090702093.png,nolink);
「サーバ」にはドメイン名「sybyl.local」
「AD管理ユーザ」には「administrator」
「AD管理パスワード」には provision時のパスワードを入力する
&color(red){*};&size(10){クライアントコンピュータIDは、&color(darkorchid){''ドメイン''};に参加させたいこのMacである};
所定項目の入力が終わったら「OK」ボタンをクリックする

&ref(2015y03m22d_205820784.png,nolink);
参照先として「SYBYL」ドメインが追加された

windowsのリモートサーバ管理ツールの「ActiveDirectoryユーザーとコンピューター」からマシン「lion」の登録が確認できる
&ref(2016y01m16d_005709072.png,nolink);

加え、マシン「lion」のプロパティーを開いて「オペレーティングシステム」タブを開くと
&ref(2016y01m16d_005832529.png,nolink);
となっている。

***uidNumber/gidNumber [#jdaf0964]
MacOSXマシンを&color(darkorchid){''ドメインコントローラー''};に参加させたが、実際の所、この状態では
uid/gidらは正しく引いてくれていない。

#code(nonumber){{
lion:~ supervisor$ id illya
uid=1055295333(illya) gid=1246082528(SYBYL\Domain Users) groups=1246082528(SYBYL\Domain Users),
403(com.apple.sharepoint.group.2),12(everyone),62(netaccounts),1214755721(SYBYL\fate)

lion:~ supervisor$
}}
原因はuid/gidのマッピングが正しくないため。

それを調整するには再度「システム環境設定」->「ユーザとグループ」を開き、下記「編集...」ボタンをクリックする
&ref(2015y03m24d_005144478.png,nolink);





表示された画面から「ディレクトリユーティリティーを開く...」ボタンをクリックする。
&ref(2015y03m24d_005946839.png,nolink);

表示された「ディレクトリユーティリティー」画面で、
名前「Active Directory」を選択して「鉛筆アイコン」をクリックする
&ref(2015y03m24d_010313621.png,nolink);

既に参加しているドメイン情報の個所に「詳細オプションの表示」を展開して、
&ref(2016y01m16d_014612283.png,nolink);


「ユーザ環境」タブは既定の「ローカル・ホームディレクトリを起動ディスクに設定」「ActiveDirectoryからUNCパスを使用してネットワークホームを設定」(使用するプロトコル:smb)「デフォルトのユーザシェル(/bin/bash)」を有効にする
&ref(2016y01m16d_014801828.png,nolink);


そして、「マッピング」タブでは
UIDは「uidNumber」、ユーザGIDを「gidNumber」、グループGIDを「gidNumber」にマッピングし直す。
&ref(2016y01m16d_015001540.png,nolink);

3番目の「管理」タブは規定の「フォレスト内の任意のドメインから認証」を有効にする
&ref(2016y01m16d_015119061.png,nolink);

ここで「OK」ボタンを押して完了となる。
先ほどのuidとgidは、
#code(nonumber){{
lion:~ supervisor$ id illya
uid=1002(illya) gid=2000(SYBYL\fate) groups=2000(SYBYL\fate),403(com.apple.sharepoint.group.2),12(everyone),62(netaccounts)

lion:~ supervisor$ 
}}
と&color(darkorchid){''ドメインコントローラー''};で定義したuid/gidが引き継げられた。

***ログインとホームディレクトリ [#if0cfbcf]


実際にログインを試みてみる。
ログイン画面が変更され
&ref(2015y03m24d_013012589.png,nolink);
とされ、「その他のユーザ...」を選び&color(darkorchid){''ドメインコントローラー''};に存在するユーザでログイン操作してみる。
&ref(2015y03m24d_013031164.png,nolink);
ログイン後、ターミナルを立ち上げて、調べると
#code(nonumber){{
Last login: Sat Jan 16 02:30:40 on console
lion:~ illya$ pwd
/Users/illya
lion:~ illya$
lion:~ illya$ df -h
Filesystem       Size   Used  Avail Capacity  Mounted on
/dev/disk0s2     39Gi   10Gi   29Gi    26%    /
devfs           183Ki  183Ki    0Bi   100%    /dev
map -hosts        0Bi    0Bi    0Bi   100%    /net
map auto_home     0Bi    0Bi    0Bi   100%    /home
map -fstab        0Bi    0Bi    0Bi   100%    /Network/Servers
//illya@c/home   53Gi   19Gi   34Gi    37%    /Volumes/home
lion:~ illya$
lion:~ illya$ mount
/dev/disk0s2 on / (hfs, local, journaled)
devfs on /dev (devfs, local, nobrowse)
map -hosts on /net (autofs, nosuid, automounted, nobrowse)
map auto_home on /home (autofs, automounted, nobrowse)
map -fstab on /Network/Servers (autofs, automounted, nobrowse)
//illya@c/home on /Volumes/home (smbfs, nodev, nosuid, mounted by illya)
lion:~ illya$
}}

とホームフォルダは一応mountされているが(/Volumes/home)、そこがホームディレクトリではなく、&color(magenta){/Users/<ユーザ名>};となっている。
ホームフォルダとは、sambaで規定した場所で「ActiveDirectoryユーザとコンピュータ」で定義される。
&ref(2016y01m16d_110223525.png,nolink);
&color(red){*};&size(10){sambaの[homes]機能を使ってないので \\c\home\<ユーザ名> となってます};

&color(magenta){/Users/<ユーザ名>};をホームディレクトリにせず、Linuxと同様に共有された&color(green){/home/<ユーザ名>};をホームディレクトリにするにはsambaで定義したホームフォルダを継承させるようにする。MacOSX側の設定の際に「ローカル・ホームディレクトリを起動ディスクに設定」を無効にするとそれができる。
&ref(2016y01m16d_111113349.png,nolink);
そうすると、
#code(nonumber){{
Last login: Sat Jan 16 02:49:27 on console
lion:~ illya$ pwd
/home/illya
lion:~ illya$ df
Filesystem           512-blocks     Used Available Capacity  Mounted on
/dev/disk0s2           82206864 21789376  59905488    27%    /
devfs                       363      363         0   100%    /dev
map -hosts                    0        0         0   100%    /net
map auto_home                 0        0         0   100%    /home
map -fstab                    0        0         0   100%    /Network/Servers
//illya@c/home/illya  110645248 40103200  70542048    37%    /home/illya
lion:~ illya$
lion:~ illya$ mount
/dev/disk0s2 on / (hfs, local, journaled)
devfs on /dev (devfs, local, nobrowse)
map -hosts on /net (autofs, nosuid, automounted, nobrowse)
map auto_home on /home (autofs, automounted, nobrowse)
map -fstab on /Network/Servers (autofs, automounted, nobrowse)
//illya@c/home/illya on /home/illya (smbfs, nodev, nosuid, automounted, nobrowse, mounted by illya)
lion:~ illya$
}}
となる。
これでアカウントもホームディレクトリ(/home/<ユーザ名>)もMacOSX側と共有できるようである。

ただし、shellが事前指定なので要注意。

***MacOSXからAcitiveDirectoryのユーザ情報を入手 [#w5a3e49e]
Linuxなら単に''getent passwd''ですむのだが、MacOSXでは違って、
ローカルマシンのアカウント情報は
#code(nonumber){{
lion:~ supervisor$ dscl . -ls /Users
}}
で行う。AcitiveDirectoryからのユーザは
#code(nonumber){{
lion:~ supervisor$ dscl "/Active Directory/SYBYL/All Domains" -ls /Users
administrator
guest
illya
krbtgt
lion:~ supervisor$
}}
で得られる。そしてユーザの詳細は
#code(nonumber){{
lion:~ supervisor$ dscl "/Active Directory/SYBYL/All Domains" -read /Users/illya
 :
dsAttrTypeNative:cn: illya
 :
AltSecurityIdentities: Kerberos:illya@sybyl.local
AppleMetaNodeLocation:
 /Active Directory/SYBYL/sybyl.local
AppleMetaRecordName: CN=illya,CN=Users,DC=sybyl,DC=local
AuthenticationAuthority: ;Kerberosv5;;illya@SYBYL.LOCAL;SYBYL.LOCAL; ;NetLogon;illya;SYBYL
Comment: 天の杯・ホムンクルス
EMailAddress: xxxxx@xxx.xxxx.xx
FirstName: Illyasviel
 :
NFSHomeDirectory: /Users/illya
OriginalHomeDirectory: <home_dir><url>smb://c/home/illya</url><path>/</path></home_dir>
 :
SMBHome: \\c\home\illya
SMBHomeDrive: z
 :
lion:~ supervisor$
}}
と得られる。

トップ   編集 添付 複製 名前変更     ヘルプ   最終更新のRSS