Windows の AD で フォルダーリダイレクト の設定をする

投稿者: | 2019年6月3日

フォルダーリダイレクト

説明が要る方はgoogle先生に聞いてください。わかってる方は見てないと思いますので、とりあえず、どういうものかわかってるけれど、やってみたい、という人向けです。
これを書いているのは、自分が試してみたので、このあと仕事で使うときにこのサイトを見て設定するため。
リダイレクトするというのはなんらかの事情がある場合でしょう。職場のPCで…とか、導入するシステムで提案…というケースで、民家で自分のスタンドアロンなPCでやろうとは思わないはず。その場合でも、データをファイルサーバに置くことでセキュリティ向上や可用性向上などの理由があると思います。
最近は「移動プロファイル」は使用しないといわれます。ゴミのフォルダができたり、ログオン・ログオフ(サインイン・サインアウト)に時間がかかったりするので、やらなくて済むならやらないほうがいいです。プロファイルの作りこみもWindows 10ではすべきではないものなので、可能な限りレジストリをいじって、gpeditでデフォルトプロファイルのハイブ読み込み・書き込みして、マスタからクローン展開にするみたいですね。
自分は導入するシステムでクライアントPCは「電源を切ったら(次回入れたら)前の状態に戻る」というソフトウェアを導入するため、これを利用して残したいユーザーデータを「前の状態に戻す」ソフトウェアが消さないようにするために利用します。

まず、リダイレクトされる先のフォルダを用意

リダイレクト先のフォルダを用意します。
今回はドメインコントローラーに、リダイレクト用ドライブを作ることを想定ています。ドメインコントローラーは2台構成にしますが、遠隔で配置することを想定するため、それぞれの離れた場所になる別の部門で、それぞれにリダイレクト先を持つ予定です。(リダイレクト先をDFSで共有するようなことはありません。)同じような仕事をした際にはフォルダリダイレクト用のファイルサーバを用意したこともあります。
参考として書いていますが、ある程度の規模ならばリダイレクト用ファイルサーバを持つでしょうし、もっと大きな規模になればOUごとにリダイレクトするファイルサーバを分ける例もあるでしょう。
今回はリダイレクト先はOUによってわけて2つにするけれど、専用のサーバを持たずにドメインコントローラーに共有フォルダを作ってそこにリダイレクトする小規模のシステムを想定しています。

まずは、リダイレクト専用で使うDドライブを用意して、そこにフォルダを作ります。わかりやすく userdata にしました。

これに共有をかけます。

Authenticate Users と Administrators にフルコントロールです。

フルコントロールは与えないとダメなようです。
ここで userdata$ のように隠し共有にしていない理由は、どうでもいいからです。
ここで $共有 にして隠しても、各ユーザがどのリダイレクトのフォルダがあるかの情報を調べることは容易なので、隠してもすぐに見つかってしまいます。
そして、それらのフォルダがパスワードで守られていれば、中身を見ることは容易ではないので、$共有で隠してプラスになる部分よりはエンドユーザーがメンテする場合に間違えたり忘れたりしないためには userdata のままでいいんじゃないかと思ったからです。
フォルダのアクセス権で EVERYONE ではなく Authenticate Users にしているなど多少は気を使っています。

フォルダのアクセス権も設定します。
継承は切ります。
Authenticate Users のフルコントロールがポイント。


ちなみに、実際にできるのはこんな感じに、 userdata の下に各ユーザ名でフォルダができます。(後日、ここにクォータを設定する予定。)

これはサーバなので管理者(administrator)でログイン中ですが、それでも気軽に中は見れません。ほかのユーザーが相互に見えてしまうことはないはずです。


ちなみに、ActiveDirecotoryには、テスト用としてこんな感じにユーザを作ってあります。

GPOの設定

テストのところでも書きますが、テスト環境で試してみるか、テスト用のOUとユーザーを作ってテストをしてください。
これを試行錯誤していると、ユーザの再作成やPCの再インストールが必要になることがあります。

ユーザのいるOUにGPOをリンクします
ここでは一般ユーザーは AllUsers フォルダに格納します。世間ではUsersにそのまま入れてある環境も見ますが、そうするとUsers全体にGPOをかけて、除外するユーザーを指定する等しなければならなくなるので、OUを分けるか、Usersの下に別のOUを作るようなやり方がよいと思います。(ここでは1つですが、このあと2つ目のユーザーを格納するOUを作り、別のところにリダイレクトする設定を試す予定です。)

わかりやすく Redirect という GPO を作成、リンクしました。

GPOは、リダイレクトをかけたいユーザーのいるOUに設定するので、ここではAllUsesを選んでいます。(わかりやすいように Redirect とつけて、ここにリンクしました)

設定する項目はGPOを見て選びます。

この項目は、右クリックしてプロパティを表示させることで設定します。

設定項目は「基本」で、「ルートパスの下に…」を選び、ルートパスとして先ほど設定した共有フォルダのパスを入れます。そこを起点にして自動で各ユーザー名のフォルダと、そのフォルダの中にリダイレクトされるDesktopとかFavoritesがフォルダとして自動で作成されます。

ちなみに、マシン名は FQDN とすべきと思いますが、ネット上を見るとサーバ名(NetBIOSで解決)だけが書いてある例が多いです。気になって試したのですが、FQDNでも動作しています。

設定項目はグループポリシーの管理で「設定」タブをクリックし、「表示」で展開します。設定を確認して(今回はテストなので3つのフォルダのみをリダイレクトしています)設定ができていればグループポリシーエディタを閉じます。

テストしてみる

テスト用のパソコンは明示的に gpupdate /force をしたほうが確実です。
(電源断~起動でもよいはずですが、起動直後にログインしたら変更が適用されていないことがあったため。まれにあることだから、驚きはしませんが。)

なお、テスト環境としての、OUとGPO、ユーザー、PCは本番で使っているもの以外を用意してください。これがうまくいかないで試行錯誤していると、そのユーザーでは常にプロファイルが作れなくなる(TEMPのプロファイルでログインするようになってしまう)とか、ユーザーなのかPCなのかがおかしなことになる経験があります。
実際、あれこれ試しておかしくなり、直せなかったので、ユーザーは作り直しているし、PC(仮想ゲスト)は再作成もしています。
気軽に本番環境の、利用中ユーザーとPCでテストするのは危険です。

ログインして、エクスプローラーを見ると、緑の〇みたいなものがついています。
リダイレクトしているフォルダはこれです。

C:\users\ にある自分のフォルダを見ると、リダイレクト下ものは存在していません。

サーバー側の共有フォルダのユーザー名のフォルダの中を見ると(ここまではAdministratorで見ることが可能)リダイレクしたフォルダができていることが確認できます。中身は権限を奪わないと見れません。

(このあと)
もう1台ドメインコントローラを構成して、別OUでそちらのドメインコントローラーに作る共有フォルダにリダイレクトするテストをしてみたいと思います。
続けて、これらのフォルダにファイルサーバリソースマネージャでクォータの設定。
VSSの設定もやってみようかなとか思っていたり。
クライアントPCとしての仮想ゲストも、今回は Windows 10 Enterprise ( 1809 ) を使っています。もう1台 Windows 10 Pro ( 1903 ) も準備してはあるので、そちらでもやってみます。
ユーザーのOUを移動させた場合、それらのフォルダは robocopy /B で移動できるのか、とかも…