Baza Wiedzy
debian-certsrv-web-request-1

Integracja Linux ze środowiskiem Windows

Środowiska firm są głównie wypełnione maszynami z systemem Microsoft Windows. Nie bez powodu. Większość ludzi pracuje z Windowsem w domu, więc jest przyzwyczajonych do jego wyglądu i funkcjonalności. Z drugiej strony mamy profesjonalny support od Microsoftu, więc firmy czują się bezpiecznie inwestując właśnie w te systemy. Po stronie serwerowej, można by powiedzieć, że Windows Server to rozwiązanie zawierające domyślnie wszystko czego potrzebujemy, wystarczy tylko wybrać funkcjonalności, które chcemy i je zainstalować.

Po co w takim razie zaprzątać sobie głowę innymi systemami operacyjnymi, konkretniej Linuxem? Głównie będzie to kwestia kosztów. Po pierwsze sam system operacyjny Windows potrzebuje kupna odpowiedniej licencji. W przypadku Linuxa również są komercyjne rozwiązania, dostarczające support i dopracowane aplikacje, tworzone pod biznes, ale większość systemów opartych o Linux jest darmowa. Kolejnym kosztem jest sprzęt. Jest trochę Linuxów, które są tworzone specjalnie po to by działać na starszym, słabszym sprzęcie. Oczywiście warto zainwestować w mocniejsze komputery jeśli firma będzie się rozwijać, ale jeśli obecnie nie ma na to środków, a coś działać musi, to rozwiązanie z Linuxem może okazać się zbawieniem.

Co tak właściwie z takim Linuxem możemy zrobić? Są dystrybucje desktopowe dla zwykłych użytkowników, zawierające narzędzia biurowe i przeglądarkę internetową, są też dystrybucje serwerowe zawierające narzędzia takie jak serwery HTTP, reverse-proxy, routery, DNS, poczta i wiele innych. W gruncie rzeczy nie ma wielu funkcjonalności, które są dostępne tylko i wyłącznie na Windowsie.

Ale czy w twojej firmie Linux stanie się jedynym słusznym systemem operacyjnym? Raczej nie. W związku z tym należy poruszyć parę kwestii odnośnie integracji systemów Linuxowych i Windowsowych.

Podłączanie do Active Directory

Windows Active Directory to usługa pozwalająca na przechowywanie kont użytkowników, informacji o komputerach, uwierzytelnianie i autoryzację. Mocno upraszcza zarządzanie infrastrukturą IT w firmie. Chcielibyśmy więc móc z niej skorzystać również z maszyn, na których działa Linux.

Istnieje parę rozwiązań pozwalających na podłączenie się do AD. Wszystkie z nich jest oparte na kilku usługach (np. realmd + sssd + cifs + krb5), które pozwalają na znalezienie domeny, dołączenie, korzystanie z informacji o kontach domenowych, montowanie folderów użytkowników i uwierzytelnianie. W  od podejścia możemy konfigurować te usługi ręcznie lub skorzystać z rozwiązania all-in-one (PowerBroker Open). W przypadku tego pierwszego, polecam zajrzeć na stronę dokumentacji systemu RHEL (Integracja AD ze środowiskami opartymi o Linux). Natomiast to drugie rozwiązanie dostarcza jednolinijkową instalację, którą dołączamy do domeny kolejnym poleceniem, kolejnym poleceniem wpisujemy się do rekordu DNS, a następnie możemy się już logować do systemu za pomocą credentiali domenowych. Żeby w pełni używać systemu trzeba jeszcze kilka elementów skonfigurować, ale jest to dość szybkie rozwiązanie. Podobno SuSE ma również swój system łączenia się do AD, który jest w miarę prosty.

Korzystanie i udostępnianie zasobów sieciowych

Aby korzystać z zasobów sieciowych skorzystamy ze sterownika SMB dostępnego w pakiecie cifs-utils dostępnym w większości dystrybucji. Aby zamontować zasób użyjemy polecenia


$ sudo mount -t cifs -o user=<użytkownik>,domain=<domena> //komputer/zasób <mountpoint>

Podobnie możemy dopisać odpowiednią instrukcję do pliku /etc/fstab, która pozwoli montować zasoby wraz ze startem systemu (trzeba pamiętać, by ukryć hasło w osobnym pliku, niedostępnym użytkownikowi), ale jeszcze lepszym rozwiązaniem jest montowanie zasobu jako zalogowany użytkownik. W tym celu należy przyjrzeć się rozwiązaniom typu gvfs.

Jeśli chcemy, aby nasz serwer Linuxowy udostępniał zasoby komputerom z systemem Windows to musimy wprowadzić odpowiedni wpis do pliku konfiguracyjnego /etc/samba/smb.conf. Jeśli takiego pliku nie ma, to znaczy, że brakuje nam pakietu samba. Nasz wpis będzie wyglądać mniej więcej tak:


[ShareName]
path = /path/to/share
browsable = yes
readonly = no

W przypadku użycia PowerBroker Open należy odnieść się do ich dokumentu na temat integracji z Sambą (PBIS Integration Guide).

Monitorowanie stanu komputera i wdrażanie aplikacji

Jeśli jesteśmy użytkownikami System Center Configuration Manager, to możemy za jego pomocą zarządzać również maszynami z Linuxem. Na maszynie trzeba zainstalować klienta SCCM od Microsoftu, który pobierzemy z http://go.microsoft.com/fwlink/?LinkID=525184

Klienta instalujemy w ten sposób


./install -mp <fqdn naszego sccm> -sitecode <kod> ccm-Universal-x64.tar

Zanim to zrobimy należy się jeszcze upewnić czy mamy zainstalowany libssl.

Po zainstalowaniu, trzeba trochę poczekać. Nie wiem na ile to przyśpiesza, ale można zrobić


sudo /opt/microsoft/configmgr/bin/reset_hinv.sh

Ma to na celu wysłanie do SCCM inwentaryzacji urządzenia. Na poniższych zdjęciach zobaczymy, że między innymi widać zainstalowane pakiety jak i działające usługi.

sccm resource explorer
sccm resource explorer

Możemy również deployować oprogramowanie przy użyciu paczek oprogramowania SCCM.

Jeśli natomiast wolimy pracować w PowerShellu, to warto skorzystać z PowerShella wraz z Desired State Configuration na Linuxie. Możemy zarówno konfigurować naszą maszynę przez DSC, jak i użyć PowerShell Remoting over SSH, aby zdalnie łączyć się z maszyną nawet bez środowiska graficznego. Kiedy zależy nam na środowisku graficznym, to skorzystamy z xrdp i rdesktop, aby zdalnie sterować maszynami przez Remote Desktop Protocol.

Uzyskiwanie certyfikatów z AD CS Web Enrollment

Jeśli mamy w domenie usługę Windowsową z Active Directory Certificate Services, to przy zainstalowanej roli Web Enrollment możemy uzyskać certyfikat na Linuxie. Aplikacja IIS Web Enrollment musi być odpowiednio skonfigurowana, aby pozwolić na Basic HTTP Authentication. Za pomocą przeglądarki webowej lub odpowiedniego użycia cUrl jesteśmy w stanie wysłać nasz Certificate Signing Request wygenerowany przez OpenSSL do podpisania przez CA.

Renewal request

Podziel się

Jak widać, jest miejsce na maszyny z Linuxem w środowisku, gdzie głównie działa Windows. Będzie to wymagało trochę więcej od administratorów i pewnie nie wszystko będzie od razu działało, ale jeśli Linux to właśnie to, czego twoja firma potrzebuje, warto spróbować. Im więcej ludzi będzie integrować Linuxa z Windowsem, tym więcej pojawi się w Internecie materiałów, rozwiązań i wszyscy na tym skorzystają.

Leave a comment