Skip to Content

IT nieuczesane.
category

Category: w-files

nie lubię UAC

hhgrrr! praca z UAC na fileserverze to masakra jakaś jest! jedyny sensowny sposób – odpalić poweshella ‘run as administrator’ i jechać icalc’iem… ale często z interfejsu jest po prostu nieporównywalnie łatwiej/szybciej.

jeśli zaloguje się jako ‘osoba z uprawnieniami administratora’ a nie ‘administrator’ to przy próbie wejścia do każdego katalogu dostaję komunikat, że nie mam uprawnień, czy mają zostać przydzielone. po kliknięciu ‘tak’ na ACL dopisywane jest ACE z moim loginem! przykład:

  • katalog ‘test’; SYSTEM:FC, Administrators:FC –> będzie krzyczał, że nie ma uprawnień pomimo, że konto należy do administratorów. dodane zostanie nowe ACE bezpośrednio nadające uprawnienia kontu osoby zalogowanej.
  • katalog ‘test’; SYSTEM:FC, Administrators:FC, Users:R –> nie dosć, że nie krzyczy przy wejściu do katalogu to [co byłoby konsekwentnie logiczne] pozwala założyć wewnątrz katalog nie ostrzegając o elewacji uprawnień.

fuj jakie ohydztwo. nie da się z tym pracować.

eN.

Ale o co chodzi?

Ta sama strona otwarta w dwóch różnych przeglądarkach. Potęga ciasteczek i ustawień językowych skazuje nas na starszą wersję programu jeśli wejdziemy na stronę złą przeglądarką :-o

Sketch up

niespodzianka

taki wesoły komunikat przywitał mnie po zalogowaniu na wXP SP3:

image

przez chwilę komputer zaczął zachowywać się dziwnie, po dwóch restartach można już było zalogować się normalnie. a w logu jak zwykle cisza i spokój… wtf?

eN.

Puste konsolki mmc

Ostatnio, przy zabawię z ISA 2006 (Windows 2003 R2 SP2) pojawił mi się dziwny problem – zniknęły pola w konsolce mmc. Drzewko było widoczne, ale nie można było zobaczyć jakiegokolwiek ustawienia konfiguracji:

Podobny problem spotkał konsolkę mmc services.msc:

Google radzi w takich wypadkach uruchomić, vbscript.dll, oraz mshtml.dll

regsvr32 jscript.dll & regsvr32 vbscript.dll & regsvr32 mshtml.dll

Niestety nie pomogło.

Moją uwagę jednak zwróciło to, że powinniśmy przerejestrować komponenty odpowiedzialne za wyświetlanie html-a w systemie, razem ze skryptami. Chwilka zastanowienia, szybki rzut oka na logi systemowe – i tak, ostatnio z aktualizacji spłynął IE 8. Po odinstalowaniu, sytuacja wróciła do normy – konsolki zaczęły się wyświetlać normalnie.

dziwne wymagania hasła

jedne z najdziwniejszych wymagań na hasło – strona zgłaszania problemów ze sprzętem HP:

passWTF

eN.

terminale (DoD combo)

od kilku dni prześladuje mnie technologiczny diabeł. nie wnikając w szczegóły takie jak ciągłe zrywanie nowego łącza (tepsa …) przez kilka dni,  padnięta żarówka w projektorze, przegryziony kabel audio przez kota, laptop, który przestaje działać, samochód , który mi robotnicy zepchnęli na trawnik, przyjechała straż miejska i wlepiła mandat za parkowanie na trawie… to tylko niektóre z przyjemności, które mnie testują. bardziej mistyczne skojarzenie może dotyczyć Hioba, bardziej naukowe – teoria chaosu wprowadza pojęcie “dziwnego atraktora” który w tym momencie idealnie do mnie pasuje – jestem gdzieś na rozwidleniu fraktala złych przypadków i z niecierpliwością czekam na zmianę dynamiki, bo moje umiejętności życia w stresie i pracy po kilkanaście.. dziesiąt (; godzin dziennie są u skraju wyczerpania…

zacznę od  przypadku serwera terminalowego, stojącego na w2k8 R2. jest tu dużo ciekawostek, które warto sobie poczytać – bo jest kilka ciekawostek i przynajmniej część jest wyjaśnialnych… serwer był niedawno migrowany. nie sposób opisać wszystkie problemy jakie miały miejsce przez ostatnie dni – ale niektóre wnioski mogą się przydać innym.

błąd 1 – replikacja i UIDy?

ponieważ serwer terminalowy należał do grupy “Terminal Server License Servers” oraz miał atrybut “trust for delegation” zostałem poproszony o dodanie nowego serwera nie usuwając obiektu w AD. komputer dodał się bez problemów i wszystko niby działało…. po jakimś czasie serwer odrzucał połączenia z komunikatem ‘Access Denied’ podczas, gdy w logach można było sprawdzić, że użytkownik uwierzytelnił się prawidłowo. jedyny sygnał jaki wskazywał na nieprawidłowości były ostrzeżenia, że komputer nie należy do grupy TSLS. ponieważ widzę w AD, że należy postanowiłem sprawdzić co o tym sądzi sam serwer.

jak sprawdzić przynależność komputera do grup?

dla usera prosta: ‘whoami /all’. uruchomienie konsoli w kontexcie konta systemowego i zrobienie tego samego, nie daje niestety odpowiednich rezultatów. najprostszym sposobem jest wykorzystanie ‘gpresult /scope computer /r’, który okazał się przy całym debugowaniu bardzo przydatnym narzędziem. próbowałem wyciągnąć bardziej dokładne informacje – ale nawet wszystkie toole do kerberosa – jak np. klist – są zrobione wyłącznie z myślą o kontach użytkownika. to imho duże niedociągnięcie [po cichu liczę, że te wypociny przeczyta Gibon i wyciągnie jakiegoś królika z kapelusza mocno mnie zawstydzając, ale z pożytkiem dla przyszłych tego rodzaju problemów (; ].

jak nie trudno się domyśleć komputer nie był tak na prawdę w grupie TSLS. poprosiłem admina z centrali [o ileż łatwiej jest kiedy ma się domain admina… chyba muszę w końcu zesniffować hasełko… ] żeby konto kompa re-dodał do tej grupy. nie pomogło. finalnie usunięty został z AD i dodany ponownie [ergo utworzenie nowego obiektu]. też nie pomogło.

samo dodanie do domeny to też oddzielna historia. po usunięciu i dodaniu serwer zrestartował się wstał poprawnie i nawet pozwolił się zalogować… ale coś było nie tak – search po AD i okazuje się, że konto w domenie nie istnieje. tutaj znów przydał się gpresult – ponieważ oprócz przynależności do grup, wyświetla distinguished name, czyli położenie w strukturze OU. wbrew oczekiwaniu iż trafi do defaultowego kontenera gdzie są nowe konta – wykrywał się na nieistniejącym koncie w starym OU. przy kolejnej próbie było podobnie, tylko nie pozwolił się już zalogować. w końcu grzecznie odczekałem 1o minut aż się wszystko zsynchronizuje [zrepliqje ładnie] i poszło.

błąd 2 – event 41o5 i grupa Terminal Server License Servers

problemy z terminalami niemniej nie ustały – z dokładnie takim samym efektem – czysto w logach, Access Denied przy próbie logowania. jedyny wpis to Event 41o5:

Log Name:      System
Source:        Microsoft-Windows-TerminalServices-Licensing
Date:          2010-06-16 15:41:55
Event ID:      4105
Task Category: None
Level:         Warning
Keywords:      Classic
User:          N/A
Computer:      RDS.my.domain
Description:
The Remote Desktop license server cannot update the license attributes for user "username" in the Active Directory Domain "my.domain". Ensure that the computer account for the license server is a member of Terminal Server License Servers group in Active Directory domain "my.domain".
If the license server is installed on a domain controller, the Network Service account also needs to be a member of the Terminal Server License Servers group.
If the license server is installed on a domain controller, after you have added the appropriate accounts to the Terminal Server License Servers group, you must restart the Remote Desktop Licensing service to track or report the usage of RDS Per User CALs.
Win32 error code: 0x80070005
Event Xml:
<Event xmlns="
http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Microsoft-Windows-TerminalServices-Licensing" Guid="{4D99F017-0EB1-4B52-8419-14AEBD13D770}" EventSourceName="TermServLicensing" />
    <EventID Qualifiers="51456">4105</EventID>
    <Version>0</Version>
    <Level>3</Level>
    <Task>0</Task>
    <Opcode>0</Opcode>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2010-06-16T13:41:55.000000000Z" />
    <EventRecordID>5442</EventRecordID>
    <Correlation />
    <Execution ProcessID="0" ThreadID="0" />
    <Channel>System</Channel>
    <Computer>RDS.my.domain</Computer>
    <Security />
  </System>
  <UserData>
    <EventXML xmlns:auto-ns3="
http://schemas.microsoft.com/win/2004/08/events" xmlns="Event_NS">
      <param1>username</param1>
      <param2>my.domain</param2>
      <param3>0x80070005</param3>
    </EventXML>
  </UserData>
</Event>

błąd się zgadza: ox8oo7ooo5 to acc denied. kolejna ciekawostka to fakt, że część połączeń przyjmuje a odrzuca dopiero po jakimś czasie. do debugowania problemów z licencjami termina
lowymi jest tool “RD Licensing Manager” więc zacząłem sprawdzać. pierwszy błąd wykryłem szybko – zamiast licencji “PER USER” zainstalowane były licencje “PER DEVICE” czego nie zweryfikowałem pierwotnie. telefon do centrali, dodane. tutaj przydatna informacja:

Per User CALs are not monitored by Terminal Server. This means that even though there is a Per User CAL in the license server database, the Per User CAL is not decremented when it is used. Additionally, if you use the Per User licensing mode, when a client logs on to a terminal server for the second time, the temporary license is not upgraded to a permanent CAL.

co oznacza nie mniej ni więcej – że User CAL nie są weryfikowane a więc nawet jeśli przekroczy się liczbę licencji – powinien normalnie wpuszczać. informacja jest dla wersji w2k3 i nie znalazłem póki co ani potwierdzenia ani zaprzeczenia tej informacji dla w2k8.

ponieważ to nie poskutkowało oczekiwanym rezultatem zacząłem szukać dalej i znalazłem drugi błąd. po włączeniu ‘review config’ okazało się, że tutaj w końcu serwer normalnie pokazuje, że nie należy do TSLS [niby zgodnie z tym, co wie o sobie komp].

image

image

kolejny telefon do centrali ‘please clik it!’ i już. restart, zaglądam do AD i okazuje się, że wbrew komunikatowi, serwer nie musi należeć tylko do TSLS ale również do “Terminal Server Computers”. dopiero wtedy RD License Manager przestał pokazywać ostrzeżenia… co nie zmieniło faktu, że nadal pojawiają się Event 41o5 w logu systemowym a gpresult nadal nie widzi grupy TSLS [SIC!] przy czym póki co userzy się mogą logować. niemniej obawiam się, przy ostatniej fali ciekawostek to nie jest niestety jeszcze koniec historii ): żeby było zabawniej poprzedni serwer różnił się w konfiguracji wyłącznie tym, że był na innym sprzęcie i w wersji enterprise – co zaczyna coraz bardziej skłaniać do wniosq, że problem leży w pierwszej warstwie [oj, jak ja tego nie lubię].

czas zbudować LABa – może on nie ma widzieć tej grupy? ROTFL

błąd 3 – w-files

prawdziwe w-files. ni-stąd-ni-z-owąd katalogi poprzemieszczały się na file serwerze. uruchomione zostały wszystkie procedury bezpieczeństwa i testy spójności – generalnie *coś* się stało z system plików. imho to wina McAfee AV – bo generalnie ten produkt doprowadza mnie do furii a po odinstalowaniu serwer zaczął działać lepiej (subiektywne wrażenie). tak czy inaczej muszę cały serwer stawiać od nowa. procedury odzyskiwania i reperacji potrwają w sumie około 48 godzin. no to jedna nocka w firmie, teraz będzie druga. a zaczął się WEF qrde! ):

przy okazji odkryłem jeszcze jedną ciekawostkę – plik, którego nie da się skasować. wygląda jakiś tymczasowy od office bo ma taką samą nazwę jak dwa inne, z innymi rozszerzeniami. ten plik kończy się kropką – “.”. znalazłem co prawda opis jak obejść głupie API, które po kropce czeka na rozszerzenie:

del “\?d:directoryannoyingfilewithdotontheend.”

ale niestety w tym przypadq i tak dostaję ‚file not found.’. próbowałem już różnych sztuczek – np. powershell zachowuje się tak samo. póki co zostaje taki śmieć.

błąd 4 – DHCP

podręcznikowo jeśli na chwilę wyłączy się serwer DHCP – nie powinno być problemów – nowe stacje co prawda nie dostaną numerka, ale te co już mają, powinny sobie działać, aż do restartu. w rzeczywistości z jakiegoś niewyjaśnionego powodu nie dość, że duża część Windowsów (nawet w7) po wyłączeniu serwera DHCP zrzuca numer i bierze z APIPA [SIC!!!] – co już jest porażką, to nawet jeśli włączony jest zastępczy z identycznymi pulami [ale oczywiście ma inny IP] – nie potrafi sobie tego numerka pobrać! dopiero wykonanie ipconfig /renew odświeża adres ale do tego trzeba mieć uprawnienia administratora na stacji! to zachowanie jest potwornym zagrożeniem i w zasadzie uniemożliwia zapewnienie ciągłości pracy w przypadq prac na serwerze z rolą DHCP.

niestety – to be continued…

dziwny atraktor eN.

dla czego nie lubię polskich wersji

image

każdy wyraz oddzielnie rozumiem – a razem jakoś nie działa…

eN.

trochę softu, vhd i windows backup

ostatnio testowane:

  • NetSurveyor – darmowy skaner WiFi, trochę bardziej rozbudowany niż NetStumbler
  • WinImage – shareware [3o uruchomień], pozwalający na obsługę różnych formatów obrazu dysq – m.in. vhd. co fajniejsze, ma wbudowaną opcję D2I [disk-to-image]. w przeciwieństwie do disk2vhd nie korzysta z bibliotek systemu stanowiąc pełne rozwiązanie. dzięki temu możliwe było przerobienie w98 na maszynę wirtualną [disk2vhd wymaga min. wXP SP2]. dodatkowo do mountowania dysków *nie jest* wymagany żaden sterownik, dzięki czemu nie trzeba restartować systemu po instalacji i generalnie jest mniej ‘inwazyjny’ dla systemu. poza tym, że to shareware najpoważniejszą wadą było to, że podczas extrakcji plików z vhd, po natrafieniu na błąd aplikacja się wywaliła ): w kwestii wydobywania danych lepiej sprawdził się inny program..
  • gizmo drive – fajny, darmowy tool do mountowania różnych formatów jako dyski wirtualne [aka DeamonTools]. obsługuje m.in. vhd. wymaga restartu przy instalacji [sterownik dla dysq wirtualnego]. ponieważ jest to na poziomie sterownika, gdy wystąpił błąd podczas kopiowania, po prostu pominąłem plik i można było kontynuować operację.

i taka ciekawostka – teoretycznie vhd jest *standardem*. problem jednak polega na tym, że wersje vhd się różnią – vhdmount z virtual servera nie otworzy vhd z w2k8. obraz zrobiony na w2k8 R2 różni się od tego z w2k8. nie miałem czasu na testy ale mapując vhd utworzone w2k8 R2 pod w7 diskpart napisał, żebym spadał na szczaw, bo on takiej wersji nie obsługuje. problemem jednak mógł być fakt, że jako ścieżkę podałem UNC – do przetestowania.

niemniej po otwarciu vhd z w2k8 R2 za pomocą gizmo [plik backupu], 2 plików nie udało się skopiować z dziwnym komunikatem ‘błąd dostępu podczas próby zapisu’. nie wiem czy wynika to z faktu, że to vhd z R2 czy z jakiegoś wewnętrznego uszkodzenia vhd [he?]… ale po co w ogóle taka zabawa?

o nowym winbackupie pisałem już kilka razy i nie mam o nim dobrego zdania. kolejny argument przeciw to niekompatybilność wersji – winbackup z w2k8 nie umie sobie poradzić z plikami z w2k8 R2 – w ogóle nie rozpoznaje tego jako backup. i tutaj kolejny problem – jak sobie radzić w takiej sytuacji? vhd są różne i różnie się zachowują [jak np. te dwa pliki, które nie chciały się skopiować]. w starych wersjach nie ma standardowego narzędzia do obsługi vhd no i w ogóle… nie istnieją scenariusze – nie tylko odzyskania systemu [ustawienia, rejestr, usługi] ale nawet głupich plików. w zasadzie cały winbackup sprowadza się do jednego scenariusza: *ten server*, *ta wersja*, *na tym sprzęcie*, *na tym dysq* – jakakolwiek zmiana i można zapomnieć o backupie. jego przydatność jest co najmniej niszowa. do przetestowania mam jeszcze czy gizmo widzi poprzednie wersje plików – bo przecież backup był robiony przyrostowo więc powinno być kilka wersji [vhd obsługuje shodow copy – tak jak zwykły dysk].

reasumując: windows backup – 3xNIE. qpując serwer warto zaopatrzyć się w jakiś soft do backupu a windowsowy używać tylko jako uzupełnienie – scenariusz “baremetal recovery” z obrazu.

ma ktoś warty polecenia, *darmowy*, soft do backupu, działający na w2k8 R2?

eN.

Google sortuje magicznie

Dzisiaj zwróciłem uwagę, że Google Reader potrafi sortować postu wg magii: image

Sort by magic – LOL

ntbackup

nie tak dawno krzyczałem ‘ntbackupie wróć’…

eMeS wydał ntbackup dla w7, w2k8 i w2k8 R2 w postaci poprawki:

i już zaczynałem się cieszyć kiedy doczytałem fragment “restore only”…

image

cóż za niewybredne poczucie humoru…

eN.