AD に参加している Mac ユーザーのネットワーク ホームとして Windows 共有を設定する

AD に参加している Mac ユーザーのネットワーク ホームとして Windows 共有を設定する

私たちはここ数日、この問題について真剣に頭を悩ませてきました。今こそ、他の専門家にこの件の解決策を尋ねる時です。

状況と私たちがやろうとしていること:

キャンパスの Active Directory ドメインに参加している Mac コンピューターがいくつかあります (ドメイン管理者権限はありません)。これらの Mac ユーザーは AD アカウントを使用して Mac にログインします。もちろん、Kerberos を使用してキャンパスの DC で認証されます。ほとんどの場合、ネットワーク ホームにアクセスできますが、自動同期されたローカル ホーム ディレクトリにフォールバックできるように、これらのアカウントを「モバイル アカウント」として設定しようとしています。このネットワーク ホームは、私たちが管理する Windows 2012 サーバー上に存在し、SMB 経由でアクセスできます。

何らかの理由で、Mac コンピューターはネットワーク ロケーションをホームとして正しくマウントしていません。ユーザーはネットワーク ロケーションへの完全な R/W アクセス権を持っており、Mac にログインすると簡単にマウントできます。問題は、Active Directory でネットワーク ホーム ディレクトリとして指定したものをコンピューターに尊重させることにあるようです。

もう一度明確にしておくと、認証先のドメインではドメイン管理者権限はありません。ただし、ユーザー アカウントに「homeDirectory」や「unixHomeDirectory」などの特別な属性をいくつか設定することはできます。両方の属性の値を「\server.something.edu\username」に設定しましたが、技術的には「homeDirectory」属性は Windows ユーザーのみが使用する必要があります。

誰かこの件の解決策を知っていますか? Google 検索を尽くし、あらゆる場所で無数のスレッドを読みましたが、解決策は見つかりませんでした。これは、Windows と Mac の相互運用が必要なエンタープライズ環境では一般的に行われることのように思われるため、珍しいことです。

Mac が実行すべきことは、ログイン時に Active Directory から「\server.something.edu\username」文字列を取得し、それをマウントして、ユーザーのネットワーク ホームとして設定することだと思います。

また、他の人が提案しないように、SMB ネットワーク プロトコルを使用して、Mac のディレクトリ ユーティリティ プログラムで「Active Directory からの UNC パスを使用してネットワーク ホームの場所を取得する」という正しいオプションを既に設定しています。

さらに、Active Directory の「unixHomeDirectory」属性と「homeDirectory」属性に使用した文字列形式とその結果をいくつか示します。

//server.something.edu/username (ローカルにディレクトリを作成しました)

://server.something.edu:/username (見つかりませんでした。ホームを / に設定しました)

smb://server.something.edu/username (見つかりませんでした。ホームを / に設定しました)

//server.something.edu:/username (ローカルにディレクトリを作成しました)

上記のいくつかは馬鹿げているように聞こえるかもしれませんが、実際に受け入れようとしている形式が何なのかさえわからないため、ランダムな形式を試してみようと考えました。

もう 1 つの重要な質問は、「unixHomeDirectory」を使用して正しい ActiveDirectory 属性を設定しているかどうかです。MAC がそれを認識してネットワーク ホームの場所として使用できるようにするには、何か他のものを設定する必要があるのでしょうか。

Mac は OSX 10.10 (Yosemite) を実行しており、これを Windows Server 2012 にマウントしようとしています。

これについての洞察があれば、感謝します!

答え1

さて、さらに調査を重ねた結果、解決策を見つけることができました。

明らかな問題: すべてのオプションが正しく設定されている場合でも、MAC OS では GUI 経由のネットワーク ホーム同期が有効にならないようです。

バイナリ実行ファイルはここにあります: /System/Library/CoreServices/ManagedClient.app/Contents/Resources/createmobileaccount

マニュアルページはありませんが、引数/スイッチなしで実行すると、いくつかのオプションがリストされます。

この行を使用しました(実行ファイルと同じディレクトリから):./createmobileaccount -vsnユーザー名-u smb://some-server/share/username

これにより、モバイル アカウントはネットワーク共有を実際の HOME ディレクトリとして使用できるようになり、ユーザーのプロファイル項目がすべて正しく同期されます。

上記のコマンドを実行した後、すべてが期待どおりに動作していることを確認するには (または同期オプションをさらに構成するには)、システム環境設定の [ユーザーとグループ] に移動し、ユーザーをハイライト表示すると、モバイル アカウントの [設定...] ボタンが有効になっているはずです。ここで、同期するフォルダー、同期間隔などを選択できます。また、[メニュー バーにステータスを表示] オプションをオンにすると、OS によってメニュー バーにアイコンが表示され、ユーザーはローカル ストアとネットワーク ストアをすばやく同期し、同期設定にすばやくアクセスできます。

これが誰かの役に立つことを願っています。乾杯!

答え2

私の知る限り、OS XはunixHomeDirectory属性を無視します。homeDirectory属性を使用してWindowsのホームがどこにあるかを判断し、マウントします。homeDirectory属性はUNC形式でなければなりません。つまり、次のように始まる必要があります。バックスラッシュは使用せず、パスの区切り文字としてバックスラッシュを使用します。重要かどうかはわかりませんが、通常、サーバー上には 1 つの共有フォルダーがあり、さまざまなユーザーがその共有フォルダーのサブフォルダーとして自分のホームを持ちます。したがって、homeDirectory 値の標準形式は、「\server.something.edu\sharedfolder\username」のようになります。

また、OS Xクライアントが「モバイル」アカウントを使用するように設定されている場合、いつもクライアント上のローカル ホーム フォルダ (通常は /Users/username) を使用します。ネットワーク ホーム (使用可能な場合) をマウントしようとし、ネットワーク ホームとローカル ホームの間で同期するように構成できますが、直接使用されるのは常にローカルです。

関連情報