Firefoxをグループポリシーで管理する

公式の情報はこちら : https://www.mozilla.jp/business/faq/tech/setting-management/

上記公式サイトにあるように、ActiveDirectory環境にあるFirefoxの設定を管理する場合、

  1. クライアント側にアドオン(GPO for Firefox)をインストール
  2. サーバ側に管理用テンプレート(ADMファイル)を配置
  3. グループポリシーエディタで設定を編集

という手順が推奨されている。ただ、この方法だと

  • 既存ユーザへの自動設定は不可(ユーザにアドオンをインストールしてもらう必要がある)
  • ユーザがアドオンを無効化してしまう可能性がある
  • 最新のバージョンで追加された設定項目がない場合がある

といったデメリットがあるので、公式サイト中で「MCD用設定ファイルでの実現」という方法で行うことにした。

要件は以下の通り。

  • Firefoxアカウントを使ったパスワード等の同期をさせない
  • 強制的に最新版にアップデートさせる
  • たまにしか社内LANにアクセスしない端末でも設定を反映させたい (公式サイトの「すべてのクライアントの設定を管理者が一括して変更したい」では常時社内LANにアクセスできる端末である必要がある)

手順は以下の通り。

  • 「autoconfig.js」と「autoconfig.cfg」を公式サイトの例にしたがって記述

autoconfig.js

pref("general.config.filename", "autoconfig.cfg");
pref("general.config.vendor", "autoconfig");
pref("general.config.obscure_value", 0);

autoconfig.cfg (ここではFirefoxアカウントによる同期の不許可と、自動アップデートの有効化を設定)

lockPref("loop.enabled", false);
lockPref("services.sync.enabled", false);
lockPref("services.sync.engine.addons", false);
lockPref("services.sync.engine.bookmarks", false);
lockPref("services.sync.engine.history", false);
lockPref("services.sync.engine.passwords", false);
lockPref("services.sync.engine.prefs", false);
lockPref("services.sync.engine.tabs", false);
lockPref("app.update.enabled", true);
lockPref("app.update.auto", true);
lockPref("browser.search.update", true);
  • 「autoconfig.js」と「autoconfig.cfg」を一般ユーザが読み取り可能なフォルダに配置 (例えば「\ドメインコントローラ\SYSVOL\ドメイン名\Deployment」など)
  • グループポリシーの「コンピュータの構成」「基本設定」「Windowsの設定」「ファイル」を使い、 「autoconfig.js」と「autoconfig.cfg」を公式サイトで指定されたフォルダに配置。
  • 64bit版Windowsに32bit版Firefoxがインストールされている場合は、「項目レベルで対象化する」にチェックし、 「Processor_Architecture」に「AMD64」を設定し、「%PROGRAMFILES(X86)%\Mozilla Firefox」に配置する。 ※ 両方ある場合は2つずつ設定する

最後に実際にクライアントPCにファイルが反映され、Firefoxのabout:configで設定されていることを確認