Aby wyeksportować klucze do wszystkich sieci WiFi należy uruchomić CMD jako administrator i wpisać polecenie:
netsh wlan export profile key=clear folder="d:\pass"
Klucze będą eksportowane do plików .xml do uprzednio stworzonego katalogu d:\pass.
Aby wyeksportować klucze do wszystkich sieci WiFi należy uruchomić CMD jako administrator i wpisać polecenie:
netsh wlan export profile key=clear folder="d:\pass"
Klucze będą eksportowane do plików .xml do uprzednio stworzonego katalogu d:\pass.
Cały proces dodawania dysku do LVMa można opisać w 6 krokach;
Czyli cały proces konfiguracji LVM przebiega z następujący sposób:
Create partition and set type to lvm -> Phisical Volumens (PV) -> Volume Group (VG) -> Logical Volume (LV) -> creating Linux file system -> mount partition
Terminologia:
Volume Group (vg) – podstawowa jednostka LVM, w której skład wchodzą, dyski, partycje, macierze…. (pv – physical volumes).
Z Volume Group /dev/vg/lv można wykreować LV – Logical Volumes
Przykład:
Do serwera zostaje podłączony kolejny dysk fizyczny o poj. 16GB. W celu sprawdzenia poprawności dodania dysku i dołączenia go do LVMa należy wykonywać kolejno kroki wymienione poniżej..
Konfiguracja portu przełącznika CISCO tak, aby do danego portu mogło być podłączone tylko jedno lub wiele urządzeń o podanych adresach MAC.
configure t int range f0/1-15
Porty przełącznika domyślnie są ustawione jako Dynamic Auto. Należy je przestawić na Access Port.
switchport mode access
Przypisanie portom aktualnie podłączonych adresów MAC
switchport port-security mac-address sticky
Przypisanie portom przełącznika tylko jednego adresu MAC. Więcej adresów jest niedozwolonych.
switchport port-security max 1
Jeśli naruszy ktoś zasadę i podepnie do portu następny przełącznik i więcej urządzeń lub o innym adresie MAC, wtedy port się wyłączy.
switchport port-security violation shut
Zakończenie konfiguracji oraz jej zapamiętanie.
exit exit copy run start
Sprawdzenie zabezpieczenia portów, ich stanów (czyli informacji o ewentualnych naruszeniach polityki – kolumna SecurityViolation (Count)) oraz tablicy MAC:
sh port-security sh mac-address-tabl
PPP na środowisko -> Configure -> General -> Mail -> Edit -> należy wpisać Mail Server i Mail Sender
Advanced Settings -> Edit -> należy wpisać: mail.smtp.password, mail.smtp.port, mail.smtp.username
Zadaniem poniższego skryptu PS jest przeszukiwanie zasobu sieciowego w poszukiwaniu plików mających w nazwie datę wczorajszą, oraz wysłania ich nazw w wiadomości e-mail w przypadku ich znalezienia.
$emailFrom = 'powiadomienia@domena.pl' $secstring = '01000000d08c9ddf0115d1118c7a00c04fc297eb0100000060a18ed3a9312c4c939f8408d224ed9f00000000020000000000106600000001000020000000e0d0d688c598b0dc944b81409d0f7ab8dea52d0612f7d5e56b84c09d0d13eb07000000000e800000000200002000000036d3059ac438090bdbb1a0b4b2bb2fa7a5ffab65d96fa02a1aeab9667b54bb5f20000000a1f6442ff2bb3d90f1fd93b06d9178eec8239eb71fe330ff3c8fe5167b9120d1400000002dca53a7f97ac0d52ea085d15fa3dd501aec6e7eb72e5c23577ec53ef7f40c498573d0d7f58d57ca54521b0a4ffc77618d33178363f897ec08a72305078af168' $credential = New-Object System.Management.Automation.PSCredential($emailFrom, ($secstring | ConvertTo-SecureString)) $patch = '\\192.168.5.2\pliki\' $date = Get-Date -Format "yyyy_MM_dd" $day_minus_one = (Get-Date).AddDays(-1) | Get-Date -Format "yyyy_MM_dd" $time = get-Date -Format "HH_mm" $emailTo = "odbiorca1@domena.pl" , "odbiorca2@domena.pl" $files = Get-ChildItem -path $patch\*$day_minus_one.pdf "Wykonanie skryptu dnia $date o godzinie $time" >> $patch\script_activity.txt if ($files) { $files | Export-CSV $patch\revoke_privileges_$date.txt $body = $files | Out-String Send-MailMessage -To $emailTo -From $emailFrom -encoding utf8 -Subject 'Odbior uprawnien uzytkownikowi' -Body "Ponizej wykazane sa nazwy plikow - skanow wnioskow o nadanie uprawnien czasowych do pracy w systemie, ktore trzeba wycofac. $body Aby skrypt spelnial swoje zadanie data odebrania uprawnienia powinna znajdowac sie na koncu nazwy pliku PDF w formacie rrrr_MM_dd, tj. np KowalskiJanek_2023_05_05_W_KB_2023_05_10.pdf." <# -Attachments $patch\revoke_privileges_$date.txt #> -Credential $credential -SmtpServer 'server.smtp.com.pl' -Port 587 } else { exit }
SecureString (zaszyfrowane hasło – w tym przypadku do konta e-mail) można uzyskać konwertując hasło za pomocą komendy:
"haslo_czystym_tekstem" | ConvertTo-SecureString -AsPlainText -Force | ConvertFrom-SecureString | Out-File "d:\Password.txt"
SecureString może odkodować wyłącznie ten użytkownik Windows, który je zakodował, dlatego też najbezpieczniej jest utworzyć dedykowane konto Windows, które będzie używane wyłącznie do uruchamiania skryptu.
Skrypt PS można również skonwertować do pliku *.exe np. przy pomocy programu Win-PS2EXE-GUI. Jednak nawet z pliku exe można wyciągnąć SecureStinga.
Źródło:
https://stackoverflow.com/questions/14319272/powershell-scan-folder-for-certain-file-name-and-write-to-a-log-file-and-email
https://www.itprotoday.com/powershell/how-encrypt-powershell-scripts
https://powershellguru.com/instant-guide-to-convert-ps1-to-exe/
Move-ADDirectoryServerOperationMasterRole -Identity sw-dc02 -OperationMasterRole pdcemulator, ridmaster, infrastructuremaster, schemamaster, domainnamingmaster
Get-ADForest domena.local | Format-Table SchemaMaster, DomainNamingMaster Get-ADDomain domena.local | format-table PDCEmulator, RIDMaster, InfrastructureMaster
Jest to świetny skrypt umożliwiający sprawdzenie zajętości dysku virtualnego. Jest on tym bardziej przydatny, ponieważ VMware Tools zainstalowany na maszynie wirtualnej nie posiada tej opcji.
# Establishing the connection to our vSphere object
$vm = Get-VM -Name $vmName
$vmView = $vm | Get-View
# Creating a new PowerShell custom object to easily output properties
$output = New-Object -TypeName PSCustomObject
# Adding desired properties to the new PowerShell object
$diskCommit = $vmView.Storage.PerDatastoreUsage.Committed
$diskUncommit = $vmView.Storage.PerDatastoreUsage.Uncommitted
Add-Member -InputObject $output -MemberType NoteProperty -Name UsedSpaceGB -Value ($diskCommit / 1GB)
Add-Member -InputObject $output -MemberType NoteProperty -Name ProvisionedSpaceGB -Value (($diskCommit + $diskUncommit) / 1GB)
$diskKey = $vmView.LayoutEx.Disk.Key
$diskCapacity = $vmView.Config.Hardware.Device | Where-Object {$_.key -eq $diskKey} | Select-Object -ExpandProperty capacityInBytes
Add-Member -InputObject $output -MemberType NoteProperty -Name CapacityGB -Value ($diskCapacity / 1GB)
Add-Member -InputObject $output -MemberType NoteProperty -Name GuestPath -Value $vmView.Guest.Disk.DiskPath
Add-Member -InputObject $output -MemberType NoteProperty -Name GuestCapacityGB -Value ($vmView.Guest.Disk.Capacity / 1GB)
Add-Member -InputObject $output -MemberType NoteProperty -Name GuestFreeSpaceGB -Value ($vmView.Guest.Disk.FreeSpace / 1GB)
# Viewing the output
$output
Źródło: https://www.kmruddy.com/2019/powercli-disk-space-utilization-vsphere-object/
Świetny blog!
enable-adoptionalfeature ‚recycle bin feature’ -scope forestconfigurationset -target nazwa.domeny’
get-adobject -filter {displayname -eq ‚skasowane konto’} -includedeletedobjects
get-adobject -filter {displayname -eq ‚skasowane konto’} -includedeletedobjects | restore-adobject
UWAGA: kosz raz włączony nie może zostać wyłączony. Potrzebuje czasu zanim się rozpropaguje.
Pierwszy sposób – poprzez GUI: Active Directory Sites and Services
Drugi sposób – za pomocą linii komend – narzędzi Repadmin.exe, Dcdiag.exe oraz PowerShell.
Poniżej przykłady użycia polecenia repadmin oraz PS:
repadmin /?
repadmin /showrepl
repadmin /showrepl DC2
repadmin /showconn
repadmin /showconn DC2
repadmin /showobjmeta DC2 „cn=”
repadmin /kcc
repadmin /replsum
repadmin /replicate DC1 DC2 dc=company,dc=pri /destinstion, source, context
repadmin /syncall DC1 dc=company,dc=pri //synchronizacja wszystkich kontrolerów
repadmin /syncall DC1 dc=company,dc=pri /e /d
Get-ADReplicationFailure DC1
Get-ADReplicationConnection
Get-ADReplicationPartnerMetadata
W przypadku problemów z replikacją można sprawdzić w serwerze DNS czy figuruje Alias (CNAME) wszystkich kontrolerów domeny, czyli: <GUID>._msdcs.nazwadomeny.local . Jest to rekord typu CNAME, po którym komunikują się ze sobą kontrolery domeny. Rejestrują się one w serwerze DNS przy starcie usługi netlogon (komenda cmd: net stop netlogon && net start netlogon).