Active Directory i jego najlepsze odpowiedniki w systemach Unix
W nowoczesnej sieci często organizowane są setki kont użytkowników, działają dziesiątki usług i usług. Aby duża liczba punktów zarządzania nie powodowała niezgodności potrzebna jest jedna baza kont i aplikacji. W ostatnie czasy pojawiło się wiele ciekawych projektów open source, które rozszerzają standardowe funkcje LDAP i są w stanie zastąpić Active Directory.
389 Serwer katalogów
- Witryna projektu: directory.fedoraproject.org .
- Licencja: GNU GPL.
- System operacyjny: Fedora/Red Hat/CentOS, będzie działać na systemach Linux (Debian, Ubuntu, Gentoo), Solaris, HP/UX 11, Irix, AIX, Windows i OSF/1.
Firmowy serwer katalogowy stworzony przez społeczność i sponsorowany przez firmę Red Hat. Opierał się na Netscape Directory Server, rozwijanym od 1996 roku. Otrzymał nową nazwę - Fedora Directory Server - po tym, jak Red Hat nabył do niego prawa w 2005 roku. W 2009 roku projekt ponownie zmienił nazwę na 389 Directory Server (389 - po numerze portu usługi LDAP). Powód jest prosty: FDS był nierozerwalnie związany z Fedorą, co zdaniem twórców utrudniało rozwój, w szczególności integrację z innymi dystrybucjami. W oparciu o 389DS firma Red Hat wydała komercyjną wersję Red Hat Directory Server (RHDS) z całodobową pomocą techniczną. Funkcje 389DS obejmują pełną obsługę protokołu LDAPv3, uwierzytelnianie SSL/TLS i SASL, synchronizację danych (użytkownik, grupa, hasło) z Active Directory (pod warunkiem zainstalowania płyty CD Win2k3/2k8 Komponent Windows Synchronizacja), kontrola dostępu aż do poszczególnych atrybutów (nazwa, grupa, adres IP itp.) Biblioteka NSS z projektu Mozilla jest używana jako silnik kryptograficzny. Strukturalnie 389DS składa się z serwera katalogowego (Core Directory Server, CDS) i serwera administracyjnego (Admin Server). Zadaniem tego ostatniego jest zarządzanie wszystkimi dostępnymi CDS, dla których oferowana jest konsola graficzna (389-konsola) oraz narzędzia. wiersz poleceń. W systemie Linux konsola jest instalowana automatycznie (napisana w Javie). Aby zarządzać z poziomu Win2k3/2k8, pobierz pakiet konsoli Windows ze strony internetowej projektu.
Deweloperzy zwracają uwagę na wysoką wydajność i skalowalność 389DS. W jednej sieci mogą pracować do czterech równych serwerów głównych z automatycznym rozwiązywaniem konfliktów, równoważeniem obciążenia i redundancją serwerów. Obsługiwane są serwery działające w trybie tylko do odczytu, pewne odpowiedniki kontrolera domeny tylko do odczytu w Active Directory Win2k8.
Obecnie projekt oficjalnie oferuje repozytorium i pakiety dla RHEL/Fedory (odpowiednie również dla CentOS). Można go również zainstalować na innych systemach Linux (Debian, Ubuntu, Gentoo), Solaris, HP/UX 11. Niektóre wersje obsługują również Windows, Irix, AIX i OSF/1. Jednak wdrożenie i późniejsze wsparcie w „nieoficjalnych” systemach wymaga pewnego przygotowania ze strony administratora.
Komponenty 389DS są wydawane na licencji GNU GPL, ale serwer bazuje na kilku produktach z innymi licencjami (MPL/LGPL/GPL/X). Warto również zauważyć, że 389DS jest część integralna FreeIPA to scentralizowane rozwiązanie do zarządzania informacjami o użytkownikach i politykach oraz do audytu. Ten produkt zostanie omówiony poniżej.
FusionDirectory
Ponieważ dostęp do kod źródłowy GOsa dla tych, którzy nie są spokrewnieni z Gonicus GmbH była trudna, twórcy postanowili stworzyć bardziej otwarty i w pełni wspierany przez społeczność widelec, aby przyciągnąć zewnętrznych specjalistów, a także zapewnić warunki do pisania wtyczek pod duża ilość Aplikacje. Nowy projekt nazywa się FusionDirectory. Deweloperzy obiecali nie tylko stworzenie najbardziej „potężnego i wszechstronnego” rozwiązania do zarządzania z wygodniejszymi narzędziami programistycznymi, ale także ulepszenie dokumentacji. W październiku 2011 wydano FusionDirectory 1.0.2, ale ponieważ prace nad projektem rozpoczęły się całkiem niedawno, nie ma jeszcze żadnych specjalnych różnic funkcjonalnych od GOsa. Dokumentacja składa się zasadniczo z kilku podręczników, ale biorąc pod uwagę powiązania z GOsa, dokumentacja projektu nadrzędnego może być wykorzystana na etapie zapoznawania się z FusionDirectory. Lista obsługiwanych dystrybucji jest jasno zdefiniowana (Debian, CentOS 5/RHEL 5, Fedora 14/15, openSUSE 11.3/11.4, SLES 11), a co najważniejsze, dla każdej z nich utworzono repozytorium, zapewniające łatwą instalację .
Kolejna różnica dotyczy oficjalnie obsługiwanych serwerów internetowych. Deweloperzy oferują gotowe pliki konfiguracyjne dla Apache2 i Lighttpd instalacja na nginx jest również możliwa, ale będziesz musiał sam stworzyć ustawienia.
Serwer katalogowy Mandrivy
- Strona projektu: mds.mandriva.org.
- Licencja: GNU GPL.
- Dystrybucje: Mandriva, Debian/Ubuntu, CentOS/RHEL/Fedora, openSUSE, obraz VMware.
Mandriva Directory Server (MDS) to łatwe w użyciu rozwiązanie, które umożliwia zarządzanie kontami użytkowników i grup, dostępem i usługami sieciowymi za pomocą interfejsu wizualnego. W rzeczywistości jest to wygodny dodatek do LDAP - OpenLDAP, chociaż możliwa jest również wspólna praca z 389DS. Funkcjonalnie może działać jako PDC (poziom Windows NT4), serwer LDAP z synchronizacją kont i haseł, całkowicie zastąpić Active Directory lub zintegrować się z nim. Klientami systemami operacyjnymi mogą być Windows, Linux i Mac OS X. Interfejs umożliwia konfigurowanie kont i list ACL w Sambie, zarządzanie udostępnianiem, drukowaniem opartym na CUPS, dostarczaniem poczty (Postfix), konfiguracją usług Squid i DNS/DHCP oraz administrowaniem Konta GLPI. Pakiet zawiera Kerberos i może być używany do pojedynczego uwierzytelniania (SSO). Kontrola dostępu do obiektów jest ustalana według indywidualnych atrybutów: użytkownika, grupy, adresu IP, czasu itp.
Szczególnie cieszy fakt, że problemy, które nękały Mandrivę, nie wpłynęły na MDS, a produkt stale się rozwija. W najnowsze wersje funkcje te zostały dodane do zarządzania kontami systemu Zarafa, który zapewnia współpracę, scentralizowane przechowywanie kluczy publicznych OpenSSH, audyt, zasady haseł i wiele więcej. Architektura modułowa pozwala na dodanie pożądanej funkcjonalności lub usunięcie niepotrzebnych z interfejsu. MDS jest wysoce skalowalny, obsługuje kilka tysięcy rekordów na serwer.
Moduł agenta MMC przeznaczony jest bezpośrednio do zarządzania usługami napisanymi w Pythonie i wykorzystujący XML-RPC do wymiany danych. Agenty są konfigurowane za pomocą bardzo łatwego w użyciu interfejsu sieciowego MMC (Mandriva Management Console). Administrator może wybrać jeden z dwóch trybów wyświetlania: Normalny lub Ekspert.
W przeciwieństwie do 389DS, pakiety są oferowane nie tylko dla „natywnej” dystrybucji: istnieje własne repozytorium Debiana, kompilacje dla CentOS / RHEL / Fedora i openSUSE, a także gotowy obraz VMware. W ten sposób, część serwerowa MDS można zainstalować stosunkowo szybko i bez problemów na dowolnym systemie *nix. Produkt jest dołączony do Mandriva Enterprise Server. MDS jest jednak najłatwiejszym do zainstalowania i skonfigurowania rozwiązaniem opisanym w naszej recenzji samodzielny montaż w systemach innych niż MES nadal wymaga pewnych umiejętności LDAP. Dokumentacja projektu jest bardzo szczegółowa i pozwala zrozumieć wszystkie jego niuanse.
BezpłatneIPA
- Strona projektu: freeipa.org.
- Licencja: GNU GPL.
- Dystrybucje: serwer - Fedora/CentOS, klient - Linux, AIX, HP-UX, Solaris, openSUSE.
Celem projektu FreeIPA (Free Identity, Policy and Audit) jest stworzenie środowiska dla systemów Linux, które jest alternatywą dla Active Directory i pozwala na centralne zarządzanie uwierzytelnianiem użytkowników, ustawianie polityk dostępu i audytu. W rzeczywistości FreeIPA jest symbiozą kilku projektów open source, takich jak dystrybucja Fedora, 389DS, MIT Kerberos, NTP i BIND. Projekt ten, opracowany przy wsparciu finansowym firmy Red Hat, jest podstawą produktu IPA wykorzystywanego w dystrybucji komercyjnej, który firma Red Hat wprowadziła do publicznej wiadomości latem 2008 roku.
OSTRZEŻENIE
FreeIPA do wersji 2.1.3 włącznie (CVE-2011-3636) zawiera lukę w zabezpieczeniach CSRF. Aby to naprawić, zaktualizuj do wersji 2.1.4.
Kod FreeIPA pojawił się po raz pierwszy jako część Fedory 9 (maj 2008), ale normalna synchronizacja z Active Directory nie była jeszcze wtedy zaimplementowana. Początkowo klienci mogli łączyć się ręcznie, ale było to niewygodne. W październiku 2009 rozpoczęto prace nad nową gałęzią 2.0. Jego ostateczna wersja została zaprezentowana pod koniec marca 2011 roku. Dzień, w którym zapowiedziano premierę, został zapamiętany przez wielu Użytkownicy Linuksa jako „Dzień testowy Fedory 15”, dedykowany specjalnie do testowania FreeIPA2. Obecnie realizowane:
- scentralizowane zarządzanie kontami użytkowników, grupami, komputerami i usługami;
- kontrolować dostęp do aplikacji, ustawiać polityki haseł i ustawienia Kerberos, zarządzać regułami SUDO;
- Uwierzytelnianie Kerberos dla użytkowników i hostów;
- Host Based Access Control - zarządzanie i przechowywanie ról w LDAP;
- usługa zarządzania certyfikatami (Dogtag Certificate Server).
Sieć zbudowana przy użyciu FreeIPA może funkcjonalnie składać się z trzech typów systemów: jednego lub więcej serwerów, komputerów klienckich i komputera administratora. Ten ostatni jest w rzeczywistości zwykłym pulpitem klienta z narzędziami konsoli do pilot FreeIPA (nawiasem mówiąc, wcale nie trzeba ich używać - całkiem możliwe jest obejście się z interfejsem WWW napisanym w Javie).
Menedżer uwierzytelniania w Fedorze
pozwala wybrać FreeIPA
Aby zmniejszyć obciążenie kanału, klient korzysta z lokalnej pamięci podręcznej (LDB i XML), pobierając z niej ustawienia, także wtedy, gdy nie ma dostępu do serwera. Agent zarządzania uwierzytelnianiem SSSD (System Security Services Daemon) jest zainstalowany w systemie klienta. Część kliencka jest zaimplementowana nie tylko dla Red Hat/Fedora i klonów, ale także dla innych systemów operacyjnych i platform: AIX, HP-UX, Solaris, openSUSE. Co ciekawe, dwie osoby w Red Hat pracują nad budowaniem pakietów klienckich Ubuntu/Debian i ich kompatybilnością.
Specjalna aplikacja (certmonger) upraszcza tworzenie i zarządzanie certyfikatami poprzez automatyczne generowanie i odbieranie nowego certyfikatu po wygaśnięciu starego. Opcjonalna integracja z serwerem DNS opartym na BIND (wymaga wtyczki LDAP BIND z dynamiczną aktualizacją przez GSS-TSIG). Podczas zarządzania komputerami i grupami komputerów poświadczenia są weryfikowane za pomocą karty kluczy Kerberos lub certyfikatu. Modułowa architektura części serwerowej i klienckiej pozwala na łatwą integrację FreeIPA i dowolnego produktu. Obecnie zasady są również używane do przechowywania ustawień dostępu do aplikacji lokalnych i ustawień pulpitu. Nie wszystkie funkcje zarządzania polityką, audytu i kontroli, które planuje się uwzględnić w projekcie, zostały jeszcze wdrożone. Brak ustawień reguł SELinux, obsługa Samby, FreeRADIUS, scentralizowane zarządzanie kluczami SSH i LVM, OTP i inne. Oczywistym minusem produktu jest skupienie się przede wszystkim na dystrybucjach wywodzących się z Red Hata. Możesz zainstalować część serwerową FreeIPA z Fedory, CentOS, K12LTSP i kompatybilnych repozytoriów. Deweloperzy zrobili wszystko, aby uprościć proces lokalizacji w wersji 2.0 (używane są gettext i UTF8). W katalogu install/po znajduje się plik ru.po, w którym tłumaczona jest tylko niewielka część wiadomości.
Projekt jest aktywnie rozwijany i znajdują się błędy. Najnowsza wersja 2.1.4 naprawia lukę CSRF (cross-site request forgery, CVE-2011-3636).
Serwer katalogowy Apache
Serwer katalogów opracowany przez Apache Software Foundation. W całości napisany w Javie, obsługuje LDAPv3, Kerberos i Change Password Protocol. Jest pozycjonowany jako rozwiązanie osadzone w innych aplikacjach Java, ale nikt nie zabrania używania go samodzielnie. Zapewnia wykonanie LDAP i Kerberos, możliwe jest zaimplementowanie wsparcia dla dowolnego protokołu. Produkt jest wieloplatformowy. Pakiety są dostępne na stronie projektu do instalacji na Linux, Windows i Mac OS X, teksty źródłowe pozwalają na budowanie ADS na dowolnym systemie, dla którego dostępna jest Java. Oprócz standardowych funkcji LDAP zaimplementowano procedury składowane, wyzwalacze, dynamiczne obiekty Java i wiele innych. Dystrybuowany na licencji Apache. W ramach projektu rozwijane jest Apache Directory Studio, w skład którego wchodzi przeglądarka LDAP, przeglądarka schematów, edytory LDIF i DSML, programy klienckie do administracji.
GOsa2
- Strona projektu: oss.gonicus.de/labs/gosa.
- Licencja: GNU GPL.
- Dystrybucje: pakiety - Debian/Ubuntu, RedHat/CentOS/Fedora, openSUSE/SLES, od kod źródłowy- dowolny *nix.
Projekt GOsa2, będący dodatkiem do popularnych aplikacji open source, zapewnia administratorowi jedno centrum kontroli dla całej infrastruktury IT. Interfejs pozwala na zarządzanie kontami *nix i Samba, uprawnieniami użytkowników i grup, komputerami, listami mailingowymi, aplikacjami, ustawieniami podstawowych usług sieciowych: DHCP, DNS, HTTP, SMTP, itp. Rozwój prowadzony jest pod auspicjami Gonicus GmbH , który wykorzystuje GOsa w swoich usługach.
Wszystkie funkcje umieszczone są we wtyczkach (zasada „jedna usługa = jedna wtyczka”), dzięki czemu administrator zbiera konfigurację zgodnie ze swoimi potrzebami.
Obecnie wdrożono ponad 30 wtyczek umożliwiających zarządzanie usługami takimi jak Squid, DansGuardin, Postfix, Courier-IMAP, Maildrop, GNARWL, Cyrus-SASL, OpenSSL, ISC DHCP, WebDAV, PureFTPd, PPTP, Kerberos, Asterisk, Nagios , OPSI , Netatalk, FAI, rsyslog i serwery współpracy: SOGo, OpenGroupware, Kolab, Scalix. Jednocześnie wszystkie powyższe wtyczki nie muszą działać na tym samym serwerze, niektóre z nich można zainstalować na osobnych hostach.
Konta użytkowników są zorganizowane w grupy, do których przypisane są dozwolone aplikacje. Przy tworzeniu nowych kont wykorzystywane są szablony (administrator sam je tworzy) z przypisanymi prawami dostępu do obiektów. Zestaw uprawnień ACL składa się z typu, który definiuje widoczność, obiekty (użytkownicy/grupy) i uprawnienia. Uprawnienia definiują wszystkie możliwe działania: tworzenie, usuwanie, przenoszenie, odczytywanie, pisanie itp.
GOsa to jedyny projekt w naszej recenzji ze zlokalizowanym interfejsem zarządzania. To prawda, że nie jest jeszcze w pełni zlokalizowane, ale użycie gettexta pozwala w razie potrzeby zrobić to samemu.
Obsługiwana jest instalacja na dowolnej dystrybucji Linuksa. Deweloperzy polecają Debiana, dla którego utworzono osobne repozytorium. Dostępne są również pakiety dla Red Hat/CentOS/Fedora i openSUSE/SLES, ale deweloperzy generalnie pracują wolno, więc wydania są nieco spóźnione. Można użyć dowolnego serwera WWW, jednak preferowane są Apache2 i nginx. Dokumentacja jest dostępna tylko w języku angielskim i nie nadąża za rozwojem projektu, wiele punktów znajduje w niej bardzo powierzchowne odzwierciedlenie.
INFORMACJE
FreeIPA służy do uwierzytelniania i autoryzacji w rozwiązaniu wirtualizacyjnym firmy oVirt zbudowanym na bazie KVM.
Aby zsynchronizować 389DS z usługą Active Directory, należy zainstalować program Windows Sync.
Po zainstalowaniu pakietu 389-ds w celu skonfigurowania 389DS uruchom .
Narzędzie system-config-autentification dołączone do Fedory ma kartę, która pozwala włączyć uwierzytelnianie FreeIPA.
Wniosek
Nawet gołym okiem widać, że najbardziej wszechstronnym narzędziem jest GOsa2. To rozwiązanie zapewnia zarządzanie kontem oraz liczne usługi, wspiera instalację w większości Dystrybucje Linuksa, posiada zlokalizowany interfejs. Jednak ostateczny wybór zależy od konkretnego zadania.
Można się spierać o zalety i wady Linuksa i open source w ogóle, ale nie można nie przyznać, że w niektórych obszarach otwarty system operacyjny osiągnął niewątpliwy sukces. Nawiasem mówiąc, jest to rynek serwerów, na którym popularność Linuksa rośnie z roku na rok.
Z danych IDC za IV kwartał 2012 r. wynika, że podczas gdy cały rynek serwerów wzrósł o 3,1% (w porównaniu z rokiem poprzednim), sprzedaż sprzętu z Linuksem wzrosła o 12,7%, z Windowsem o 3,2%, a z Uniksem spadła o 24,1%. %. Oczywiście łatwo z tego widać, że Linux wciąż wypiera Unixa, a nie Windowsa, ale w każdym razie 20,4% udziału w rynku jest już dość znaczące.
Jednak serwery to szerokie pojęcie. IDC uważa, że chmura i obliczenia o wysokiej wydajności napędzają przede wszystkim popularyzację Linuksa. Firmie analitycznej wtóruje The Linux Foundation, która twierdzi, że 76% badanych dużych firm już używa Linuksa do tworzenia „chmur”, a 74% planuje utrzymać lub nawet zwiększyć obecność otwartego systemu operacyjnego.
Linux jest również szeroko stosowany do wdrażania serwerów WWW i różnych wewnętrznych usług internetowych, takich jak proxy, poczta itp. Ten ostatni jest historycznie dość popularny wśród małych firm, w tym ukraińskich, ponieważ pozwala znacznie zaoszczędzić na licencjach i konserwacji, dla na przykład zlecić dostawcę usług internetowych. Najlepsze propozycje Linux Foundation dla Linuksa to: szeroki zakres funkcji (75%), niski całkowity koszt posiadania (71%) i wysoki poziom bezpieczeństwa (69%).
Linux może być również wykorzystany do budowy infrastruktury IT, dzięki niezależnym wdrożeniom oraz Sambie. Jednak biorąc pod uwagę, że większość miejsc pracy w organizacjach nadal opiera się na Windowsie i ta sytuacja raczej nie zmieni się diametralnie, to trzeba przyznać, że Linux w tym charakterze wygląda raczej blado. Jednak również tutaj nastąpił ostatnio postęp.
Wydana pod koniec ubiegłego roku Samba 4 implementuje prawie kompletny odpowiednik Active Directory (AD), w tym kontroler domeny, Usługa DNS, uwierzytelnianie Kerberos, zasady grupy. Oczywiście jest to dopiero pierwsze wydawnictwo, zawierające błędy i niedociągnięcia, których poprawianie jednak trwa już pełną parą. Ponadto za pomocą Samby 4 nie można jeszcze tworzyć złożonych struktur domen i hierarchii oraz relacji zaufania, co ogranicza jej zastosowanie w dużych organizacjach.
Dlatego w tej chwili najbardziej realnymi zastosowaniami Samby 4 są budowa infrastruktur testowych i sal lekcyjnych, a także wdrożenia w małych firmach. Jednak zachodni obserwatorzy są raczej sceptyczni co do tego ostatniego: czy oszczędności przewyższą ryzyko niestabilnego funkcjonowania infrastruktury? W ukraińskich realiach system wartości jest jednak nieco inny, a argumenty finansowe i prawne mogą przeważać nad wszystkimi innymi.
Co więcej, w wielu przypadkach prawdziwy wybór nie jest tak duży. Microsoft oferuje specjalne Wersje Windows Server 2012 Small Business — podstawy i podstawy. Pierwszy w cenie 500 USD jest dość interesujący dla 25 użytkowników, drugi jest oferowany do instalacji OEM i jest gotowy do obsługi 15 użytkowników. Ale problem polega na tym, że dla jeszcze będziesz musiał nie tylko dokupić dodatkową licencję CAL, ale także zmienić licencję serwera na Standard. Samba 4 nie ma takich ograniczeń i może skalować się do dowolnego poziomu. Prawdopodobnie do jego dystrybucji lepiej nadawałby się również model OEM, gwarantujący pełną kompatybilność ze sprzętem i brak niespodzianek, przynajmniej na pierwszy rzut oka.
Tymczasem sama implementacja Samby 4 to dość prosta sprawa. Oczywiście lepiej zacząć od przetestowania jakiejś wyspecjalizowanej dystrybucji. Takie na przykład oferuje SerNet, niemiecki integrator i uczestnik projektu Samba - SerNet Samba 4 Appliance. Dodatkowo można na nim wdrożyć oprogramowanie do współpracy Zafara, które zawiera gotowy skrypt do dostosowania schematu AD.
Novell/SUSE oferuje wariant Excellent Samba4 Appliance jako obrazy rozruchowe i wdrożyliśmy już dyski wirtualne dla wszystkich popularne systemy wirtualizacja. Ta dystrybucja jest okresowo aktualizowana po wydaniu regularnych poprawek dla Samby 4.
W rzeczywistości inicjalizacja AD polega na wdrożeniu zestawu dystrybucyjnego lub utworzeniu i uruchomieniu odpowiedniego maszyna wirtualna i wykonanie gotowego skryptu dcpromo, który poprosi o kilka parametrów (nazwa domeny, adres IP itp.).
Ponieważ Samba 4 została stworzona na bazie oficjalnie zakupionej, jej kompatybilność zapowiada się dość wysoko. W każdym razie można wykorzystać wszystkie standardowe narzędzia administracyjne Microsoft, które w przypadku Excellent Samba4 Appliance są nawet dostępne za pośrednictwem wewnętrznego serwera WWW.
Ponieważ Samba 4 implementuje wszystkie RPC potrzebne do AD, możesz także używać narzędzi wiersza poleceń i skryptów PowerShell. Społeczność linuksowa również rozwija własne narzędzia, zarówno graficzne, jak i skryptowe, ale stopień ich przygotowania jest nadal niezadowalający.
W przypadku korzystania z narzędzi Microsoftu, dalsza administracja domenami jest doskonale znana każdemu, przynajmniej powierzchownie zaznajomionemu z AD w Serwer Windows. Dodawanie kont, tworzenie grup, rozdzielanie uprawnień jest całkowicie przejrzyste.
Jedną z najcenniejszych funkcji Samby 4 jest obsługa zasad grupy, która jest wygodna i skuteczny środek administracja stacjami roboczymi w systemie Windows. W rzeczywistości jest to pierwszy krok w kierunku zarządzanej infrastruktury, a dzięki Sambie 4 jeszcze łatwiejszej.
Najprostszym przykładem jest uwzględnienie pożądanego tryb Windows Zaktualizuj i zablokuj użytkownikowi możliwość jego zmiany. Zadanie rozwiązane jest dokładnie w ten sam sposób zarówno w Windows Server, jak i w Sambie 4:
Wynik po ponownym uruchomieniu stacji roboczej lub wymuszeniu aktualizacji polityki grupowej jest dość przewidywalny:
W ten sposób Samba 4 pozwala zorganizować prostą domenę AD w systemie Linux, praktycznie bez potrzeby posiadania głębokiej wiedzy na temat właściwego systemu Linux. Ponadto elastyczność otwartego systemu operacyjnego umożliwia tworzenie kompaktowych, jednofunkcyjnych dystrybucji z Samba 4, które będą działać niezawodnie zarówno w środowiskach fizycznych, jak i wirtualnych. Stabilność i skalowalność samej Samby 4 wciąż pozostaje pod znakiem zapytania, ale zespół programistów nie wydaje się na tym poprzestać.
Filip Torchinski: Dzień dobry! Dziś prawie nie będę mówił o Open Solaris, chociaż zwykle mówię tylko o tym.
Dzisiaj porozmawiamy o tym, jak i dlaczego możesz korzystać z niektórych alternatyw dla usługi katalogowej Active Directory w systemie UNIX. Ściśle mówiąc, nie będą to całkiem alternatywy dla AD. Ale raz jeszcze wyrażę swoją opinię, jak sytuacja będzie się rozwijać w przyszłości, w jakim kierunku. Opowiem trochę o tym, jak skonfigurować te rozwiązania, które będą popularne w przyszłości – znowu moim zdaniem. Raport zawiera osobny artykuł o Identity Manager.
Z reguły opowiadam o rzeczach, które założyłem własnymi rękami i o których mogę opowiedzieć wszystko. Dzisiaj będzie trochę inaczej. Opowiem o koncepcji i wspomnę, co sam założyłem. Z tej usługi korzystałem dość często. Mogę powiedzieć, jak to wygląda z punktu widzenia użytkownika i co może być w tym dobre lub złe.
Jednym z głównych zadań każdego projektanta dowolnego systemu jest uniknięcie sytuacji, w której wykonujemy dość prostą pracę za pomocą jakiegoś bardzo potężnego narzędzia. Ale tak właśnie dzieje się w prawdziwym życiu.
Z pewnością wielu z Was zaobserwowało zestaw prymitywnych tekstów, na przykład w: Microsoft Word lub w OpenOffice Writerze. W zasadzie te teksty zasługują na wpisanie w terminalu tekstowym, w Notatniku lub w dowolnym jego odpowiedniku. Ale te teksty mają tyle szczęścia, że są pisane w bardzo potężnych edytorach.
Właściwie często o tym myślę. Skoro zgromadziliśmy tutaj ludzi, od których coś w tym świecie zależy, mam nadzieję, że wspólnymi siłami uda nam się doprowadzić do stanu, w którym nasi klienci, nasi pracownicy i wszyscy, którzy są z nami związani, będą spędzać mniej czasu i środków na wykonywanie proste działania za pomocą złożonych środków.
Teraz chciałbym zdjąć czapkę z rąk programistów z Microsoft Corporation. Moi koledzy i ja zgodziliśmy się, że ogólnie Active Directory jest dobry. Dobrze, że takie rozwiązanie istnieje, naprawdę można je zastosować. Inną rzeczą jest to, że usługa katalogowa Active Directory jest często używana tam, gdzie bez niej nie byłoby gorzej.
Co jest dobrego w Active Directory? Do czego może być używany?
Przede wszystkim Active Directory nadaje się do zarządzania użytkownikami (grupami, rolami użytkowników itd.). Ściśle mówiąc, rozwiązanie Active Directory jest z tym bezpośrednio związane, ale nie jest sposobem na jego zapewnienie. Usługa katalogowa Active Directory umożliwia dostęp do sieci z różnych komputerów, zapewnia funkcjonalność profili mobilnych (angielskie profile mobilne).
Te profile przyprawiały mnie o ból głowy na 2 lata. Byłem szefem działu IT firmy, w której te same profile roamingowe były używane we wszystkich biurach w całym kraju. Mogą mieć rozmiar 2 lub 3 gigabajty i cudownie rozciągać się od biura w Petersburgu do biura w Moskwie, ponieważ pracownik przyjechał tu w podróż służbową i postanowił pracować.
To tylko typowy przykład nieefektywnego wykorzystania dobrego pomysłu, w którym okazuje się on strasznie niewygodny.
Ponadto Active Directory jest oczywiście używany do kontroli dostępu, ponieważ mówi, kto i gdzie może się udać. Active Directory jest również dość szeroko stosowany w tych systemach, w których sieć jest heterogeniczna. W tym przypadku konfigurujemy dostęp przez PAM, uwierzytelnianie, dostęp przez Active Directory do niektórych zasobów, które fizycznie znajdują się na komputerach, które nie są w żaden sposób połączone z Active Directory. Na przykład mamy bieganie pod serwer linux, na którym chcesz rozmieścić niektóre pliki. Oczywiście możesz także użyć Active Directory do uwierzytelniania w sieci.
Jest jeszcze jedna rzecz, nad którą nie będę się dzisiaj rozwodził. Powiem tylko, że robią to za pomocą Active Directory. Domyślam się, jak zaimplementować to dla aplikacji UNIX w systemach UNIX, ale nie jest to w żaden sposób związane z tematem raportu.
Są to tzw. polityki grupowe a w szczególności zarządzanie aplikacjami, w ramach których możemy na różne sposoby konfigurować „zachowanie” konkretnych aplikacji dla różnych grup lub użytkowników.
Ta rzecz w funkcjonalności, o której opowiem dzisiaj, nie została w żaden sposób zaimplementowana, o ile mi wiadomo. Trzeba to zrobić w inny sposób, albo dodać coś innego do istniejących środków.
Ogólnie rzecz biorąc, do czego służą komputery (w systemie UNIX lub nie)? Celów jest wiele, ale dla każdej grupy zadań istnieje najwygodniejszy protokół. Mamy Protokół SSH- został wymyślony dla moich kolegów administratorów systemu. Oczywiste jest, że zwykli ludzie prawie tego nie potrzebują.
Protokoły FTP i HTTP są potrzebne prawie każdemu, kto kiedykolwiek wrzucił coś na hosting.
Oczywiście każdy potrzebuje poczty. Kiedy na przykład ustawię sobie trochę nowy system na komputerze lub uruchamiam LiveCD i nie widzę tam działającej poczty, to już mnie denerwuje. Chociaż pięć lat temu bym się nie zdziwił. Telefon komórkowy, który nie potrafi czytać e-maili, to po prostu hańba. Chociaż z reguły nie oczekujemy tego od telefonu domowego.
Kolejna funkcjonalność, która jest zwykle wymagana w każdej firmie, w której jest więcej niż dwie osoby. Jest to możliwość korzystania z tego samego środowiska pracy na różne komputery. Jest to wymagane wszędzie – od takich podręcznikowych opcji, jak grupa operatorów siedząca w banku lub w call center (ta ostatnia może być nawet 400 osób na bieżąco), a skończywszy na mniej powszechnych opcjach – takich jak administracja uczelni, gdzie pracownicy się przemieszczają z jednego korpusu do drugiego. Wszyscy ci ludzie muszą mieć jedno środowisko pracy na dowolnym komputerze.
Opowiem teraz o sposobach zapewnienia tego środowiska pracy. Ta część raportu nie ma nic wspólnego z analogami Active Directory. Jest to raczej rodzaj rozwiązania, które pozwala na implementację tego, co często robi się za pomocą Active Directory, ale nie obciąża nadmiernie systemu. To bardzo proste rozwiązanie. Najprawdopodobniej wielu z Was już go używało lub przynajmniej widziało, a nawet sprzedało, nie wiem.
Jest taka stara rzecz jak terminal. Istniały przed 1969 rokiem. W 1969 roku, kiedy wynaleziono UNIX, istniały już terminale. Nic dziwnego, że wszystko działa całkiem dobrze z terminali. Nowoczesna wersja terminala to coś, co na przykład Sun nazwał Sun Ray. Teraz nadal nazywa się Sun Ray, ale jest produkowany przez Oracle.
Część sprzętowa to X-Terminal z portem internetowym i portem USB. Są też wyjścia i wejścia audio. Możesz podłączyć słuchawki, posłuchać ulubionej muzyki, włączyć pendrive – wszystko będzie działać świetnie. Ponadto może również odczytywać karty inteligentne, dzięki czemu można przeprowadzać uwierzytelnianie kart inteligentnych.
Oprócz Sun Ray jest jeszcze jeden produkt (nie pamiętam jego nazwy), który jest częścią rodziny Virtual Desktop Infrastructure.
To taki wirtualny Sun Ray. Kiedy przychodzisz do szefa i mówisz: „Słuchaj, Piotr Pietrowicz, powinniśmy przenieść naszą grupę pomoc techniczna na terminalach, ponieważ zamiast szybko odpowiadać na pytania, grają w Klondike na tym, co tam mają. Albo: „Mamy dość naprawiania ich zasilaczy, ponieważ co tydzień ulegają awarii, ponieważ nie możemy naprawić klimatyzatora”.
To oczywiście nie cieszy zbytnio Petra Pietrowicza, ponieważ sprzęt wymaga wymiany, sprzęt wydaje się być niedawno zakupiony ... Komputer musi stać przez pięć lat, dopóki nie zostanie spisany, inaczej nie jest dobry dla księgowość.
Możesz użyć wirtualnego promienia słońca zamiast technologii. Zainstaluj wirtualne stacje robocze. Rozwiązanie będzie działać na istniejącym systemie i „udawać”, że jest jak terminal.
Skończyliśmy z terminalami. Zobaczmy teraz, jak to działa i dlaczego możemy potrzebować systemu, który jest w pewnym sensie odpowiednikiem Active Directory. Jeszcze raz podkreślam, że nie jest to stricte funkcjonalny analog.
Serwery aplikacji
Glassfish to standardowy serwer aplikacji, który w zasadzie jest podobny do Tomcata, ale w przeciwieństwie do niego może również pełnić rolę nie tylko kontenera webowego, ale również kontenera JB (czyli Enterprise Java…). Nawiasem mówiąc, to, co kiedyś nazywano po prostu Glassfish, teraz nazywa się Oracle Glassfish Server.
Może na przykład działać w Oracle Solaris. U mnie działa w Open Solaris.
Ten serwer aplikacji umożliwia wdrażanie szerokiej gamy aplikacji internetowych, w tym Liferay. Nie będę dzisiaj dużo o nim mówił. Dla tych z Was, którzy jeszcze nie wiedzą, że istnieje, radzę uważać. To fajna rzecz. Zakładam, że w niedalekiej przyszłości będzie to znacznie więcej niż obecnie.
Myślę, że za jakiś czas - za rok lub dwa - hosting Javy z pewnością pojawi się w Rosji (są już za granicą). Liferay to bardzo przydatna platforma do tworzenia dowolnej strony internetowej. W zasadzie serwis na Liferay - prosty, 5 stron, z treścią, ze zdjęciami, przy minimalnym designie - zrobiłem w około pół godziny.
Istnieje również implementacja tego samego portalu, który nazywa się WebSpace. Jest oparty na prawie tym samym kodzie, ale został stworzony przez firmę Sun. Liferay to produkt społecznościowy, który ma niewiele wspólnego z Sun - Sun zainwestował bardzo mało pieniędzy i wysiłku w jego stworzenie.
To był przykład serwera aplikacji.
Zobaczmy teraz, co kryje się za serwerem aplikacji. Za serwerem aplikacji jest to, co pozwala nam uwierzytelniać się na tym serwerze aplikacji, a także pozwala temu serwerowi i uruchomionym na nim aplikacjom określać nasze prawa dostępu do różnych obiektów.
Są to Identity Manager, Directory Server i Access Manager. W zasadzie może być więcej komponentów, które zapewniają uwierzytelnianie i kontrolę dostępu do pewnych zasobów sieciowych, ale to jest najciekawsze.
Aby było to wygodne dla ludzi, całkiem naturalne jest zapewnienie scentralizowanego dostępu, łączenie zasobów internetowych logicznie (z reguły) lub organizacyjnie, finansowo. Niezbędne jest, aby ludzie mieli możliwość przejścia do jednego zasobu internetowego i automatycznego uzyskania dostępu do wszystkich innych. Aby to zrobić, wymyślili dobrze znaną technologię zwaną technologią pojedynczego logowania (SSO, Single Sign On). Po zalogowaniu wszystko działa. Nie możesz się już zalogować.
Jest to podobne do tego, do czego jesteśmy przyzwyczajeni, na przykład w systemach Windows Client i Windows Server, kiedy "zalogowaliśmy się" raz - a potem "przechodzimy" przez wszystkie pliki.
Powstaje uzasadnione pytanie: czy często musimy „przeglądać” akta? Z praktyki grupy, w której pracuję przez ostatnie 3 lata (jeszcze więcej), widzę, że właściwie „przechodzenie” po plikach i przechowywanie plików w folderach często nie jest wymagane. Mam własny laptop, który ma wszystko, czego potrzebuję. Wszystko, co dzielą między sobą nasze grupy, znajduje się na wspólnej wiki.
Istnieją różne sposoby implementacji wiki. Może to być darmowy silnik o nazwie TWiki. Istnieje wiele innych rozwiązań, które działają w tym samym trybie. Istnieje wiele darmowych witryn hostingowych, na których możesz na przykład hostować niektóre projekty - tam wiki jest udostępniane za darmo jako element zarządzania projektami.
To dość popularna rzecz. Dlatego w szczególności, gdy myślisz o tym, jaką infrastrukturę zbudować w swojej firmie, opcja jest taka, gdy nie masz serwera plików, ale istnieje pewien zasób sieciowy, w którym wszyscy przesyłają pliki i stamtąd je pobierają ( zgodnie z ich uprawnieniami) , jest dość logicznym wzorem. Coraz częściej pojawia się też temat przenoszenia zasobów do sieci.
Nawiasem mówiąc, miałem dużą prośbę do twórców produktów 1C: pilnie musimy wymyślić coś takiego, jak księgowość internetowa. Tęsknię za nią strasznie.
Replika:- Jest. Filip Torchinski:— Czy to naprawdę jest takie internetowe? Czy czegoś mi brakuje? Jak długo tam jest? Replika:- Już się pojawił. Filip Torchinski:- Doskonały. Dziękuję Ci bardzo! Najwyraźniej przegapiłem coś w ciągu ostatnich kilku miesięcy i nie widziałem tego. Sześć miesięcy temu chyba jeszcze tam nie było. Ma już. Doskonały. Dziękuję za dobre wieści!Wróćmy teraz do technologii jednokrotnego logowania. Wygodnie jest sprawić, by klient miał dwie opcje kontaktu z serwerem jednokrotnego logowania.
Pierwsza opcja dotyczy dostępu do określonego zasobu internetowego, na przykład działającego na tym samym Glassfish. To tylko aplikacja Java, która zapewnia jednokrotne logowanie (uwierzytelnianie i dalsze działania). Odnosi się do PAM, który „wyciąga” informacje ze zwykłych źródeł uwierzytelniania.
Dobrze, jeśli istnieje opcja odwrotna: zwracamy się do PAM, a on zwraca się do serwera jednokrotnego logowania i udaje mu się o coś zapytać.
Druga opcja niestety nie została jeszcze wdrożona – przynajmniej nie widziałem realizacji. Pierwsza opcja jest zaimplementowana, nawet próbowałem. Postaram się wyjaśnić, jak to zrealizować.
W lutym tego roku ForgeRock zdecydował, że „sfałszuje” projekt OpenSSO, ponieważ Oracle słynie z zamknięcia przejęcia firmy Sun w lutym.
Z punktu widzenia ForgeRock ciekawie byłoby wyciągnąć z repozytorium kod OpenSSO projektu, a następnie coś z nim zrobić (skoro pozwala na to licencja). Doskonały. Jak dotąd nie ma informacji, że Oracle zrobi coś złego z OpenSSO. Co więcej, istnieją dowody na to, że wszystko będzie z nim w porządku.
Dlaczego radzę pobrać dokładnie OpenAM, czyli ten sam montaż, tylko z ForgeRock? Ponieważ witryna ForgeRock najlepiej opisuje, jak ją zainstalować. Bardzo dobry opis jak zainstalować OpenSSO, widziałem tam.
Teraz musimy zainstalować Glassfish. W Open Solaris przy rozpakowywaniu należy zaznaczyć pole "zainstaluj Glassfish" - zostanie on zainstalowany. Możesz po prostu pobrać Glassfish i uruchomić instalator.
Następnie musisz uruchomić demona amunixd, a system może być już używany. OpenSSO będzie działać przez PAM. Nie wiadomo, czy tego potrzebujesz - może potrzebujesz czegoś innego. Ale jeśli potrzebujesz wszystkiego, aby działać przez PAM, robi się to tak, jak opisałem.
Powiedziałem ci, jak poprawnie i szybko zainstalować Glassfish w OpenSolarisie. Dokładniej, jak to ująć, jest jasne. Bardziej interesujące jest jak założyć domenę.
Pozwólcie, że pokrótce wyjaśnię, czym jest domena w stosunku do Glassfish. Mamy serwer aplikacji i chcemy na nim wdrożyć jakąś aplikację. Tej aplikacji nie można wdrożyć w próżni. Musi stworzyć coś w rodzaju powłoki, w której zostaną zapisane wszystkie powiązane z nim pliki i niektóre ustawienia. Wewnątrz tej powłoki zostaną wdrożone dodatkowe składniki aplikacji i tak dalej.
Ta rzecz nazywa się domeną. Nie ma nic wspólnego z domeną w sensie coś.ru. Nie ma to nic wspólnego z domenami internetowymi. To tylko nazwa zbioru połączonych, połączonych ze sobą komponentów. W zasadzie domena będzie miała trochę Nazwa domeny(z punktu widzenia domeny internetowej), ale to później. W razie potrzeby możesz go dostosować.
Teraz najważniejszy punkt. Podczas konfigurowania logowania jednokrotnego należy określić w pełni kwalifikowaną nazwę domeny.
W rzeczywistości instrukcje ForgeRock mówią dużymi literami na żółtym tle: „Zapisz FQDN do pliku /etc/hosts”. Jeśli tego nie zrobisz, zostanie zgłoszony niejasny błąd. To dziwna diagnoza. To, co jest nie tak, będzie zupełnie niezrozumiałe.
Powie, że nie będziesz w stanie uzyskać dostępu do portu 80. Dlaczego nie możesz? Nieznany. Ważny punkt. Podczas konfigurowania tej konfiguracji pamiętaj, aby w pliku /etc/hosts podać pełną nazwę swojego hosta.
Przejdź do adresu, zaloguj się (domyślna nazwa administratora to amadmin), wybierz Autoryzacja->Unix. W razie potrzeby możesz wybrać inne opcje autoryzacji. Ale w Uniksie wszystko będzie działać odpowiednio przez PAM.
Dlaczego potrzebny jest Identity Manager i co to jest?
Identity Manager firmy Oracle „wie, jak” pracować z wieloma różnymi źródłami informacji. Co więcej, w jednym źródle informacji pewien obiekt nazywa się Iwan Pietrowicz, w innym Wania, w trzecim Iwan. W tych źródłach informacji napisano o nim coś innego.
Co jest ważne? Te źródła informacji nie muszą zawierać informacji, takich jak klucz podstawowy (klucz podstawowy). W każdym z tych źródeł nie ma unikalnego identyfikatora. Po prostu dzięki narzędziom do zarządzania Identity Manager możesz różne sposobyłączyć różne rekordy z różnych źródeł informacji.
Dodatkowo Identity Manager zapewnia synchronizację. Jeśli na przykład ktoś zostaje zwolniony z pracy, to jego Rachunek jest usuwany z listy pracowników, nawet z jakiejś innej listy - na przykład dłużników lub wierzycieli organizacji. Na ogół rekord jest usuwany ze wszystkich dostępnych źródeł informacji.
W związku z tym, jeśli nastąpi modyfikacja, na przykład niektóre pola się zmieniają, to jest to również synchronizowane między różnymi źródłami informacji, jeśli te pola istnieją.
Jako projekt strategiczny firma Oracle zatrzymała istniejące wcześniej rozwiązanie Oracle Identity Manager. Pozostaje również projekt, który nazwano Sun Identity Manager. Będzie nadal istnieć, ale głównym produktem sprzedawanym przez Oracle będzie Oracle Identity Manager.
Identity Manager to tak naprawdę rzecz, która kosztuje sporo pieniędzy. Wiem, że kupują go różni klienci Sun i Oracle w Rosji.
Istnieje również jednostka o nazwie Directory Server, o której mówiliśmy nieco wcześniej. To tylko jedno ze źródeł informacji dla Identity Manager. Z reguły jest to zwykły serwer LDAP. Istnieje specyficzny produkt o nazwie OpenDS, który Oracle obiecuje obsługiwać. To tylko serwer LDAP napisany w Javie.
Jest wygodny w użyciu. Jeśli nie chcesz zbierać niczego dodatkowego, możesz po prostu wziąć ten OpenDS i wdrożyć go na tej samej Glassfish.
Opowiem Ci o interakcji między klientem, serwerem aplikacji, Access Managerem i Identity Managerem.
Istnieje klient, który prosi o dostęp do pliku, na przykład serwer aplikacji DEP z interfejsem internetowym zwanym kontenerem internetowym. Plik ma złe uprawnienia. Serwer aplikacji "pyta" program Access Manager, czy można uzyskać dostęp do pliku.
Menedżer dostępu zwraca się do Menedżera tożsamości: „Co mamy z tożsamością takiego towarzysza?” Zwracana jest mu informacja, że znajomy pełni w systemie rolę superadministratora. Access Manager mówi: „To jest możliwe”. Informacje są wysyłane do serwera aplikacji, na przykład Glassfish: „Tak, możesz”. Plik zostaje zwolniony.
Zapewne wiesz, że w nsswitch.conf na systemach, które go posiadają, takich jak Debian i OpenSolaris, możesz wpisać słowo ldap w miejscu, z którego określa się, skąd pobrać informacje uwierzytelniające. Dostępne są informacje o tym, jak skonfigurować to w opennet, które opisują niezbędny dodatek do schematu LDAP.
To jest najważniejsze - jak będzie wyglądała przyszłość, jeśli nie będziemy jej naciskać zbyt mocno, aby wyglądała inaczej. Opcja pierwsza - która, mam nadzieję, powinna trafić do wszystkich służb cywilnych, które teraz mówią mi przez okno: „Przepraszam, nic nie możemy zrobić. Nasz komputer jest zamrożony Administrator systemu przyjdą jutro." W takich miejscach oczywiście trzeba zainstalować terminale, aby był jeden serwer, na którym zawsze jest administrator systemu.
Poza tym oczywiście zdarzają się sytuacje podczas pracy z CAD, kiedy trzeba skompilować serwer i niektóre stacje robocze, oraz gdzie aplikacje z dowolnymi klientami (na przykład z telefony komórkowe) za wszystko inne.
Bardzo dziękuję za informację, że 1C: Księgowość zrobiła już to, czego mi brakowało.
Dziękuję Ci! Myślę, że zostało mi 30 sekund na udzielenie odpowiedzi na pytania.