ghhanssen

Medlemmer
  • Innholdsteller

    622
  • Ble med

  • Besøkte siden sist


Nettsamfunnsomdømme

0 ProPoeng

Om ghhanssen

  • Rang
    Senior
  • Bursdag 02. jan. 1977

Profile Information

  • Kjønn Mann
  • Sted Trondheim
  • Interesser Har studert Drift av datasystemer ved Høgskolen i Sør-Trøndelag. Nå jobber jeg hos Ergo Group.

Contact Methods

  • Hjemmeside http://ghhanssen.be

ghhanssen sin aktivitet

  1. ghhanssen la til et innlegg i et emne [LØST] Powershell script for å se etter utgåtte sertifikater   

    Det tok for lang tid å få godkjennelse for powerShell 2.0 og enabling av PowerShell Remoting, så eg har brukt en del timer på å utvikle meg en egen løsning

    Ganske fornøyd med den om eg skal si det selv!

    1. Bruker psexec fra sysinternals for å kjøre en batcfil remote mot en liste servere. Denne kjører blant annet certutil og lagrer dette til en fil lokalt på serveren. Deretter kopierer scriptet denne over til et share. Disse filene flytter eg så over til et område hvor eg har installert PHP, MySQL++.

    2. Opprettet et enkelt script som importerer certutil outputen til en database.

    3. Eksporterte output fra Certificate Authority, og importerer det også i databasen min med et enkelt php script. Denne oppdaterer sertifikat infoen med enkelt ting som eg ikke fikk frem via certutil kommandoen min i trinnet over.

    4. Har laget meg noen ganske kjekke view som viser alle sertifikat (i skrivende stund er det 3800), et view for aktive sertifikat og et for utgåtte sertifikater. Samt et view som kun viser sertifikater som går ut på dato de neste to månedene, slik at eg kan planlegge sertifikat fornyelser.

    Alle viewene viser også om sertifikatene er installert i Personal eller Trusted People på de ulike serverne
    Nå gjennstår det bare for meg å få lagt inn info fra gjennstående servere (ca 100 stk...)



    Du får ha Takk for hjelpen Jan-Egil!
    PowerShell 2.0 og PowerShell Remoting er noe som eg skal prøve å få distribuert etterhvert, siden dette kan forenkle hverdagen min mye
    • 0
  2. ghhanssen la til et innlegg i et emne [LØST] Powershell script for å se etter utgåtte sertifikater   

    Hei
    Takk for detaljert svar!

    Eg skal ta å undersøke om det er ok å rulle ut Powershell 2.0 og aktivere PowerShell Remoting. Tror ikke det skal være for mange innvendinger mot å rulle ut Powershell 2.0, men eg er mer skeptisk til om eg tillates å aktivere PowerShell Remoting. Men, det skal absolutt undersøkes
    Eg har aldri forsøkt PowerShell Remoting. Vil det være noen sikkerhetsrisiko å aktivere dette?
    • 0
  3. ghhanssen la til et innlegg i et emne [LØST] Powershell script for å se etter utgåtte sertifikater   

    Hei
    Takk for svaret!

    Eg har sett litt på den, men eg får den ikke til å fungere. Kjører powershell scriptet på Certificate Authority serveren, men det blir ikke noe output :/
    Men, dette blir nok ikke helt det eg er ute etter uansett, siden eg ikke kan få frem hvor sertifikatene er installert. Flere av sertifikatene er ikke utstedt av oss, så eg tror nok løsningen er å sjekke alle maskiner.
    Kan man kanskje benytte SCCM til å hente inn Sertifikatinformasjon?
    • 0
  4. ghhanssen la til et emne i Administrering av nettverk   

    [LØST] Powershell script for å se etter utgåtte sertifikater
    Hei
    Er det noen som kan hjelpe meg med å mekke et powershell script for å se etter utgåtte sertifikater, eventuelt finne et på nettet? Har forsøkt å lete litt, men har ikke klart å finne det som eg er på utkikk etter :/

    Ønsker et powershell script som kan sjekke sertifikat storen til ca 1000 servere


    Scriptet må hente maskinnavnene fra en egen fil (computers.txt)
    Scriptet må sjekke på følgende steder i sertifikat storen: "Personal" og "Trusted People"
    Scriptet må liste ut sertifikater som snart går ut på dato, eller skrive det ut til ei fil.
    Scriptet må vise info om i allefall følgende: Servernavn, Navn på sertifikat, Personal eller Trusted People, Dato sertifikatet går ut, Hvilken mal som er brukt.
    Ønsker en variabel som sier hvor mange dager det er til sertifikatet går ut på dato, slik at eg lett kan justere på denne.


    Er veldig taknemelig hvis noen kan hjelpe meg med dette
    • 7 svar
    • visninger
  5. ghhanssen la til et innlegg i et emne [LØST] Bruke Powershell til å finne program som er installert på andre maskiner   

    Takk for hjelpen!!!!
    No kom eg omsider i mål

    Eg gjorde en liten modifikasjon på scriptet, for å få det akkurat slik eg ønsket

    $Machines = Get-Content "Computer.txt" $Found = $false $SearchForSoftware = "Microsoft .NET Framework 2.0" $ComputersMissingSoftware="" Write-host "=========================================================================" Write-host "Searching through Computer.txt for Computer's that are missing " $SearchForSoftware Write-host "=========================================================================" foreach ($MachineName in $Machines) { $reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey("LocalMachine", $MachineName) $regKey= $reg.OpenSubKey("Software\\Microsoft\\Windows\\Currentversion\\Uninstall" ) $subkeys = $regkey.GetSubKeyNames() foreach ($key in $subkeys) { $subregkey = $regKey= $reg.OpenSubKey("Software\\Microsoft\\Windows\\Currentversion\\Uninstall\$key" ) if ($regKey.GetValue("displayname") -match $SearchForSoftware) { $Found = $true } } if ($found -eq $true) { Write-host -background "GREEN" -foregroundcolor "BLACK" $SearchForSoftware is installed on $MachineName $Found = $false } else { Write-host -background "RED" -foregroundcolor "BLACK" $SearchForSoftware is NOT installed on $MachineName $ComputersMissingSoftware += $MachineName + "`n" } } Write-host "=========================================================================" Write-host "Computer's that are missing " $SearchForSoftware Write-host "=========================================================================" Write-host -background "RED" -foregroundcolor "BLACK" $ComputersMissingSoftware

    Da blir output noe slikt

    =========================================================================
    Searching through Computer.txt for Computer's that are missing Microsoft .NET Framework 2.0
    =========================================================================
    Microsoft .NET Framework 2.0 is NOT installed on PC1
    Microsoft .NET Framework 2.0 is NOT installed on PC2
    Microsoft .NET Framework 2.0 is NOT installed on PC3
    Microsoft .NET Framework 2.0 is installed on PC4
    Microsoft .NET Framework 2.0 is NOT installed on PC5
    =========================================================================
    Computer's that are missing Microsoft .NET Framework 2.0
    =========================================================================
    PC1
    PC2
    PC3
    PC5
    • 0
  6. ghhanssen la til et innlegg i et emne [LØST] Bruke Powershell til å finne program som er installert på andre maskiner   

    Hei
    Takker for hjelpen

    Eg forsøkte å kjøre følgende kommando, men da klarer eg ikke å finne noe innslag av .NET

    $MachineName = "computername" $reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey("LocalMachine", $MachineName) $regKey= $reg.OpenSubKey("Software\\Microsoft\\Windows\\Currentversion\\Uninstall" ) $subkeys = $regkey.GetSubKeyNames() $subkeys Er det mulig å gjøre om scriptet slik at det er samme info som hentes ut, som i scriptet under? $Keys = Get-ChildItem HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall $Items = $keys |foreach-object {Get-ItemProperty $_.PsPath} foreach ($item in $items) { Write-host $item.Displayname }


    Eg har brukt psTools tidligere og var veldig fornøyd med at eg fikk gjort endringer på flere hundre maskiner på en gang
    Men, akkurat i dag så får eg problemer med den også :wall:
    Eg følger oppskriften slik du har beskrevet, men eg klarer ikke å få det til å fungere helt. Hvis eg skal bruke den metoden, så bør hvert computernavn som eg sjekker mot dukke opp i listen. slik at eg klarer å se ut fra en liste med maskiner om hvilke som mangler evt har installert det programmet som eg søker etter. Nå dukker det ikke opp hvilke maskiner som eg har sjekket mot, og det blir bare stående en linje i liste.txt
    • 0
  7. ghhanssen la til et innlegg i et emne [LØST] Bruke Powershell til å finne program som er installert på andre maskiner   

    Hmm, det ser ikke helt ut til at den virker slik den skal.

    Når eg kjører det scriptet som står først i denne tråden, så får eg opp at "Microsoft .NET Framework 2.0 Service Pack 1" er installert.
    Men, når eg forsøker å teste scriptet rett over mot samme maskin, så får eg beskejd om at "Microsoft .NET Framework 2.0 Service Pack 1" ikke er installert.

    underlig...
    • 0
  8. ghhanssen la til et innlegg i et emne [LØST] Bruke Powershell til å finne program som er installert på andre maskiner   

    Supert!!!
    Skal få testa den så snart det blir noe roligere på jobb
    • 0
  9. ghhanssen la til et innlegg i et emne [LØST] Bruke Powershell til å finne program som er installert på andre maskiner   

    Har ikke sjekket opp om eg trenger .Net 2.0 på maskinene som eg spørrer mot, men hvis eg ikke trenger det, så vil eg gjerne forsøke å få til powershell scriptet
    Kjekt med ting som eg kan gjennbruke til senere
    • 0
  10. ghhanssen la til et innlegg i et emne [LØST] Bruke Powershell til å finne program som er installert på andre maskiner   

    Det hadde eg ikke tenkt på

    Kan eg bruke noe annet da? VBscript?
    Kan ikke helt stole på rapportene i SCCM, da enkelte får status Unknown av en eller annen grunn... Men, forsåvidt så er eg jo nesten i mål der da, men det er fortsatt noen som da må tas manuelt...
    • 0
  11. ghhanssen la til et innlegg i et emne [LØST] Bruke Powershell til å finne program som er installert på andre maskiner   

    Eg har et annet script som fungerer på den måten som eg ønsker, bortsett fra at den aksesserer ikke samme sted remote... og siden eg ikke er noen scripter/programmerer så klarer eg ikke å omskrive koden slik at den blir slik eg ønsker
    Dette scriptet henter inn datamaskinnavn som skal sjekkes fra en text fil ved navn Computer.txt. Og så sjekker den om disse datamaskinene har installert en bestemt hotfix fra Microsoft, feks KB926122.


    $SecurityPatch="KB926122" # Do not change the code below this line ############################################################################################ $Servers = Get-Content "Computer.txt" $ComputersMissingKBFix="" Write-host "=========================================================================" Write-host "Searching through Computer.txt for Computer's that are missing " $SecurityPatch Write-host "=========================================================================" foreach($Server in $Servers) { $KBfix = Get-WmiObject -Class Win32_QuickFixEngineering -ComputerName $Server | where {$_.hotfixid -match $SecurityPatch} if ($KBfix.Hotfixid -eq $SecurityPatch) { Write-host -foregroundcolor "green" $Server " are OK" } else { Write-host -foregroundcolor "red" $Server " are missing " $SecurityPatch $ComputersMissingKBFix += $Server + "`n" } } Write-host "=========================================================================" Write-host "Computer's that are missing " $SecurityPatch Write-host "=========================================================================" Write-host -foregroundcolor "red" $ComputersMissingKBFix ########## Output ######################################################################## #========================================================================= #Searching through Computer.txt for Computer's that are missing KB926122 #========================================================================= #Computer1 are OK #Computer2 are missing KB926122 #Computer3 are missing KB926122 #Computer4 are OK #Computer5 are missing KB926122 #Computer6 are OK #========================================================================= #Computer's that are missing KB926122 #========================================================================= #Computer2 #Computer3 #Computer5
    • 0
  12. ghhanssen la til et emne i Administrering av nettverk   

    [LØST] Bruke Powershell til å finne program som er installert på andre maskiner
    Hei
    Er det noen som kan hjelpe meg til å skrive om et script som eg har fått laget
    Eg har fått i oppgave å sjekke om .NET 2.0 er installert på en haug maskiner, så eg tenkte eg kunne benytte powershell til dette
    Nå har eg klart å lage et script som klarer å sjekke på lokal maskin, men eg får ikke til å gjøre om scriptet slik at eg får kjørt det mot andre maskiner : /
    Eg ønsker også at scriptet skal lese servernavn fra en computer.txt fil som ligger i samme katalog, slik at eg lett kan sjekke mange maskiner samtidig.

    Kontrollerer om "Microsoft .NET Framework 2.0 Service Pack 1" er installert på lokal maskin:

    $SearchForSoftware="Microsoft .NET Framework 2.0 Service Pack 1" # Do not change the code below this line ############################################################################################ $Keys = Get-ChildItem HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall $Items = $keys |foreach-object {Get-ItemProperty $_.PsPath} $ok="false" foreach ($item in $items) { if ($item.Displayname -eq $SearchForSoftware) { $ok="true" } } Write-host "=========================================================================" if ($ok -ceq "true") { Write-host -foregroundcolor "green" $SearchForSoftware is installed } else { Write-host -foregroundcolor "red" $SearchForSoftware is not installed }

    Håper noen har mulighet til å hjelpe meg
    • 16 svar
    • visninger
  13. ghhanssen la til et innlegg i et emne [LØST] Script for å sjekke status på servicer   

    Fikk ikke det scriptet til å virke desverre. Mulig eg gjorde noe feil...

    Fikk en noen til å fikse et slikt script til meg.

    1. Lagre som run.ps1
    2. opprett en undermappe i filstrukturen som du feks kaller servere
    3. i denne undermappen legges det filer (uten etternavn på filene!) som feks servernavn1 og servernavn2
    4. i hver servernavn-fil, legges navnene på servicene som skal overvåkes.
    5. start Poweshell
    6. bla deg fram til script, og start det feks slik: .\run.ps1 servere


    $serverkatalog = $args[0] $servere = get-childitem $serverkatalog foreach ($s in $servere) { write-host "" write-host "Server:" $s.name write-host "" $servicenavn = get-content $serverkatalog\$s write-host "Info om servicer:" foreach ($sn in $servicenavn) { $service = Get-WmiObject win32_service -computer $s.name | where { $_.name -match "$sn"} write-host "" write-host "Navn:" $service.name write-host "Status:" $service.state } write-host "" write-host "------------------------------------" }
    • 0
  14. ghhanssen la til et innlegg i et emne Akselerometer program/spill for Windows Mobile   

    Her var det vist noen applikasjoner som benytter akselerometeret på HTC Touch Pro :thumbup:

    http://wmpoweruser.com/?p=1320
    • 0
  15. ghhanssen la til et innlegg i et emne [LØST] Script for å sjekke status på servicer   


    Ok,
    Eg er ikke så stødig på .NET programmering lenger, og har nok ikke tid til å sette meg inn i det igjen med det første desverre...
    • 0