Good bye netsh – cz.2 NetTCPIP

W dzisiejszej odsłonie analogicznie jak poprzednio będziemy przerabiać kolejny moduł PowerShell’a dostępny w nowym wydaniu Windows Server. Ostatnio zajmowaliśmy się konfiguracją samych interfejsów sieciowych, natomiast teraz pokażę jak przeprowadzić konfigurację TCPIP. Czytaj dalej

Reklamy

Good bye netsh – cz.1 NetAdapter

Windows Server 2012 nadchodzi wielkimi krokami, a wraz z nim nadchodzą pewne zmiany. Nowa odsłona systemu, podobnie jak jego poprzednik posiada również tzw. wersje Core, czyli pracę tylko i wyłącznie w trybie tekstowym. Jednakże praca na starszych wersjach systemu czyli Windows Server 2008 w tym trybie nie należała do najprzyjemniejszych a przynajmniej do momentu instalacji PowerShell’a.

Sama konsola w pierwszej odsłonie Windows Server 2008 w ogóle nie była wspierana, natomiast w wersji R2 nie była domyślnie instalowana wraz z systemem. Windows Server 2012 Core wprowadza tutaj kilka zmian. Domyślnie zaraz po instalacji systemu i pierwszym logowaniu posiadamy dostęp do PowerShell’a i to już w wersji 3.0. Dodatkowo sama liczba dostępnych modułów jest też znacząco większa, jak m.in. zarządzanie siecią. W poprzednim podejściu do konfiguracji sieci z poziomu linii komend wykorzystywaliśmy głównie zestaw narzędzi z netsh na czele. Ewentualnie pisaliśmy własne rozwiązania w oparciu o skrypty PowerShell’a. Obecnie podejście to dość mocno się zmienia. Czytaj dalej

PSFTP – ListDirectoryDetails

Bazowo PowerShell pozwala na dostęp do wielu różnych typów „napędów”, m.in. lokalne czy sieciowe dyski, ale również takie lokalizacje jak rejestry lub certyfikaty. Niestety nie ma dość przydatnej lokalizacji jaką jest FTP. Nie mniej można sobie z tym poradzić w inny sposób, a mianowicie z wykorzystaniem obiektu klasy .NET – FtpWebRequest. Czytaj dalej

Zarządzanie PS poprzez port szeregowy

Ciekawostka: czy da się zarządzać PowerShellem poprzez post szeregowy? Domyślnie nie jest to wspierane rozwiązanie niemniej jest to wykonalne.

Do tego celu przyda się nam klasa System.IO.Ports.SerialPort oraz klasyczny cmdlet do wykonywania Invoke-Expression.

Aby zacząć pracę z portami szeregowymi przydatne jest sprawdzenie dostępnych portów COM na danej maszynie. Do tego celu możemy wykorzystać metodę getportnames().

[System.IO.Ports.SerialPort]::getportnames()

Czytaj dalej

PSNetShare – Get ACL

W poprzednim artykule pisałem jak nadawać uprawnienia, niemniej jednak odczytanie uprawnień sprawia troszkę więcej problemów. Klasa Win32_Share posiada co prawda metodę GetAccessMask nie niej nie zwraca ona faktycznego stanu access listy.

$objNetShare = Get-WMIObject -class Win32_Share  -Filter "name='Test'"
$objNetShare.GetAccessMask()

Co w takim razie zrobić by sprawdzić kto ma dostęp do danego zasobu i z jakimi uprawnieniami? Do tego celu można posłużyć się klasą Win32_LogicalShareSecuritySetting.

Czytaj dalej