Purpose
To check it
Gonsystem: Windows - Linux - Servers - Redes - Cisco - Comunicaciones - Monitorización - Seguridad
Purpose
Purpose
Add the following commands to a *.PP1 file:
Import-Module grouppolicy
$date = get-date -format d.M.yyyy
$DNSServer="MYDC"
$Zones = @(Get-DnsServerZone -ComputerName $DNSServer)
$Data = @()
ForEach ($Zone in $Zones) {
$nombrefile = $date + $Zone.ZoneName + ".dns.bak"
dnscmd /zoneexport $Zone.ZoneName backup\$nombrefile
Copy-Item C:\Windows\System32\dns\
}
$PSEmailServer = "10.10.11.10"
Send-MailMessage -From no-reply@myhome.loca -To infrastructures@myhome.local -Subject "mycompay. Backups semanal DFS Mydom.LOCAL" -Body "Finalizada la copia de Backups de DFS en el servidor XXXXX"
by GoN | Published: Nov 1, 2021 | Last Updated:
Purpose
Add the following commands to a *.PP1 file:
Import-Module grouppolicy
$date = get-date -format M.d.yyyy
$Filename=$date + "DFS.txt"
dfsutil root export \\midomain.local\datos C:\Backups\DFS\$Filename
Copy-Item "C:\Backups\DFS\$Filename" -Destination
\\midomain\
$PSEmailServer = "10.10.11.10"
Send-MailMessage -From no-reply@myhome.loca -To infrastructures@myhome.local -Subject "mycompay. Backups semanal DFS mydomain.LOCAL" -Body "Finalizada la copia de Backups de DFS en el servidor XXXXX"
by GoN | Published: Nov 1, 2021 | Last Updated:
Purpose
A Critical Alert when 1 year without restarting or shutting down.
Command: checkuptime
Check NagiosXI
by GoN | Published: Apr 13, 2020 | Last Updated:
Purpose
Purpose
Go to Menu "Group Policy Management" and "Open Migration Table Editor"
Check Windows 2019
by GoN | Published: Apr 10, 2020 | Last Updated:
Purpose
The PS Code:
#Primary mail variables
$SmtpServer="X.X.X.X"
$From= IT@Micompany.com
#Starting expire check in days pending Expire to alert
$expireindays=8
#Getting users array from all AD
$users=Get-ADuser -Properties Name, PasswordNeverExpires, PasswordExpired, PasswordLastSet, EmailAddress -Filter *
foreach ($user in $users) {
#Get the Name attribute for message purposes
$Name = (Get-ADUser $user | ForEach-Object { $_.Name })
# Exclude user with Password Never Expires activate
if ($user.PasswordNeverExpires) {
#Informative message if script is executed via Powershell directly
Write-Host $user.Name "- INFO: o que no le caduque la contraseña" -ForegroundColor Red
} else
{
#Setting expiration date parameter for user
$passwordSetDate = (Get-ADUser $user -properties * | ForEach-Object {$_.PasswordLastSet})
# ChecK the domain policy
$maxPasswordAge
= (Get-
$Expireson=
$passwordSetDate.AddDays($
#Getting script execution day date
$today=Get-Date
#Obtaining remaining days to expire password for user
$daystoexpire=(New-TimeSpan -Start $today -End $Expireson).Days
#Obtaining mail attribute from user
$emailaddress=$user.EmailAddre
#Condition that executes the mail advise if remaining days for password expiration are less than $expireindays variable and if is not expired (0 days remaining)
If (($daystoexpire -ge "0") -and ($daystoexpire -lt $expireindays)) {
#Informative message if script is executed via Powershell directly
"$Date - INFO: Sending expiry notice email to $name"
Write-Host "Sending Password expiry email to $name - le faltan $daystoexpire" -ForegroundColor Yellow
$
#Condition to attach the body message for email
if($daystoexpire -eq "1"){
$EmailBody="ULTIMO AVISO! La contraseña de WINDOWS del usuario $name caducará en $daystoexpire dia. Le recomendamos que cambie la clave antes de que expire el periodo indicado.
La última vez que modificó su contraseña fue $UserPasswordLastSet
Recuerde que usted es responsable de cualquier acción o actividad que se realice con su usuario y clave, por ello es muy importante
- La contraseña es personal e intransferible. No comparta la contraseña con nadie
- Elija contraseñas seguras fáciles de recordar y difíciles de adivinar para usted.
- La contraseña debe ser de longitud mínima 8 caracteres combinando letras, números, mayúsculas/minúsculas y símbolos. No utilice series.
- Evite poner palabras relacionadas con tus datos personales o de la empresa.
- Procure hacer faltas de ortografía, evita ataques de diccionario.
- No debe anotar o almacenar las contraseñas en ningún tipo de soporte sin cifrar, ni utilizar programas, utilidades o cualquier otro proceso automático de login automático no autorizado.
Si tiene sospechas que su contraseña ha dejado de ser secreta cámbiela inmediatamente.
Departamento de Sistemas de MyCompany"
} else {
$EmailBody="La contraseña de WINDOWS del usuario $name caducará en $daystoexpire dias. Le recomendamos que cambie la clave antes de que expire el periodo indicado.
La última vez que modificó su contraseña fue $UserPasswordLastSet
Recuerde que usted es responsable de cualquier acción o actividad que se realice con su usuario y clave, por ello es muy importante:
- La contraseña es personal e intransferible. No comparta la contraseña con nadie
- Elija contraseñas seguras fáciles de recordar y difíciles de adivinar para usted.
- La contraseña debe ser de longitud mínima 8 caracteres combinando letras, números, mayúsculas/minúsculas y símbolos. No utilice series.
- Evite poner palabras relacionadas con tus datos personales o de la empresa.
- Procure hacer faltas de ortografía, evita ataques de diccionario.
- No debe anotar o almacenar las contraseñas en ningún tipo de soporte sin cifrar, ni utilizar programas, utilidades o cualquier otro proceso automático de login automático no autorizado.
Si tiene sospechas que su contraseña ha dejado de ser secreta cámbiela inmediatamente.
Departamento de Sistemas de Micomapny"
}
$EmailSubj="Mycompany. Aviso de caducidad de password de tu usuario"
#Create and send an email object
$SMTPClient = New-Object Net.Mail.SMTPClient($
SmtpServer) $emailMessage = New-Object System.Net.Mail.MailMessage
$emailMessage.From = "$From"
Foreach($EmailTo in $emailaddress)
{
$
}
#Informative message if script is executed via Powershell directly$emailMessage.Subject = "$EmailSubj"
$emailMessage.Body = "$EmailBody"
$SMTPClient.Send($emailMessage
)
Write-Host "Sending E-mail to $emailaddress..." -ForegroundColor Green
}
Else {
#Informative message if script is executed via Powershell directly
#Te informa de los que no ha expirado
"$Date - INFO: Password for $Name not expiring for $daystoexpire days"
Write-Host "Password for $Name does not expire for $daystoexpire days" -ForegroundColor White
}
}
}
Purpose
Script
#Filter all users
$ALLUserTest = get-aduser -filter * -properties *
#Filter some user
#$x = 'Smith'
#$ALLUserTest =Get-ADUser -Filter "SamAccountName -like '*$x*'" -Properties *
ForEach($TestUser In $ALLUserTest)
{
write-host "User: " $TestUser.samaccountname, $TestUser.company
# Check before
Get-ADUser -identity $TestUser.samaccountname -Properties * | Select sAMAccountName, Company, extensionAttribute2 | sort-object -property extensionAttribute2
#Update fields
Set-ADUser –Identity $TestUser.samaccountname -Clear "extensionAttribute2"
Set-ADUser -Identity $TestUser.samaccountname -Add @{extensionAttribute2 = $TestUser.company}
# Check after
Get-ADUser -identity $TestUser.samaccountname -Properties * | Select sAMAccountName, Company, extensionAttribute2 | sort-object -property extensionAttribute2
}
by GoN | Published: Apr 10, 2021 | Last Updated:
Purpose
URL: https://metadefender.opswat.com/?lang=en