Używanie PsTools do sterowania innymi komputerami z poziomu wiersza poleceń
W dzisiejszej lekcji z naszej serii Geek School poświęconej SysInternals, pokażemy, jak używać zestawu narzędziowego PsTools do wykonywania różnorodnych zadań administracyjnych zarówno lokalnie, jak i na komputerach zdalnych..
NAWIGACJA SZKOLNA- Jakie są narzędzia Sysinternet i jak ich używasz?
- Omówienie Eksploratora procesów
- Używanie Eksploratora procesów do rozwiązywania problemów i diagnozowania
- Omówienie Monitora procesu
- Używanie monitora procesu do rozwiązywania problemów i znajdowania haseł rejestru
- Korzystanie z autouruchamiania w celu radzenia sobie z procesami uruchamiania i złośliwym oprogramowaniem
- Używanie BgInfo do wyświetlania informacji o systemie na pulpicie
- Używanie PsTools do sterowania innymi komputerami z poziomu wiersza poleceń
- Analizowanie i zarządzanie plikami, folderami i dyskami
- Pakowanie i używanie narzędzi razem
Jeśli kiedykolwiek chciałeś połączyć się z innym komputerem i uruchomić polecenie, szybko uzyskaj informacje o uruchomionych procesach i opcjonalnie je zabij, a nawet zatrzymaj usługę na innym komputerze, możesz użyć narzędzi PsTools, aby wykonać wszystkie te czynności, a nawet więcej.
Oczywiście można użyć Pulpitu zdalnego lub podobnej usługi do połączenia się z dowolnym komputerem z systemem Windows i faktycznie zobaczyć pulpit i zrobić wszystko, co zrobiłbyś lokalnie, ale narzędzia PsTools pozwalają ci wykonywać wiele zadań z linii poleceń - lub jeszcze lepiej, z skrypt, którego możesz później użyć ponownie.
Są to narzędzia, które najlepiej działają w środowisku korporacyjnym, a opanowanie tych narzędzi zdecydowanie poprawi pracę administracyjną systemu, pozwoli zaoszczędzić czas i pozwoli na robienie rzeczy w znacznie inteligentniejszy sposób. Robienie rzeczy mądrzej i szybciej jest kluczową umiejętnością bycia świetnym sysadminem.
W zestawie PsTools znajduje się dwanaście narzędzi, a niektóre z nich są niezwykle użyteczne, inne zostały zastąpione narzędziami wbudowanymi w nowsze wersje systemu Windows, a jest kilka innych, które nie są przydatne dla większości ludzi. Przejdziemy przez wszystkie z nich, abyście mogli zrozumieć, jak działają i dlaczego warto ich użyć.
- PsExec - wykonuje procesy na zdalnym komputerze
- PsFile - pokazuje pliki, które są otwierane na komputerze zdalnym przez sieć
- PsGetSid - wyświetla identyfikator zabezpieczeń dla komputera lub użytkownika
- PsInfo - wyświetla informacje o systemie
- PsKill - zabija procesy według nazwy lub identyfikatora
- PsList - wyświetla informacje o procesach w wierszu poleceń
- PsLoggedOn - lista kont, które są zalogowane na komputerze lub łączą się zdalnie
- PsLogList - przeciągnij dziennik zdarzeń z linii poleceń
- PsPasswd - zmiana hasła dla użytkowników
- PsPing - dość prosty program do pingowania z kilkoma dodatkowymi funkcjami
- PsService - wyświetla listę i wprowadza zmiany w usługach Windows
- PsShutdown - wyłącza, wylogowuje lub zawiesza komputer
- PsSuspend - zawiesza i wznawia procesy (zamiast je zabijać)
Warto zauważyć, że można użyć narzędzia takiego jak PsExec do wykonywania wszelkiego rodzaju narzędzi wiersza poleceń na komputerach zdalnych ... w tym naprawdę użytecznych, takich jak narzędzie wiersza poleceń Autoruns i wiele innych. Możliwości są nieskończone, gdy już opanujesz moc PsTools.
Wszystkie te narzędzia mogą być używane na komputerach lokalnych, ale są one najczęściej przydatne do łączenia się ze zdalnymi komputerami i wykonywania na nich poleceń.
Łączenie się ze zdalnymi komputerami (składnia dla wszystkich narzędzi)
Wszystkie narzędzia można uruchamiać na komputerze lokalnym lub zdalnym, więc w razie potrzeby wszystkie mają ten sam pierwszy argument dla nazwy komputera. Zauważ, że możesz użyć adresu IP, jeśli chcesz. Jeśli ten argument zostanie pominięty, polecenie będzie działać na komputerze lokalnym.
psinfo \\ nazwa_komputera
Możesz także wymienić wiele komputerów, takich jak psinfo \\ computer1, computer2, computer3, lub możesz umieścić wszystkie nazwy w pliku i odwoływać się do nich jak psinfo @ computerlist.txt. Ostateczna składnia to psinfo \\ *, która działa na wszystkich komputerach w domenie, co prawdopodobnie nie jest czymś, z czego będziesz korzystać każdego dnia.
Jeśli chcesz połączyć się z alternatywnymi danymi uwierzytelniającymi, ponieważ konto twojego komputera lokalnego ma inną nazwę użytkownika i hasło niż inny komputer, możesz użyć opcji -u i -p, ale chcielibyśmy zauważyć, że nie chcesz używać opcji -p na wiersz poleceń z hasłem w poleceniu ze względów bezpieczeństwa. Aktualizacja: od najnowszej wersji PsExec żadne narzędzie nie przekazuje haseł jako czystego tekstu, więc jedyną obawą jest to, że ktoś może odczytać twoje pliki skryptowe i zobaczyć tam hasło.
psinfo \\ computername -u "user" -p "Hasło"
Część "użytkownika" polecenia zmieni się na "DOMAIN \ user", jeśli jesteś w środowisku domeny i musisz zmienić bieżącego użytkownika.
Uwaga: zazwyczaj będziesz musiał łączyć się ze zdalnymi komputerami za pomocą konta administratora.
Konfigurowanie dostępu do administracji zdalnej
Jeśli jesteś w środowisku domeny, w którym większość ludzi będzie potrzebować PsTools, możesz całkowicie zignorować tę sekcję, ponieważ wszystko powinno działać dobrze. Dla każdego, kto ma Windows 7, 8 lub Vista w środowisku domowym lub przy użyciu kilku komputerów w biurze bez domeny, musisz zmienić ustawienia Kontroli konta użytkownika na komputerze zdalnym, aby umożliwić prawidłowe działanie PsTools.
Problem jest dobrze opisany przez Microsoft:
Gdy użytkownik, który jest członkiem lokalnej grupy administratorów na docelowym komputerze zdalnym, ustanawia zdalne połączenie administracyjne przy użyciu komendy net use * \\ remotecomputer \ Share $, na przykład nie nawiąże połączenia jako pełnoprawny administrator. Użytkownik nie ma potencjału wysokościowego na komputerze zdalnym, a użytkownik nie może wykonywać zadań administracyjnych.
Aby wyjaśnić to w inny sposób, próbując połączyć się z innym komputerem i uruchomić coś, co wymaga dostępu administratora, nie ma sposobu, aby wyzwolić monit UAC i zaakceptować go z komputera, aby nie łączył się jako administrator.
I nie jest to złe. Nie należy zmieniać tego ustawienia bez pełnego zrozumienia, że zezwolisz na otwarcie się szkodliwego oprogramowania z jednego komputera na drugi - zakładając, że złośliwe oprogramowanie ma lokalną nazwę użytkownika i hasło, a to hasło jest takie samo jak na innym komputerze, a Złośliwe oprogramowanie jest trudne, a większość nie. Ale nadal nie należy lekceważyć.
I znowu, jeśli jesteś w środowisku domeny, ten problem nie istnieje i nie trzeba go zmieniać. A jeśli testujesz tylko przy użyciu kilku wirtualnych maszyn, nie musisz się o nic martwić.
Aby dostosować UAC, aby włączyć PsTools, należy otworzyć Edytor rejestru i przejść do następującego klucza:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \
Windows \ CurrentVersion \ Policies \ System
Kiedy już tam będziesz, utwórz nowy 32-bitowy DWORD po prawej stronie, nadaj mu nazwę LocalAccountTokenFilterPolicy i wartość 1. Nie musisz ponownie uruchamiać komputera, aby ustawienie zaczęło obowiązywać.
Uwaga: aby wyjaśnić, to ustawienie musi się odbywać na komputerze zdalnym, z którym się łączysz.
PsExec
PsExec jest prawdopodobnie najpotężniejszym narzędziem w zestawie, ponieważ możesz wykonać dowolne polecenie w lokalnym wierszu poleceń, tak jak w przypadku wykonywania go na komputerze zdalnym. Obejmuje to wszystko, co można uruchomić w wierszu poleceń - możesz zmieniać wartości rejestru, uruchamiać skrypty i narzędzia lub łączyć się z tego komputera na inny. Dane wyjściowe poleceń będą wyświetlane na lokalnym komputerze, a nie na zdalnym.
Składnia jest prosta:
psexec \\ computername apptorun.exe
Realistycznie, jednak, należy również podać nazwę użytkownika i hasło w linii poleceń. Na przykład, aby połączyć się z innym komputerem i sprawdzić listę połączeń sieciowych, można użyć czegoś takiego:
psexec \\ computername -u Użytkownik -p Hasło ipconfig
Polecenie to wytworzy wynik podobny do następującego:
Następna strona: Używanie PsExec do uruchamiania poleceń zdalnych