Geçmişte, bilgisayara ilişkin bilgileri kolayca görüntülemek için bginfo benzeri güzel araçlar kullanıyorduk.
Bu tür araçlar halen de kullanılıyor.
Bir seçenek olarak, Windows’un kendi IIS ögesini ekleyip yapılandırmadan, “Pode” adındaki bir Powershell modülünü kullanarak, yönetici olmayan kullanıcıların bile bilgisayarda bir web sunucu oluşturmasını sağlayabiliriz.
Bu web sunucuda da bilgisayara ilişkin bilgilerin bir Web sayfası şeklinde görüntülenmesini sağlayabiliriz.
Aşağıdaki Powershell betiğini bağımsız şekilde çalıştırabiliriz ya da bir oturum açma betiği olarak tanımlayabiliriz.
Eğer oturum açma betiği şeklinde yapılandırılırsa, kullanıcı oturum açtığında otomatik olarak bir Web sunucu çalışmaya başlar. Bu yöntemin iyi yanı, kullanıcı oturumunu kapattığında web sunucunun da yok olmasıdır.
Yardım masası çalışanları, son kullanıcıyı http://127.0.0.1:6645 benzeri bir adresi açmaya yönlendirebilir, bu adresten de kullanıcının bilgisayarı hakkında bilgiler öğrenebilir.
WebInfo.ps1
# Web sayfasını yarat, içine ilgili bilgileri ekle
"<html>" > index.html
"<head>" >> index.html
"</head>" >> index.html
"<body>" >> index.html
"Computer Name: "+ [System.Net.Dns]::GetHostName() >> index.html
"<p>" >> index.html
"Operating System: "+(Get-CimInstance -ClassName Win32_OperatingSystem).caption >> index.html
"<p>" >> index.html
"User Name: "+(whoami)+" <p>" >> index.html
#IP adresinin alınması biraz karışık bir kodu gerektiriyor.
$VIPAddress=(Get-CimInstance -Class Win32_NetworkAdapterConfiguration -Filter ("IPEnabled=TRUE") | Select-Object @{label="IPAddress";expression={$_.ipaddress[0]}},@{label="IPSubnet";expression={$_.IPSubnet[0]}},MACAddress,@{label="DefaultIPGateway";expression={$_.DefaultIPGateway[0]}},DHCPServer,DHCPEnabled,DNSDomain,DNSServerSearchOrder)
$length=$VIPAddress.length
#IP adreslerini aldıktan sonra bunları web sayfasına ekleyelim
for($i=0;$i -lt $length;$i++){
"IP Address: "+$vipAddress[$i].ipaddress+" <p>" >> index.html
}
"</body>" >> index.html
"</html>" >> index.html
# “views” adında bir alt klasör yarat ve index.html dosyasını bu klasöre kopyala
md views
copy index.html views
#O anki kullanıcı için pode modülünü yükle. Kullanıcı yönetici olmak zorunda değildir
Install-Module -Name ‘Pode’ -Scope ‘CurrentUser’ -force
# Pode web sunucusunu başlat. Kullanıcı sıradan bir kullanıcı olduğu için IP adresini 127.0.0.1 olarak vermeliyiz. Diğer adresler kullanıcının yönetici olmasını gerektirir
#Web sitesinin portu 1024-65535 yapılırsa bilgisayarda bulunabilecek diğer Web siteleriyle çatışma olasılığı olmaz
Start-PodeServer {
Add-PodeEndpoint -Address 127.0.0.1 -Port 6645 -Protocol Http
Add-PodeRoute -Method Get -Path ‘/’ -ScriptBlock {
Write-PodeViewResponse -Path ‘index.html’
}
}
Oluşacak Web sayfası şu şekilde görünecektir: