Wdrażanie Firefoxa w przedsiębiorstwie

  • Środowisko Active Directory
  • Środowiska mieszane lub bez Active Directory
  • Aktualizacja

Instalowanie przeglądarki Mozilla Firefox na pojedynczym komputerze jest
banalne. Pobiera się instalator, klik i jest. Zastanawialiście się
jednak jak to jest w domenie Active Directory (AD) lub w środowiskach
mieszanych, gdzie część komputerów jest w domenie, a część nie ? Temat
mnie zainteresował, więc postanowiłem poświecić trochę czasu ( którego
nie mam za wiele) i to sprawdzić.

Środowisko Active Directory

Na samym początku pobieramy z oficjalnego GitHuba Mozilli
szablony administracyjne. Rozpakowujemy je i wgrywamy na serwerze
Active Directory do folderu %Systemroot%\PolicyDefinitions ( Rys.1)

Otwieramy przystawkę MMC z „Zarządzaniem zasadami grup” i w
Konfiguracja komputera\Szablony administracyjne\ powinna nam się pojawić
zakładka Mozilla > Firefox (Rys.2)
Warto dodać , że spora część zasad działa dopiero od wersji 60 Firefox, a
niektóre nawet od wyższych. Jest to dosyć dobrze udokumentowane.

Kiedy już skonfigurowaliśmy odpowiednio zasady grup, pobieramy z oficjalnego FTP
odpowiednią wersję przeglądarki w formie pliku MSI. W konfiguracji
komputera znajdujemy ustawienia oprogramowania > Instalacja
oprogramowania klikamy prawym przyciskiem myszy i klikamy nowy >
pakiet i dodajemy plik MSI ( Rys. 3)

Jak widać instalacja i konfiguracja Firefox przez Active Directory
nie jest problemem. Cała nasza praca ogranicza się do wskazania pliku
MSI i skonfigurowanie interesujących nas zasad.

Środowiska mieszane lub bez Active Directory

W środowiskach mieszanych, gdzie część komputerów jest poza
środowiskiem domenowym lub w środowiskach gdzie nie ma AD, naszym
zadaniem będzie napisanie krótkiego skryptu. Z pomocą przyjdzie nam tu PSEXEC od Microsoft :

C:\Pstool\PsExec.exe" @C:\remote_computers.txt -u USER -p HASŁO msiexec.exe /i "\\udostepniony_zasob\Firefox.msi" /q

W pliku remote_computers.txt zapisujemy komputery zdalne, na których ma być zainstalowany Firefox w postaci :

Nazwa_komputera1
Nazwa_komputera2

Aktualizacja ( środowiska AD, mieszane i bez AD)

Zarówno w środowisku Active Directory jak i w środowiskach mieszanych
ważne jest utrzymanie jednakowej wersji przeglądarki na wszystkich
komputerach. Czasami nawet nie musi być najnowsza, a z powodu innych
współistniejących aplikacji, musi być to konkretna wersja.

Z pomocą może nam przyjść artykuł opisujący przykładowy sposób aktualizacji przeglądarki przez plik update.xml oraz pliki MAR.

Schemat działania poniżej ( Rys.4)

Schemat nie wygląda na skomplikowany, jednak ze względu na skąpość
dokumentacji jest problematyczny. Zacznijmy jednak od początku.
Pierwszym krokiem będzie przygotowanie pliku update.xml

Ma on mniej więcej taką strukturę :

<span class="php"><span class="php"><span class="php"><?xml version="1.0" encoding="UTF-8"?></span></span></span>
<updates>
<update type="minor" appVersion="" buildID="" serviceURL="">
<patch type="partial" URL="" hashFunction="" hashValue="" size=""/>
</updates>

Pisząc „mniej więcej” , piszę to z pełną świadomością, ze względu na
mnóstwo czasu poświęconego, aby ustalić jak ma ten plik finalnie
wyglądać. Różne wpisy na Mozilla Wiki dają różne odpowiedzi, jednak plik przedstawiony powyżej będzie działał

Opiszę poniżej parametry z

  • Znacznik updates jest korzeniem dokumentu.
  • update type=”minor”
    – Minor czyli dotyczących „małych” aktualizacji czyli w przypadku
    Firefox z kanału release np. z wersji 7x do wersji 7x+1, czy z kanału
    ESR 68.x do wersji 68.x+1 . Wpisujemy „major” w przypadku „dużych”
    aktualizacji czyli np. 6x do 7x , czy w kanale ESR 52.x.x do 60
  • appVersion=”” – Wpisujemy numer wersji do której chcemy aktualizować .
  • buildID=”” – Build wersji którą chcemy zainstalować . Znajdziemy go w about:config
  • ServiceURL=”” – Wpisujemy tutaj cały link do pliku update.xml
  • patch type=”partial” . Patch type może mieć wartość „partial” lub „complete” w zależności czy aktualizacja jest „minor” czy „major” . Tutaj wpisujemy cały adres do
    plików znajdujących się na FTP na naszym dedykowanym serwerze lub
    serwerze Mozilli np.
    https://ftp.mozilla.org/pub/firefox/releases/70.0/update/win32/pl/firefox-69.0-70.0.partial.mar ( Rys.5)
  • hashFunction=”” –SHA256 lub SHA512
  • hashValue=”” – z konkretnego pliku wybieramy odpowiednią wartość (Rys. 6)

  • size=”” – Wpisujemy rozmiar pliku MAR w bajtach

Mając już skonfigurowany poprawnie plik update.xml, a w nich ścieżkę do plików MAR z aktualizacjami, komputerowi brakuje jeszcze informacji gdzie go ma szukać.

W Active Directory konfigurujemy to w polisach Firefoxa, a dokładniej : Custom Update URL (Rys. 7)

Natomiast w środowiskach gdzie tej domeny nie ma, musimy wejść w About:config i ustawić odpowiednią wartość parametru app.update.url

Na koniec jako ciekawostkę dodam, że jeden plik update.xml
poprzez odpowiednią konstrukcję może nam aktualizować różne wersje
przeglądarki. Jest to przydatne w środowiskach gdzie mamy różne
architektury sprzętu lub różne wersje językowe.