Administratorzy Infrastruktury Microsoft poszukiwani… :)

30 marca 2016 at 19:06

Zmiany, zmiany, zmiany… Tak należałoby zacząć kolejny wpis Ostatnio pewnie zauważyliście, że nie miałem tyle czasu co wcześniej na redagowanie technicznych wpisów a było to związane m.in. ze zmianami w moim życiu zawodowym. Nastał czas, w którym przyszły nowe wyzwania (już nie tylko czysto techniczne). Mam okazję zbudować i pokierować nowym zespołem Administratorów Infrastruktury Microsoft w najprężniej rozwijającym się banku w Polsce (o tym co to za Bank – jeśli nie wiecie – dowiecie się np. z LinkedIn 😉 ). Oczywiście nie zamierzam całkowicie porzucać technicznych zagadnień, które najbardziej mnie kręcą, lecz chciałbym moją filozofię realizacji zadań, dążenia do celów, niezawodności systemów i usług oraz sprawnych wdrożeń zgodnych z oczekiwaniami klienta – przekazać również podwładnym i zbudować silny technicznie i zgrany zespół gotowy podejmować najcięższe i najciekawsze wyzwania Chcesz podjąć to wyzwanie razem ze mną? Aktualnie mam do obsadzenia 2 wakaty – APLIKUJ Krótki opis stanowiska: Implementacja nowych rozwiązań techniczno-systemowych w zakresie infrastruktury Microsoft Utrzymanie i rozwój systemów infrastruktury Microsoft Aktualizacje, kontrole zgodności, stałe podnoszenie poziomu bezpieczeństwa utrzymywanych systemów i aplikacji Zachowanie niezawodności, wysokiej dostępności oraz nieprzerwanej pracy oferowanych klientom usług Rozwiązywanie problemów oraz incydentów Realizacja zadań 2-giej i 3-ciej linii wsparcia Tworzenie dokumentacji technicznej, dokumentacji zmian oraz instrukcji obsługi […]

Listowanie atrybutów i typów atrybutów obiektów Active Directory

25 lutego 2016 at 11:23

Dla potrzeb dokumentacji systemu pojawiła się konieczność wy-listowania wszystkich atrybutów przypisanych do danej klasy obiektów Active Directory oraz typów danych, które mogą być wprowadzane jako wartości tych atrybutów. Zadanie niby proste, ale jednak mało oczywiste… Próbując odpytać o atrybuty konkretnego użytkownika w następujący sposób:

Otrzymamy co prawda wszystkie (albo prawie wszystkie) atrybuty obiektu, jednak otrzymamy również część nieistniejących w schemacie atrybutów. Są to atrybuty interpretowane przez polecenie typu „AccountIsDisabled”, „AccountIsLockedOut” , które nie występują jako atrybuty obiektu klasy użytkownik w Active Directory, lecz wynikają z wartości atrybutu „userAccountControl”. Podejście drugie – natywny powershell do AD

I znowu kicha… tym razem mamy mniej interpretowanego przez Powershella Outputu, ale wyświetliły się tylko parametry, które mają jakąś wartość Jak więc rozwiązać ten problem? Na przykład w następujący sposób:

W ten sposób uzyskamy ładny widok wszystkich atrybutów z informacjami o ich GUID’ach o tym czy są indeksowane etc. Dane będą wyglądać mniej więcej tak: Jedyną niedogodnością jest fakt, że musimy odpytać niejako 2 razy o atrybuty dla danej klasy (raz o atrybuty obowiązkowe, raz o atrybuty opcjonalne) aby mieć komplet danych. Enjoy

Obsługa błędów w poleceniach Exchange’a

9 lutego 2016 at 11:00

Każdy posługujący się w miarę swobodnie powershell’em administrator zna sposoby wychwytywania i obsługi błędów pojawiających się podczas wykonywania skryptów. Wśród nich „króluje” często metoda „try/catch”, która w skrócie wygląda mniej więcej tak:

ww. narzędzie jest bardzo przydatne, elastyczne i pozwalające na bardzo zaawansowane rozróżnianie i obsługę poszczególnych błędów, zwłaszcza, gdy do sekcji „catch” dodamy typ błędu, który chcemy obsłużyć np:

Z czym natomiast spotyka się niemal każdy początkujący administrator próbujący budować swoje skrypty używając metody „try/catch”? Z faktem, że cześć błędów nie jest wychwytywana… Dlaczego tak się dzieje? Najczęstszymi powodami są: Niepoprawna akcja przy napotkaniu błędu (polecenia obsługujące przełącznik „-ErrorAction”, powinny mieć ustawioną akcję na „stop”) Niepoprawne preferencje obsługi błędów dla danego zakresu ($ErrorActionPreference powinno być ustawione na „stop”) A, że administrator nie lubi jak mu wyskakują błędy, to ustawia sobie ww. wartości na „SilentlyContinue” / „Continue” i w momencie, gdy dorośnie do obsługi błędów zaczyna ostre debugowanie.. Sprawa natomiast wygląda ciekawiej w przypadku poleceń Exchange’a, które są wykonywane zdalnie w ramach sesji z serwerami Exchange’a. W takim wypadku praca z powershell’em + modułami Exchange’a i nawiązanie sesji wygląda mniej więcej tak:

Dodaliśmy sobie przystawkę, nawiązaliśmy sesję, ustawiliśmy preferencje obsługi błędów i testujemy interaktywnie na konsoli obsługę […]

Otwieranie Excela w wielu oknach

4 lutego 2016 at 16:12

Domyślnie po instalacji Excel’a otwierając wiele dokumentów mamy irytująca sytuację, że nie jesteśmy w stanie przeglądać kilku arkuszy na kilku monitorach. Musimy się przełączać pomiędzy okienkami, albo otwierać nowe instancje Excela i w nich otwierać arkusze. Sprawa dosyć irytująca… Aż dziw, że Microsoft nie pomyślał o zaszycie funkcjonalności umożliwiającej pracę z wieloma arkuszami rozłożonymi wielu monitorach Trzeba więc poprawić po twórcach! Aby tego dokonać wystarczy wykorzystać poniższy plik rejestru i zastosować go w systemie:

I cieszyć się mozaikowością dopasowania układu wielu arkuszy do swoich potrzeb. Mała rzecz, a cieszy. P.S. Testowane z Officem 2010.

DNS Cache – cóż to za „zwierz”? :)

14 stycznia 2016 at 19:35

W ostatnim czasie kilka razy miałem okazję rozwiązywać problemy (lub brać udział w konsultacjach) związanych bezpośrednio lub pośrednio z rozwiązywaniem nazw. Mechanizmy związane z rozwiązywaniem nazw (m.in. DNS) wydaj się być proste i przejrzyste, jednak okazuje się, że często panują „miejskie legendy” i ogromne kłopoty z namierzeniem źródeł niepoprawnego/nieoczekiwanego działania usług. Słowem wstępu rozwińmy kilka definicji, żeby uniknąć niedomówień i wątpliwości: DNS (ang. Domain Name System) – System nazw domenowych lub jak kto woli system rozwiązywania nazw. Strefa wyszukiwania do przodu (ang. Forward Lookup Zone) –  strefa DNS, która służy do rozwiązywania nazw DNS typu: mkrzanowicz.it na adresy IP: 185.38.248.202Strefa wyszukiwania do tyłu (ang. Reverse Lookup Zone) – strefa DNS, która służy do rozwiązywania adresów IP na nazwy DNS. I tutaj uwaga, w zależności od tego czy mamy zarejestrowane rekordy PTR, czy nie (oraz ile mamy ich zarejestrowanych dla podanego adresu IP) wyniki mogą być nieoczekiwane. Posłużmy się przykładem mojego bloga: Chcieliśmy się dowiedzieć co kryje się pod adresem IP: 185.38.248.202 i oczekiwaliśmy, że zwróci odpowiedź mkrzanowicz.it a zwrócił… nazwę serwera hostingującego… W moim przypadku nie ma z tym problemu – na pytanie, czy tak ma wyglądać Wasz wewnętrzny DNS musicie odpowiedzieć sobie sami, aczkolwiek cytując klasyka „nie wydaje mnie […]

© Marcin Krzanowicz