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.