3. Parti Yazılımlar

PsExec Nedir? Nasıl Kullanılır?

Eski zamanlarda uzak bilgisayarlar üzerinden komut çalıştırmak için Symantec firmasının PC Anywhere yazılımı gibi yazılımlar yoğun kullanılırdı. Son zamanlarda kullanılan sistemlerde özellikle Microsoft tabanlı sistemlerde PowerShell mimarisinin gelişmesiyle birçok işlem PowerShell üzerinden yapılabilir duruma geldi. Yine de bazı durumlarda farklı araçlar kullanmanız gerekiyor. Tabi bu sizin de iş yapış şeklinize bağlı.

PsExec toolu uzaktaki bilgisayarlarda komut çalıştırarak, sonuçlarını komutu çalıştıran bilgisayarda görmemizi sağlar. Tool https://technet.microsoft.com/en-us/sysinternals/psexec.aspx bu adresten indirilebilir. Tool Mark Russunovich tarafından geliştirilmiştir.

Tool CMD üzerinden çalıştırıldığında PsExec komutu çalıştırılınca aşağıdaki ekran karşınıza gelecektir. Bu ekranda komutun kullanımı ve parametreleri bizlere sunulmaktadır. Bu parametrelerin neler yaptığına biraz göz atalım.

clip_image001

Parametre

Kullanım Amacı

-a

Uygulamanın hangi işlemcide uygulanacağı belirlenir. Örnek olarak uygulamayı CPU 1 ve CPU 2 de işletmek için “-a 1,2″ parametresini girmek lazım.

-c

Belirtilen programı uzak bilgisayara kopyalar. Eğer boş bırakılırsa uygulamanın uzak sistemde çalıştırılabilir sistem yolu üzerinde bulunması gereklidir.

-d

Uygulamanın bitmesini bekleme.

-e

Belirlenmiş kullanıcı profilini yükler.

-f

Program uzak sistemde yüklü olsa bile kopyalama yapar.

-i

Uzak sistemin masaüstü ile etkileşecek şekilde programı çalıştırır.

-l

Süreç limitli kullanıcı olarak çalıştırır.

-n

Uzak bilgisayardan timeout zamanını saniye olarak belirler.

-p

Kullanıcı adına şifre belirler. Değer boş geçilirse şifre girişi için bir ekran açar.

-s

Uzak süreç Sistem hesabı ile çalışır

-u

Uzak bilgisayara giriş için kullanıcı adı belirler.

-v

Program eğer uzak bilgisayardakinden yeni veya daha üst versiyonda ise kopyalama işlemi yapar.

-w

Sürecin çalışacağı klasörü belirler.

-x

Kullanıcı arabirimini Winlogon masaüstünde gösterir.

-priority

Sürecin çalışma önceliğini belirler -low, -belownormal, -abovenormal, -high veya -realtime

computer

PsExec’in hangi bilgisayar veya bilgisayarlarda çalıştırılacağı belirler. Eğer boş bırakırsanız lokal sistemde çalışır, eğer bilgisayar ismi olarak “\\*” verilirse içinde bulunulan domaindeki bütün bilgisayarlarda uygulama çalıştırılır.

@file

PsExec’in yazi dosyasında listelenen her bilgisayar için çalışmasını sağlar

 

Şimdi birkaç örnek yapalım test için bağlanmak ve işlemlerimize ait komutları çalıştırmak için aşağıdaki gibi DESKTOP-12T70KJ ismine ve 192.168.1.100 ip adresine sahip bir bilgisayarımız var.

clip_image003

Bu bilgisayarımıza ping atıp erişebilir durumdayız.

clip_image005

Şidi kendi bilgisayarımıza bakalım. Rizasahan isminde Windows 10 işletim sistemine sahip bir bilgisayarımız var. Testlerde Rizasahan isimli bilgisayardan sanal bilgisayarımız üzerine PsExec tool ile bazı işlemler yapacağız.

clip_image006

Öncelikle yukarıdaki adresten tool’u indirelim ve CMD üzerinden Tool dizinine girelim.

clip_image008

Öncelikel uzak işlem yapılacak sanal makinamıza bağlanalım. Bağlantı için \\uzakip veya hostname –u Bigisayarİsmi\Hesap adı –p Parola CMD olarak komutumuzu girelim Yani durum PsExec \\192.168.1.100 –u DESKTOP-12T70KJ\Administrator –p Password1 CMD şeklinde olacak. Bu komutla karşı bilgisayar üzerinde CMD promt çalıştırmış olacağız ve yazacağımız komutlar uzak bilgisayar üzerinde çalışacak.

clip_image010

Yukarıda verdiğimiz komut ile aşağıda görüldüğü gibi uzak bilgisayarımız üzerindeki CMD ekranına bağlandık. Artık uzak bilgisayar üzerinde test için bazı işlemler yapabilir durumdayız.

clip_image012

Hostname komutunu çalıştırdığımızda görüldüğü üzere uzak bilgisayarımızın adı çıktı.

clip_image014

Şimdi uzak bilgisayarımız üzerinde bir bat dosyası oluşturalım.

clip_image015

Bat dosyamızın içeriği aşağıdaki gibi. Yani ping atacak ve bunu ping.txt dosyasına kaydedecek.

clip_image017

Uzak bilgisayarımız üzerindeki ping.bat dosyasını çalıştıralım. Uzak bilgisayar üzerinde işlem yaptığımızı CMD promt başlığındaki \\192.168.1.100 ifadesinden anlayabilirsiniz.

clip_image019

Komutumuz çalıştı.

clip_image021

Uzak bilgisayarın C:\ diski üzerinde istediğimiz şekilde ping.txt dosyası oluştu.

clip_image023

Dosyamızın içeriğinde komutumuzun icra ettiği işlemler yer alıyor.

clip_image025

Şimdi örnek olarak uzak bilgisayar üzerinde bir kullanıcı oluşturalım. Öncelikle aşağıda şu anda var olan kullanıcılarımıza göz atalım.

clip_image027

Kullanıcı oluşturmak için net user oluşturulacak kullanıcı adı parola /add yani net user cozumpark Password1 /add şeklinde komutumuzu girelim.

clip_image029

Komutumuz başarı ile tamamlandı.

clip_image031

Kullanıcılarımıza tekrardan baktığımızda Cozumpark isimli kullanıcımızın oluştuğunu görmekteyiz.

clip_image032

Şimdi uzak bilgisayar üzerinde regedit çalıştıralım. Bunun için aşağıdaki komutu uygulayabiliriz.

PsExec –i –d “C:\windows\regedit.exe”

clip_image033

Regedit sorunsuzca çalıştı.

clip_image034

Şimdi farklı örnek olarak aşağıdaki komut ile İnternet Explorer çalıştıralım.

PsExec –i –d “C:\Program Files\Internet Explorer\iexplore.exe”

clip_image036

Ve İnternet Explorer sorunsuzca çalıştı.

clip_image038

Tool bazen bazı durumlarda can kurtarıcı olabiliyor. Bu gün birçok işlem gui ortamdan yapılabilir durumda ancak komutla yapılabilen her işlem Guiden yapılamaz durumda J Umarım yararlı olur. Farklı bir makalemizde görüşmek üzere.

Rıza ŞAHAN

www.rizasahan.com

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu