Windows Server 2008

Zabezpieczanie ISA Server i Forefront TMG w środowisku wirtualnym Udostępnij na: Facebook

Opublikowano: 24 kwietnia 2009 | Zaktualizowano: 24 kwietnia 2009

Zawartość strony
 Obsługiwane środowiska wirtualne   Obsługiwane środowiska wirtualne
 Planowanie instalacji   Planowanie instalacji
 Definiowanie profilu ruchu   Definiowanie profilu ruchu
 Definiowanie zakresu zabezpieczeń   Definiowanie zakresu zabezpieczeń
 Zabezpieczenia aplikacji   Zabezpieczenia aplikacji
 Zabezpieczenia sieci   Zabezpieczenia sieci
 Partycja nadrzędna   Partycja nadrzędna
 Połączenia partycji nadrzędnej i partycji gości   Połączenia partycji nadrzędnej i partycji gości
 CPU & RAM   CPU & RAM
 Dyski   Dyski
 Sieci   Sieci
 Zarządzanie   Zarządzanie
 Dostęp do partycji nadrzędnej   Dostęp do partycji nadrzędnej
 Kontrola zmian   Kontrola zmian
 Porównanie bezpieczeństwa sieci i wydajności   Porównanie bezpieczeństwa sieci i wydajności
 Bibliografia   Bibliografia
 Narzędzia do testowania   Narzędzia do testowania
 Pojęcia   Pojęcia

Wirtualizacja prac serwera staje się coraz bardziej popularną metodą efektywniejszego wykorzystania sprzętu komputera i infrastruktury. Wirtualizacja oferuje wiele zalet administratorowi centrum danych, wprowadzając konieczne zmiany w sposobie tworzenia i zarządzania obsługiwanymi instalacjami.

Wirtualizacja aplikacji serwera jest trudniejszym przedsięwzięciem ze względu na złożoność prawidłowego przydzielania sprzętu pomiędzy wiele zadań serwera. Również w zakresie skalowania i zabezpieczeń wyzwaniem staje się na różnych partycjach podrzędnych tego samego hosta łączenie aplikacji, które nie mogą koegzystować na pojedynczym komputerze. Podobnie niespotykane problemy, dotyczące zabezpieczeń i dostępności, powstają podczas wirtualizacji sieci i potencjalnych jednoczesnych awarii wielu serwerów spowodowanych awarią partycji nadrzędnej.

Artykuł ten udostępnia specyficzne porady dotyczące instalowania oprogramowania Microsoft ISA Server i Microsoft Forefront TMG przy użyciu wirtualizacji. Autorzy zalecają także, aby zapoznać się również z instalacją i zaleceniami praktycznymi udokumentowanymi w sekcji References.

Obsługiwane środowiska wirtualne

Oprogramowanie Microsoft ISA Server i Forefront TMG jest obsługiwane na platformie wirtualizacji sprzętu w zgodzie z wymogami następujących programów:

  • Microsoft Support Lifecycle
  • Wymagania systemowe dla Microsoft ISA Server
  • Wymagania systemowe dla Forefront TMG
  • Microsoft Server Virtualization Validation Program (SVVP)
  • Wsparcie dla oprogramowania firmy Microsoft uruchomionego w oparciu o programy wirtualizacji sprzętu innych producentów niż firma Microsoft

Przykładowo, jeśli platforma wirtualizacji sprzętu została wymieniona jako „ważna” na liście SVVP (nie jako „w trakcie testowania”), programy Microsoft ISA Server i Forefront TMG będą obsługiwane w kontekście produkcyjnego użycia na tej platformie (przy uwzględnieniu ograniczeń opisanych wstępnie w programie Microsoft Product Support Lifecycle, opisanych przez zasady wirtualizacji sprzętu dla platform innych niż firmy Microsoft i w zgodzie z wymaganiami systemowymi dla tej wersji produktu).

W przypadku platform wirtualizacji sprzętu, które nie zostały wymienione przez SVVP, programy Microsoft ISA Server i Forefront TMG są obsługiwane w zgodzie z pozostałymi zasadami wsparcia dla oprogramowania Microsoft, przy następujących ograniczeniach:

  • Wirtualizacja pulpitu, taka jak program Microsoft Virtual PC lub podobny produkt innej firmy: obsługa tylko dla celów pokazu lub edukacji
  • Wirtualizacja serwera, takiego jak program Microsoft Virtual Server lub podobny produkt innej firmy: obsługiwana, ale nie zalecana dla użycia w środowisku produkcyjnym
Ważne:
Zgodnie z opisem w artykuleMSKB 897615, inżynierowie wsparcia technicznego firmy Microsoft, zanim przeprowadzą analizę zgłaszanego przypadku, mogą zażądać, aby zgłaszający ponownie odtworzyli i sporządzili raport dotyczący problemu na rzeczywistym sprzęcie lub w oparciu o platformę wirtualizacji wymienioną na liście SVVP. Jeśli w takich warunkach nie można ponownie wywołać problemu, przypadek może być przekazany do działu obsługi dostawcy tego produktu.

 

 Do początku strony Do początku strony

Planowanie instalacji

Dla każdego poziomu ochrony główne kryterium instalacji to bezpieczeństwo, stabilność i wydajność. Definiowanie priorytetu każdego z tych elementów to zadanie wymagające głębokiej analizy wymagań aplikacji branżowych (LOB) organizacji, potrzeb bezpieczeństwa ogólnego i sieci, jak również zgodności z obowiązującymi ustawami. Niepodobieństwem jest uwzględnienie wszystkich możliwych scenariuszy i dlatego w niniejszym raporcie podkreślone zostały tylko najważniejsze punkty typowych instalacji.

Niezmienny pozostaje fakt, że ze względu na współużytkowanie zasobów przez maszyny wirtualne aplikacja serwera funkcjonująca na dedykowanym sprzęcie będzie działać sprawniej, niż ta sama aplikacja w środowisku wirtualnym o prawie takiej samej charakterystyce (ta sama liczba tej samej klasy procesorów, ta sama pamięć itp.). Na przykład obciążenie związane z przetwarzaniem ruchu, które w przypadku programu ISA Server generuje 80% wykorzystania CPU, może powodować stan odmowy usługi (DoS) dla podobnie skonfigurowanego wirtualnego programu ISA Server, gdzie wirtualny serwer nadrzędny jest po prostu przeciążony całkowitym obciążeniem partycji podrzędnych i zatorami zasobów tworzonymi przez siostrzane partycje podrzędne.

Dla inżyniera, którego zadaniem jest wirtualizacja aplikacji serwera, oznacza to w wielu przypadkach, że przydział zasobów dla danej aplikacji musi być rozszerzony do poziomu współużytkowania zasobów, mającego miejsce na komputerze wirtualnym. Dokładne określenie wymaganego poziomu tego rozszerzenia może być określone tylko poprzez testowanie planowanej instalacji wirtualizacji.

Podobnie procesy zarządzania centrum danych muszą zostać ponownie przeanalizowane i zdefiniowane tak, by uwzględnić problemy, kiedy błędy osób, oprogramowania lub sprzętu powodują utratę wielu partycji podrzędnych wewnątrz partycji nadrzędnej. Warunek ten nie tylko stanowi bardziej istotny wpływ na działanie biznesu, ale także potencjalne problemy dotyczące bezpieczeństwa, jeśli program ISA Server bądź Forefront TMG są jedną z chwilowo niedostępnych partycji podrzędnych.

 Do początku strony Do początku strony

Definiowanie profilu ruchu

Pomimo że dla wirtualnych czy sprzętowych instalacji proces ten jest identyczny, to w przypadku wirtualizacji jest on ważniejszy, ze względu na wymagania zasobów jednej partycji podrzędnej mogące wpływać na działanie pozostałych partycji hosta wirtualnego; w szczególności partycji nadrzędnej.

Dopóki aspekt profilu ruchu planu instalacji nie zostanie jasno sprecyzowany, wymagania związane z wydajnością i bezpieczeństwem programów ISA Server i Forefront TMG nie mogą być dokładnie określone, ocenione bądź spełnione. Artykuł MSKB 832017definiuje profile ruchu dla większości aplikacji bazujących na systemie Windows lub opracowanych przez Microsoft, wliczając w to sam program ISA Server. W artykule tym nie zostały jednak zdefiniowane profile ruchu dla produktów innych firm niż Microsoft. W wielu przypadkach można bezpiecznie poczynić pewne założenia; serwer poczty będzie korzystał z powszechnie używanych protokołów pocztowych, takich jak SMTP, POP3, IMAP czy nawet HTTP(s), jeśli serwer udostępnia usługi pocztowe w sieci Web. Jeśli planowane jest użycie programu ISA Server lub Forefront TMG do kontroli ruchu niestandardowych aplikacji, to trzeba będzie zdobyć te informacje u dostawcy produktu. W niektórych przypadkach zachodzi potrzeba przeprowadzenia eksperymentów i użycia narzędzi analizy sieci do wyszukania potrzebnych informacji.

Następnym etapem po określeniu profilu ruchu jest zdefiniowanie obciążenia wnoszonego przez ruch w kontekście każdej aplikacji lub usługi. Etap ten jest również istotny w celu dokładnego przewidzenia wpływu tego obciążenia na wydajność programu ISA Server lub Forefront TMG i na ogólne możliwości sieci. Może zachodzić konieczność przeprowadzenia pewnych analiz przepływu ruchu w bieżącej instalacji w celu poznania aktualnego obciążenia wnoszonego przez ruch i przewidzenia na tej podstawie, w jaki sposób trzeba będzie zmienić organizację i jej ruch.

Zalecenia praktyczne:

  • Tam, gdzie jest to możliwe, przekazywać ruch poprzez partycję podrzędną, na której funkcjonuje program ISA Server lub Forefront TMG. W ten sposób ułatwiona będzie kontrola ruchu pomiędzy sieciami i ułatwione będzie wykrywanie ataków przeprowadzanych z hostów lokalnych i zdalnych, wirtualnych i fizycznych.
  • Unikanie używania reguł „zezwalaj na wszystko/wszystkim”. Jeśli dostawca aplikacji nie potrafi jasno zdefiniować profilu ruchu, może być potrzebne poświęcenie trochę czasu na pracę z ulubionym narzędziem przechwytywania sieci.
  • Ograniczenie RPC i DCOM do określonych portów. Domyślnie wywołania RPC i DCOM będą używać dowolnych portów, które są dostępne podczas uruchamiania odpowiedniego serwera aplikacji i generowania żądania połączenia lub gniazda. Poprzez ograniczenie zakresu dostępnych portów ograniczany jest również akceptowany profil ruchu.

 Do początku strony Do początku strony

Definiowanie zakresu zabezpieczeń

W tym procesie występuje wiele aspektów, a ponieważ istnieje kilka podstawowych reguł, to w proces decyzyjny trzeba zaangażować wszystkich menedżerów działów bezpieczeństwa, sieci, aplikacji i prawnych. Tak może być lepiej dla wszystkich przeprowadzanych technicznych analiz i decyzji projektowych; zapewnienie zgodności z regulacjami prawnymi może pozwolić uniknąć instalowania aplikacji X jako partycji podrzędnej wraz z aplikacją Y na partycji podrzędnej tego samego hosta wirtualnego.

 Do początku strony Do początku strony

Zabezpieczenia aplikacji

Powinno się unikać mieszania wirtualnych aplikacji lub serwerów o różnych kontekstach zabezpieczeń wewnątrz pojedynczej partycji nadrzędnej; w szczególności, jeśli jedna lub kilka z nich styka się z siecią. Ochrona serwera Exchange staje się znacznie trudniejsza, jeśli sąsiednie partycje podrzędne lub co gorsza partycja nadrzędna służy do utrzymywania serwera gier. Jest to inne miejsce, w którym programy ISA lub TMG mogą zaoferować swoje usługi ochrony pomiędzy hostami. Ponieważ partycje podrzędne na oddzielnych partycjach nadrzędnych znajdują się faktycznie w innych sieciach, można potencjalnie użyć programu ISA lub TMG do izolowania tych aplikacji i uzyskania większego bezpieczeństwa ogólnego, niż gdyby instalacja miała miejsce na dedykowanym sprzęcie.

Najlepsze rozwiązania praktyczne:

  • Instalowanie systemu Windows Server 2008 Core na partycji nadrzędnej. Dzięki temu ograniczany jest obszar ataków i do minimum zmniejszone są wymagania związane z aktualizacjami. Ponieważ system Windows 2008 Core nie obsługuje aplikacji, które bazują na mechanizmach interfejsu użytkownika systemu Windows, ułatwia to unikanie instalowania nieistotnych aplikacji na partycji nadrzędnej.
  • Każda partycja podrzędna danej partycji nadrzędnej powinna mieć prawie identyczne zabezpieczenia. Na przykład partycje podrzędne Exchange i SharePoint, do których uzyskują dostęp użytkownicy z Internetu, w miarę możliwości powinny spełniać te same wymagania, dotyczące zabezpieczeń i dostępu. Nie można tego zapewnić, jeśli serwery Exchange i SharePoint oraz serwery gier są instalowane jako partycje podrzędne tej samej partycji nadrzędnej.
  • Partycja nadrzędna musi być zaktualizowana (aktualizacje, poprawki). Luki w zabezpieczeniach partycji nadrzędnej przenoszą się potencjalnie na wszystkie utrzymywane partycje podrzędne.
  • Każda partycja podrzędna musi być zaktualizowana. Chociaż niezaktualizowana partycja podrzędna zasadniczo nie stanowi takiego zagrożenia, jak niezaktualizowana partycja nadrzędna, to złamanie zabezpieczeń partycji podrzędnej udostępnia partycję nadrzędną, umożliwia przeprowadzenie ataku na partycję nadrzędną, co stanowi potencjalne zagrożenie dla wszystkich utrzymywanych partycji podrzędnych; niezależnie od ich podatności na to konkretne zagrożenie lub ich podobieństwo sieciowe do partycji podrzędnej, której zabezpieczenia zostały złamane.
  • NIE WOLNO używać partycji nadrzędnej jako stacji roboczej. Im mniej aplikacji zostaje zainstalowanych i uruchomionych na partycji nadrzędnej, tym mniejszy obszar jest udostępniany (w kontekście ataków). Jeśli na partycji nadrzędnej instalowany jest system Windows Server 2008 Core, pozwala to znacznie lepiej unikać zagrożeń.
  • Ograniczanie dostępu i możliwości zarządzania do partycji nadrzędnej. Zgodnie z opisem w dalszej części artykułu, konta posiadające uprawnienia do zarządzania partycją nadrzędną w efekcie końcowym mają pełną kontrolę na wszystkimi partycjami podrzędnymi.
  • Używanie partycji nadrzędnej, wykorzystującej moduł TPM wraz z programem BitLocker. Im bardziej głębokie możliwe jest wymuszenie kontroli dostępu do partycji nadrzędnej, tym lepsza jest ochrona partycji podrzędnych.

 Do początku strony Do początku strony

Zabezpieczenia sieci

W środowisku wirtualnym szczególne znaczenie ma kwestia zarządzania przepływem ruchu partycji podrzędnych, partycji nadrzędnej i sieci fizycznej. Jeśli gość ma bezpośredni dostęp do dowolnej sieci fizycznej, to potencjalnie stanowi większe zagrożenie dla swoich siostrzanych partycji podrzędnych i partycji nadrzędnej niż w przypadku, kiedy jego ruch jest wymuszony poprzez kontrolę ruchu za pomocą programu, takiego jak ISA Server czy Forefront TMG. Chociaż definiowanie sieci, która narzuca taką kontrolę ruchu, ma istotne znaczenie dla projektu sieci, to kontrola zarządzania tej sieci jest nawet jeszcze bardziej ważna.

Ruch związany z routingiem serwerów ISA lub TMG stanowi miejsce, gdzie nie można zapewnić żadnych zabezpieczeń sieci, po prostu ze względu na to, że ruch został skutecznie usunięty ze ścieżki. Chociaż przypadek taki wygląda identycznie jak pomyłkowe połączenie kabli sieciowych w centrum danych, trzeba przeanalizować te sytuacje, ponieważ nie będą dostępne żadne oczywiste wskaźniki wizualne pomyłek w sieciach wirtualnych, takie jak w przypadku kabli sieciowych podłączonych do niewłaściwego portu panelu lub przełącznika. Identyfikowanie tych problemów jest odpowiednio trudniejsze i bardziej czasochłonne, a w efekcie końcowym bardziej kosztowne. Najlepszym sposobem unikania takich sytuacji jest zdefiniowanie i wymuszenie w centrum danych bardzo przejrzystych zasad kontroli zmian i systemów monitorowania/raportowania.

Najlepsze rozwiązania praktyczne:

  • Unikanie podłączania partycji nadrzędnej do Internetu bez dodatkowej ochrony. Pomimo że oprogramowanie Windows Server 2008 Filtering Platform stanowi znacznie silniejszą zaporę, niż ma to miejsce w przypadku poprzednich wersji systemu Windows, zalecenia praktyczne zabezpieczeń sieci narzucają, że w odniesieniu do bezpieczeństwa sieci należy stosować warstwy. Zadanie to można zrealizować przy użyciu zewnętrznego urządzenia filtrowania warstwy 3 pomiędzy połączeniem partycji nadrzędnej a Internetem. W tym celu dobrze sprawdza się program ISA Server lub Forefront TMG uruchomiony na oddzielnym hoście fizycznym.
  • **Unikanie podłączania partycji nadrzędnej do dowolnej sieci wirtualnej, chyba że jest to absolutnie konieczne.**Ponieważ partycja nadrzędna ma podstawowe znaczenie do utrzymania prawidłowego działania partycji podrzędnych i ponieważ partycja nadrzędna prawdopodobnie korzysta z co najmniej jednej sieci fizycznej, to im mniej udostępnionych zostanie wejść do partycji nadrzędnej z partycji podrzędnych, tym lepiej. Na przykład wirtualne sieci „Local” platformy Hyper-V nie są widoczne dla partycji nadrzędnej, tak więc są dobrym wyborem, by używać je jako izolowane sieci obwodowe przydatne jedynie dla podłączonych partycji podrzędnych.
  • Unikanie współużytkowania pomiędzy wieloma gośćmi tego samego internetowego połączenia przełącznika wirtualnego. Nie można zapewnić bezpieczeństwa ruchu w sieci, jeśli partycja podrzędna serwera gier współużytkuje połączenie internetowe razem z partycjami podrzędnymi programów ISA/TMG. Lepszym rozwiązaniem jest, aby wszystkie partycje podrzędne, dla których potrzebny jest dostęp do sieci Internet, miały ten dostęp realizowany poprzez partycję podrzędną ISA/TMG.
  • Unikanie łączenia segmentów sieci obwodowej na pojedynczej partycji nadrzędnej. W wielu instalacjach użycie sieci obwodowych przewidziane jest do zbudowania granic zabezpieczeń pomiędzy sieciami o różnych zaufaniach. Umieszczenie tych wszystkich maszyn i sieci na tej samej partycji nadrzędnej może w sposób niezamierzony utworzyć mostki pomiędzy tymi granicami zabezpieczeń poprzez jedno lub kilka wirtualnych połączeń sieci partycji nadrzędnej lub poprzez pomyłkowe przypisanie serwera do nieodpowiedniej sieci wirtualnej.
  • Unikanie redukcji projektu sieci obwodowej w celu uproszczenia projektu sieci wirtualnej. Projekt sieci obwodowej był utworzony tak, by spełniać wymagania narzucone administratorowi przez różne źródła. Jest mało prawdopodobne, że jeśli projekt nie może zostać zmniejszony w wersji sprzętowej, to można go zredukować w sieciach wirtualnych.

 Do początku strony Do początku strony

Partycja nadrzędna

Niezależnie od tego, czy instalacja maszyny wirtualnej jest umieszczona wewnątrz, czy na obwodzie sieci, partycja nadrzędna jest najważniejsza i tym samym jest najbardziej krytyczną maszyną wirtualną. Jeśli ujawnione zostają zabezpieczenia partycji nadrzędnej lub ulega ona awarii, wszystkie jej partycje podrzędne są zagrożone.

Najlepsze rozwiązania praktyczne:

  • Używanie sprzętu, który przeszedł testy Windows Hardware Quality Labs i oceniony został jako „certified for”:
  • Windows Server 2008. Jeśli oczekujemy funkcjonalności i niezawodności klasy serwera, nie można spodziewać się, że uzyskana ona zostanie na bazie urządzeń i sterowników klasy komputera domowego. Inwestycja dotycząca urządzeń i związanych z nimi sterowników, które zostały opracowane i przetestowane, by spełniać wymagania obciążeń klasy serwera, jest znacznie większa, ale pozwala utrzymać funkcjonalność instalacji wirtualnych podczas dużych obciążeń. W szczególności, chociaż zazwyczaj jest prawdą twierdzenie, że sterowniki napisane dla systemu Windows Vista będą funkcjonowały w systemie Windows Server 2008, to jednak wszystko wskazuje na to, że nie będą w stanie zrealizować większych obciążeń wnoszonych przez aplikację serwera lub wirtualizację.
  • Hyper-V. Poprzez ograniczenie listy sprzętu do urządzeń spełniających wymagania testów WHQL, w szczególności ukierunkowane na technologię Microsoft Hypervisor, zapewnione zostają większe szanse na to, że instalacja wirtualna będzie działać prawidłowo. Wielu dostawców sprzętu ściśle współpracuje ze wszystkimi dostawcami serwerów wirtualizacji, by przetestować prawidłowość działania swojej oferty dla jednej lub kilku platform wirtualizacji.
  • Utrzymywanie aktualnych wersji sterowników systemowych. Jedną z najczęściej występujących przyczyn problemów serwerów sieciowych to sterowniki systemowe, a najczęściej sterowniki sieci. Sterowniki systemowe ściśle współpracują z innymi wysoko wydajnymi sterownikami, takimi jak sterowniki obecnych rozwiązań wirtualizacji, ale wydajność i stabilność sterowników systemowych jest nawet ważniejsza. Chociaż nie zawsze jest to możliwe, w szczególności w środowiskach testowych, powinno się zawsze brać pod uwagę stosowanie w instalacjach produkcyjnych wyłącznie podpisanych sterowników.
  • Używanie systemu Windows Server 2008 Core dla partycji nadrzędnej. Ze wszystkich opcji instalacji systemu Windows Server w ten sposób zapewniony jest jak najmniejszy obszar możliwych ataków i jednocześnie ograniczone zostają możliwości użytkownika do osłabienia tego stanu zabezpieczeń.
  • Wyłączanie dla partycji nadrzędnej wszystkich kart sieciowych z połączeniami zewnętrznymi. Po utworzeniu „zewnętrznego” przełącznika wirtualnego, który używany jest przez partycje podrzędne, powinno się wyłączyć dla partycji nadrzędnej odpowiednią wirtualną kartę sieciową, aby uniemożliwić do niej dostęp z Internetu.
  • Jeśli nie jest możliwe wyłączenie „zewnętrznego” wirtualnego przełącznika dla partycji nadrzędnej, należy usunąć powiązania wszystkich protokołów powyżej warstwy 3 i dla tych kart sieciowych włączyć WFP. Poprzez usunięcie powiązań protokołów i ustawienie restrykcyjnych zasad platformy WFP, host, który nie może się komunikować przy użyciu protokołu, na którym opiera się atak, nie jest podatny na taki atak z sieci, w której usunięte zostało powiązanie z tym protokołem lub protokół ten jest filtrowany. Inaczej mówiąc, „jeśli ja cię nie słyszę, nie możesz mi przeszkadzać”.
  • Jeśli poprzednie zalecenie nie może być wdrożone dla ochrony partycji nadrzędnej, należy użyć zewnętrznej zapory warstwy 2+. Nie powinny istnieć powody, dla których partycja nadrzędna staje się dostępna dla ataków przeprowadzanych z Internetu. Jeśli taka sytuacja ma miejsce, powinno się ponownie przeprowadzić ocenę planowania.
  • Używanie połączeń sieci dedykowanych, Out-Of-Band (OOB) w celu zapewnienia możliwości zarządzania partycją nadrzędną.
  • Połączenie dedykowane: poprzez zapewnienie połączenia sieci, które nie jest zależne od żadnej sieci wirtualnej, partycja nadrzędna pozostaje dostępna, nawet jeśli ulegają awarii mechanizmy sieci wirtualnych.
  • Połączenie OOB: poprzez oddzielenie zarządzania partycją nadrzędną od zarządzania siecią gości można efektywnie izolować partycję nadrzędną od sieci, gdzie pojawiają się ataki wykorzystujące aplikacje.
  • **Używanie sprzętu obsługującego moduł TPM i program Bitlocker w systemie Windows Server 2008 do kontroli dostępu do partycji nadrzędnej oraz do ochrony dysków partycji podrzędnych i plików definicji przed nieautoryzowanym dostępem.**Kradzież serwera jest zdarzeniem realnym, którego możliwość trzeba uwzględnić w każdej instalacji, a zdobycie wielu serwerów w jednym pudełku jest jeszcze bardziej atrakcyjnym łupem. Dla złodziei serwery są skutecznie ukrywane poprzez umieszczenie wszystkich gości na dysku chronionym za pomocą programu Bitlocker.

 Do początku strony Do początku strony

Połączenia partycji nadrzędnej i partycji gości

Wymagania dla sieci wirtualnych muszą być równoważone z potrzebami zabezpieczeń całego środowiska. Na przykład pojedyncza sieć wirtualna dla każdego połączenia partycji skojarzona z pojedynczą kartą sieciową stanowi dla hosta lepszą wydajność, niż fizyczne połączenie współużytkowane przez wiele partycji poprzez pojedynczy przełącznik wirtualny. Jeśli partycja podrzędna narzuca porównywalnie nieduże wymagania sieciowe, to może nadawać się do współużytkowania sieci wirtualnej z innymi partycjami podrzędnymi.

W Dodatku A znaleźć można szczegółowe informacje dotyczące różnych definicji sieci oraz opisy korzyści i problemów z nimi skojarzonych.

Analiza wydajności partycji podrzędnych programów ISA/TMG.

Przed zdefiniowaniem zasobów maszyn wirtualnych programów ISA/TMG administratorowi potrzebny będzie „wzór” wydajności. W celu jego uzyskania trzeba zgromadzić informacje dotyczące wydajności w dłuższym okresie czasu (co najmniej dwa tygodnie) przy użyciu zaleceń monitora wydajności ISA Server Performance Best Practices dla używanej wersji programu ISA lub przy użyciu odpowiedniego monitora wydajności TMG, co pozwala uzyskać model statystyczny używanych zasobów komputera. Po wykonaniu tego zadania można sensownie określić minimalne zasoby maszyny, które będą potrzebne do zapewnienia działania serwera ISA/TMG.

Po zdefiniowaniu wymagań maszyny wirtualnej ISA/TMG następnym etapem jest zbudowanie środowiska testowego, gdzie można zainstalować i łącznie przetestować obciążenia związane z operacjami i ruchem spodziewane w środowisku produkcyjnym. Jedynie poprzez wstępne przetestowanie można określić, w jaki sposób najlepiej dystrybuować zasoby pomiędzy partycjami podrzędnymi.

 Do początku strony Do początku strony

CPU & RAM

Każde obciążenie serwera funkcjonujące na danym poziomie w określonej konfiguracji sprzętu będzie działać gorzej w tej samej konfiguracji sprzętu, jeśli zasoby maszyny będą współużytkowane przez wiele obciążeń. Stwierdzenie to jest prawdziwe niezależnie, czy obciążenie jest łączone na pojedynczej instancji systemu operacyjnego, czy obciążenia są współużytkowane przez wiele maszyn wirtualnych. W rzeczywistości wymagania zasobów dotyczące zarządzania wieloma obciążeniami zostają zwiększone, jeśli obciążenia te zostają skojarzone z poszczególnymi instancjami systemu operacyjnego. Z tego powodu administrator powinien zapoznać się dokładnie z zaleceniami najlepszych rozwiązań praktycznych dla instalowanej technologii wirtualizacji. Pomimo że dla danej klasy (pulpit, serwer, centrum danych) funkcjonalność wirtualizacji oferowana przez każdego dostawcę jest podobna, implementacje tych funkcji mogą generować różne wyniki dla danego obciążenia serwera, a także dla kombinacji różnych obciążeń.

Najlepsze rozwiązania praktyczne:

  • **Unikanie na tej samej partycji nadrzędnej łączenia partycji podrzędnych wymagających dużych zasobów.**Programy ISA/TMG mogą pochłaniać wiele zasobów, w zależności od profilu ruchu i używanych dodatków producentów niezależnych. Jeśli wiele obciążeń serwera wymagającego dużych zasobów rywalizuje w dostępie do tych samych zasobów, to wydajność wszystkich obciążeń może istotnie spaść, a nawet może doprowadzić do stanu odmowy usługi.
  • Przydzielanie programom ISA/TMG możliwie dużo zasobów procesora i pamięci. Ponieważ programy te muszą współużytkować zasoby z innymi partycjami podrzędnymi, to im więcej pamięci i zasobów procesora zostanie im przydzielone, tym lepsza będzie ich wydajność na maszynie wirtualnej.
Uwaga:
Ani sam ISA Server, ani żadne dodatki producentów niezależnych uruchamiane wewnątrz programu ISA Server nie wykorzystują więcej niż 4 procesory lub więcej pamięci niż 4GB RAM.Program TMG nie narzuca takich ograniczeń.

 

  • Używanie technologii wirtualizacji, która jest odpowiednia dla obciążenia. Jeśli profil ruchu wymaga wydajności sieci na poziomie 1Gbps lub większej, używanie sprzętowego produktu wirtualizacji, które zapewnia maksymalną wydajność 100Mbps, spowoduje niedobory wydajności i przeciążenie serwera.

 Do początku strony Do początku strony

Dyski

Ponieważ domyślny mechanizm rejestrowania programów ISA/TMG korzysta z lokalnej instancji usługi SQL (odpowiednio MSDE 2000, SQL Express 2005), wymagania dotyczące rejestrowania dla silnie obciążonego serwera ISA/TMG mogą być dość wysokie. Na przykład wyjściowe serwery proxy zarządzane przez Microsoft IT (MSIT) generują dziennie ponad 10GB na instancję dziennika dla jednego serwera. Jeśli bieżąca instalacja ISA/TMG korzysta z MSDE/SQLE, to określany wzór wydajności musi ten fakt uwzględniać. Najlepsze rozwiązania praktyczne dla rejestrowania programu ISA Server 2004 przedstawiają pewne podstawowe czynniki wydajności, które mogą być używane do oszacowania obciążenia funkcjami rejestrowania wprowadzanymi dla obciążenia związanego z danym ruchem. Pomimo że wymagania dla TMG nie zostały jeszcze w pełni zdefiniowane, można przyjąć, że będą wyższe niż w przypadku ISA, ze względu na dodatkowe zarządzanie ruchem udostępniane przez program TMG.

Najlepsze rozwiązania praktyczne:

  • Używanie oddzielnych dysków dla instancji systemu operacyjnego partycji podrzędnej i miejsc przeznaczonych do rejestrowania. Nie można ulec pokusie połączenia tych funkcji dla definicji serwera niezależnie od obciążenia serwera. Jeśli wszystkie partycje podrzędne współużytkują dysk partycji nadrzędnej, gdzie znajdują się odpowiednie dyski wirtualne, konflikty zapisów pomiędzy gośćmi mogą powodować nieregularne lub dłuższe przerwy w rejestrowaniu. Jeśli każdy gość korzysta z pojedynczego dysku VHD dla wszystkich dysków logicznych, kumulowane konflikty dotyczą tylko tego gościa.
  • Używanie dedykowanych dysków dla rejestrowania i raportowania serwerów ISA/TMG. Koszt związany z translacją aktywności dysku partycji podrzędnej na dostęp do pliku na partycji nadrzędnej może być znaczący w przypadku dużych obciążeń dysku przez operacje we/wy. Poprzez zapewnienie bezpośredniego lub przekazywanego dostępu koszt ten jest znacznie zmniejszany i odpowiednio zmniejszane jest zagrożenie awariami rejestrowania i ruchu związanego z tą rejestracją.
Uwaga:
Poprzez przypisanie dedykowanych dysków do partycji podrzędnej utracona zostaje możliwość zastosowania programu Windows Bitlocker do ochrony danych przechowywanych na partycji podrzędnej, jeśli skradziona zostanie partycja nadrzędna.

 

 Do początku strony Do początku strony

Sieci

Innym aspektem wirtualizacji serwera jest w przypadku partycji nadrzędnej efekt mieszania wielu usług wykorzystujących duży ruch na jednym fizycznym połączeniu sieci. Nawet jeśli pozostające zasoby hosta zostają odpowiednio rozdzielone pomiędzy partycje podrzędne, o ile wszystkie partycje są aplikacjami silnie korzystającymi z sieci (jak witryny Web, serwery pocztowe czy serwery ISA/TMG) i oczekuje się, że aplikacje te obsługują rzeczywistych klientów i klientów wirtualnych nie-lokalnych, to może okazać się korzystne zapewnienie każdej partycji podrzędnej jej własnego interfejsu do rzeczywistej sieci. To może komplikować model wirtualnej sieci i procesy zarządzania zdefiniowane dla instalacji wirtualnych, ale nastąpi poprawa wydajności i zabezpieczeń usług wirtualnych.

Najlepsze rozwiązania praktyczne:

  • Utrzymywanie aktualnych wersji sterowników kart sieciowych dla partycji nadrzędnej, gdzie praktycznie należy stosować jedynie podpisane sterowniki.
  • Używanie narzędzi testowania wydajności aplikacji (Exchange/SharePoint, IIS itp.) do sprawdzenia wydajności sieci w warunkach laboratoryjnych przed zainstalowaniem systemu w środowisku produkcyjnym.
  • Przypisywanie fizycznej karty sieciowej do każdego systemu operacyjnego gościa tam, gdzie jest to możliwe.
  • MS Loopback *nie* jest interfejsem o dużej wydajności.

 Do początku strony Do początku strony

Zarządzanie

 Do początku strony Do początku strony

Dostęp do partycji nadrzędnej

Najlepsze rozwiązania praktyczne:

  • Utrzymywanie aktualnych wszystkich partycji podrzędnych i partycji nadrzędnych. Dla większości obciążeń serwera w różnym stopniu zapewniane jest rejestrowanie zdarzeń, ale są one przydatne w stopniu proporcjonalnym do ilości czasu spędzonego na ich monitorowaniu. Ignorowany dziennik zdarzeń zabezpieczeń wypełniony informacjami o niepowodzeniu logowania jest doskonałym narzędziem dla napastnika, który chce uzyskać informacje o kontach, ale nie przedstawia wartości dla administratora systemu, który ignoruje to zagrożenie.
  • Narzucenie silniejszych wymagań bezpieczeństwa dla partycji nadrzędnej niż dla każdej jej partycji podrzędnej. Na przykład konta służące do zarządzania kontrolujące serwer VM Exchange nie powinny mieć dostępu do zarządzania partycją nadrzędną. Ponieważ konta o dostępie umożliwiającym zarządzanie partycji nadrzędnej w rezultacie końcowym mają w odniesieniu do gościa „prawa większe niż admin”, to dostęp do partycji nadrzędnej powinien być mocno ograniczony. W celu zapobiegania przypadkowym przerwom działania wielu partycji podrzędnych powinno się unikać używania tych samych kont zarządzania partycją nadrzędną i partycjami podrzędnymi. Pomimo że zasada ta nie uniemożliwi kontom zarządzania partycją nadrzędną spowodowanie odmowy usługi dla partycji podrzędnych, to można zminimalizować te zagrożenia poprzez używanie kont zarządzania Exchange.

 Do początku strony Do początku strony

Kontrola zmian

Kilka kwestii związanych z wpływem na funkcjonalność serwera wiąże się bezpośrednio z nieudokumentowanymi zmianami konfiguracji. Administratorzy serwera logując się do systemu najczęściej oczekują, że serwer znajduje się w określonym stanie i wykonują swoje zadania tak, jakby stan ten rzeczywiście istniał. Zbyt często serwery przestają działać dlatego, że bieżąca aktywność była w konflikcie z poprzednio wykonaną operacją, co kończy się nieoczekiwanym działaniem serwera lub co gorsza awarią serwera.

Najlepsze rozwiązania praktyczne:

  • Definiowanie i wymuszanie procesów kontroli zmian. Tylko poprzez dokładne zarządzanie zmianami administrator może wiedzieć, w jakim stanie znajdują się instalacje wirtualne i w jaki sposób funkcjonują. Nawet z pozoru niewielkie zmiany mogą mieć bardzo szkodliwy wpływ, jeśli zmiany te nie są znane podczas planowania bądź wykonywania innych zmian.
  • Dodatkowe informacje opisujące najlepsze rozwiązania stosowane do zapewnienia kontroli zmian znaleźć można w artykuleParent Access

Bezpieczeństwo aplikacji

Zgodnie z wcześniejszymi uwagami, instalacje wirtualne muszą uwzględniać relatywny poziom zabezpieczeń serwerów. Mieszanie na jednym hoście partycji podrzędnych o niepodobnych poziomach zabezpieczeń nie jest zalecane, jako że podejście takie może naruszyć zasadę możliwie najmniejszych uprawnień i możliwie niskiego poziomu dostępu; w szczególności, jeśli struktura sieci wymaga, żeby jeden lub kilka niepodobnych do siebie aplikacji współużytkowały wspólną sieć, a zwłaszcza razem z partycją nadrzędną. Oczywiście zakres tej separacji będzie zależny od posiadanych specyficznych zasobów, ponieważ potrzeby i wymagania nie są jedynymi zaleceniami odpowiednimi dla wszystkich instalacji. W poniższej tabeli przedstawiono przykład, w jaki sposób środowisko może definiować priorytety dla aplikacji lub usług:

Aplikacja lub usługa Poziom zabezpieczeń (1-3; 1=najwyższy)
Zabezpieczenia (zapora, IDS) 1
Usługi domeny 1
DNS / WINS 1
Email / Webmail 2
Współpraca 2
Kadry / Personel 2
Zewnętrzne aplikacje sieci Web 2
Pliki & Drukowanie 3
Wewnętrzne aplikacje sieci Web 3

Należy zwrócić uwagę, że pozycje Zabezpieczenia i Usługi domeny ocenione zostały tak samo, co niekoniecznie oznacza, że należy je instalować razem jako partycje podrzędne na tym samym hoście wirtualnym. Podobnie te przykładowe przypisania nie muszą spełniać definicji ważności relatywnych obowiązujących w organizacji. W przypadku instalacji, dla których koszt jest głównym wskaźnikiem, takich jak Small Business Server czy Essential Business Server, nie będzie można uniknąć takich połączeń, ale nie powinny być instalowane bez poważnej analizy pod kątem rozwiązań alternatywnych. Na przykład, ponieważ oprogramowanie Windows Essential Business Server instaluje trzy oddzielne maszyny, serwer Security można zainstalować jako partycję podrzędną na jednym komputerze, a pozostałe serwery zainstalować jako partycje podrzędne na zupełnie innym komputerze. Oczywiście decyzje te muszą być podejmowane przy uwzględnieniu pozostałych czynników, które określają budżet centrum danych, bezpieczeństwo, poziom funkcjonalności i wymagania inspekcji.

 Do początku strony Do początku strony

Porównanie bezpieczeństwa sieci i wydajności

Poniższe schematy to uproszczone formy najczęściej spotykanych topologii sieci, które mogą być używane w instalacjach wirtualizacji. Każdy rysunek przedstawia specyficzną kombinację połączeń sieci wirtualnych i fizycznych, jak również poniżej przedstawiono omówienie zalet i wad każdego projektu. Na schematach dla zachowania przejrzystości zostało pominięte używanie wielu serwerów dla zapewnienia odporności na uszkodzenia lub równoważenia obciążeń. W miejscach, w których pojedyncza jednostka (taka jak ISA czy TMG) stanowi potencjalnie zator sieci wydajności sieci, należy stosować mechanizmy współdzielenia obciążeń, takie jak NLB.

.

Rysunek A1

Na schemacie ilustrowanym rysunkiem A1 przedstawiono konfigurację użycia funkcji znakowania sieci VLAN (801.1Q VLAN) do separacji wewnętrznych i zewnętrznych sieci wewnątrz jednego przełącznika wirtualnego, który sam skojarzony jest z pojedynczą kartą sieciową podłączoną do przełącznika z obsługą sieci VLAN. Wszystkie partycje korzystają z tych samych wirtualnych i fizycznych łączy do uzyskania dostępu do sieci o niepodobnych kontekstach zabezpieczeń, gdzie ich ruch rozróżniany jest tylko poprzez znaczniki 802.1Q. Ponieważ separacja sieci jest wyłącznie logiczna, to dzięki temu powstaje sytuacja, w której separacja wewnętrznego i zewnętrznego ruchu może zostać w prosty sposób utracona poprzez błędną konfigurację skojarzonego wirtualnego i/lub fizycznego przełącznika. Zabezpieczenie sieci zarządzania partycją nadrzędną jest zależne od tej samej struktury sieci, która przenosi potencjalnie złośliwy ruch, co stawia partycję nadrzędną i partycje podrzędne na tym samym poziomie ryzyka. Ogólna wydajność sieci jest ograniczona poprzez kombinację wydajności dla połączenia fizycznej karty sieciowej, a także przetwarzania obciążeń wnoszonych przez pojedynczą strukturę sieci wirtualnej i użycie znakowania sieci 802.1Q VLAN.

.

Rysunek A2

Na schemacie ilustrowanym rysunkiem A2 poprawiona została ogólna wydajność sieci i poziom jej zabezpieczeń poprzez wprowadzenie oddzielnych wirtualnych i fizycznych połączeń sieci dla wewnętrznego i zewnętrznego ruchu. Warto zwrócić uwagę, że ponieważ połączenie zarządzania partycją nadrzędną pozostaje zależne od połączenia współużytkowanego z wewnętrzną siecią, to bezpieczeństwo sieci partycji nadrzędnej zwiększa się jedynie w takim stopniu, w jakim wzrasta łącznie bezpieczeństwo partycji podrzędnych. Pozostaje jednak potencjalna możliwość utworzenia mostka pomiędzy wewnętrzną i zewnętrzną siecią spowodowana błędną konfiguracją wirtualnych sieci.

.

Rysunek A3

Na rysunku A3 nie została zmieniona wynikowa postać zabezpieczeń i wydajności partycji podrzędnych. Bezpieczeństwo partycji nadrzędnej zostało poprawione poprzez rozdzielenie sieci zarządzania partycją nadrzędną do karty sieciowej hosta, która nie jest powiązana ze sterownikiem wirtualizacji sieci i poprzez połączenie partycji nadrzędnej z wewnętrzną siecią za pośrednictwem sieci wirtualnej skojarzonej jedynie z partycją nadrzędną i serwerem ISA/TMG. Dzięki temu serwer ISA/TMG ułatwi ochronę partycji nadrzędnej przed atakami z sieci wewnętrznej; nawet przed atakami z partycji podrzędnych o złamanych zabezpieczeniach, znajdujących się na tym samym hoście. Pomimo że możliwe jest użycie sieci 802.1Q do logicznego rozdzielenia sieci wewnętrznych i zewnętrznych, zabezpieczenia i wydajność oferowane przez taką konfigurację nie są lepsze niż w przypadku konfiguracji prezentowanej na rysunku A2.

.

Rysunek A4

Na rysunku A4 ogólne zabezpieczenia sieci zostały jeszcze bardziej zwiększone poprzez umieszczenie serwera ISA/TMG pomiędzy partycją nadrzędną i partycjami gości, jak również siecią wewnętrzną. Końcowe bezpieczeństwo sieci instalacji zostało zmniejszone poprzez ponowne zastosowanie znakowania 802.1Q VLAN do separacji pomiędzy partycją nadrzędną a partycjami gości. W przypadku tej instalacji działanie serwera ISA/TMG w zakresie ochrony partycji nadrzędnej przed atakiem z partycji podrzędnych ma miejsce, jeśli prawidłowo są skonfigurowane wirtualne sieci. Wydajność sieci wszystkich partycji jest w pełni zależna od wydajności zapewnianej przez serwer ISA/TMG.

.

Rysunek A5

Na rysunku A5 przedstawiono możliwie najlepsze zabezpieczenia sieci bez dodatkowego stosowania IPsec czy innych mechanizmów zabezpieczania warstwy sieci, takich jak 802.1x. Partycje podrzędne zostały przypisane do sieci wirtualnej, która jest zupełnie oddzielona od sieci wirtualnej przypisanej do partycji nadrzędnej. Ogólna wydajność instalacji wirtualnej nadal jest zależna od wydajności zapewnianej przez serwer ISA/TMG, ale jest lepsza niż w przypadku konfiguracji prezentowanej na rysunku A4, ponieważ dla sieci wirtualnych usunięty został koszt przetwarzania sieci 802.1Q VLAN.

 Do początku strony Do początku strony

Bibliografia

 Do początku strony Do początku strony

Narzędzia do testowania

 Do początku strony Do początku strony

Pojęcia

Uwaga:
wyjaśnienia tych pojęć zaczerpnięte zostały z:MSDN blogHyper-V Terminology

 

Hypervisor

Hypervisor jest składnikiem najniższego poziomu odpowiedzialnym za interakcję z najważniejszymi urządzeniami sprzętu. Hypervisor jest odpowiedzialny za tworzenie, zarządzanie i usuwanie partycji. Składnik ten kontroluje dostęp do zasobu procesora i wymusza działanie dostarczonych z zewnętrz zasad dostępu do pamięci i urządzeń.

Partycja

Partycja jest podstawową jednostką zarządzaną przez składnik hypervisor. Partycja jest abstrakcyjnym kontenerem, składającym się z izolowanego procesora i zasobów pamięci, wraz z zasadami dostępu do urządzenia. Partycja jest prostszą koncepcją niż maszyna wirtualna – może być używana poza kontekstem maszyn wirtualnych, by zapewnić lepiej izolowane środowisko wykonywania.

Partycja główna (Root Partition)

Jest to pierwsza partycja na komputerze. W szczególności jest partycją odpowiedzialną za początkowe uruchomienie składnika hypervisor i jest także jedyną partycją, która ma bezpośredni dostęp do pamięci i urządzeń.

Partycja nadrzędna (Parent Partition)

Partycja nadrzędna umożliwia wywoływanie składnika hypervisor i żądanie utworzenia nowych partycji. W pierwszej wersji technologii Hyper-V partycja nadrzędna i główna to była ta sama partycja – i dlatego może być tylko jedna partycja nadrzędna.

Partycja podrzędna (Child Partition)

Partycje podrzędne są partycjami utworzonymi przez składnik hypervisor w odpowiedzi na żądanie partycji nadrzędnej. Istnieje kilka ważnych różnic pomiędzy partycją podrzędną a partycją nadrzędną/główną. Partycje podrzędne nie mogą tworzyć nowych partycji i nie mają bezpośredniego dostępu do urządzeń (każda próba interakcji bezpośrednio ze sprzętem zostaje przekierowana do partycji nadrzędnej). Partycje podrzędne nie mają bezpośredniego dostępu do pamięci (kiedy partycja podrzędna próbuje uzyskać dostęp do pamięci, stos składnika hypervisor/wirtualizacji tworzy nowe mapowanie do innych lokalizacji pamięci).

Maszyna wirtualna (Virtual Machine)

Maszyna wirtualna jest specjalnym typem partycji podrzędnej. Maszyna wirtualna jest partycją podrzędną połączoną ze składnikami stosu wirtualizacji, które zapewniają funkcje, takie jak dostęp do emulowanych urządzeń czy możliwość zapisywania stanu wirtualnej maszyny. Jako że wirtualna maszyna jest zasadniczo specjalizowaną partycją, pojęcia „partycja” i „maszyna wirtualna” są często używane zamiennie, ale chociaż maszyna wirtualna zawsze będzie miała skojarzoną z nią partycję, to partycja nie zawsze musi być maszyną wirtualną.

System operacyjny gościa

Jest to system operacyjny/środowisko działania, występujące wewnątrz partycji. Historycznie patrząc, w przypadku oprogramowania Virtual Server/Virtual PC była mowa o „systemie operacyjnym hosta” i „systemie operacyjnym gościa”, gdzie host uruchomiony był w oparciu o sprzęt fizyczny, a gość funkcjonował w oparciu o hosta. W przypadku technologii Hyper-V wszystkie systemy operacyjne na komputerze fizycznym funkcjonują na szczycie składnika hypervisor, tak więc poprawnymi ekwiwalentami tych pojęć są w rzeczywistości „system operacyjny gościa nadrzędnego" i „system operacyjny gościa podrzędnego". Pojęcia te były dla wielu osób mylące i zamiast nich używane są pojęcia „fizyczny system operacyjny" i „system operacyjny gościa", które odnoszą się odpowiednio do systemów operacyjnych gościa nadrzędnego i podrzędnego.

Migawka maszyny wirtualnej

Migawka maszyny wirtualnej jest obrazem maszyny wirtualnej w danym punkcie czasu, który uwzględnia dysk, pamięć i stan urządzeń maszyny wirtualnej w momencie wykonywania migawki. Migawka może być w dowolnym momencie użyta do przywracania stanu maszyny wirtualnej do stanu z określonego momentu czasu. Migawki maszyny wirtualnej mogą być wykonywane niezależnie od tego, jaki używany jest system operacyjny gościa podrzędnego i niezależnie od tego w jakim jest on stanie.

 Do początku strony Do początku strony

Windows Server 2008