Skip to content

Instantly share code, notes, and snippets.

@kerard
kerard / get-externalip.ps1
Created February 17, 2022 18:37
external ip
Invoke-RestMethod http://ipinfo.io/json
@kerard
kerard / get-lastlogon.ps1
Created February 4, 2022 15:37
last logon timestamp info
Get-ADDomaincontroller -Filter * | % {$DC = $_.name ; Get-ADuser someguy -properties * -Server $_.name | select @{n="LastLogon";e={[datetime]::FromFileTime($_.lastlogon)}},@{n="DC";e={$DC}} } | sort -Property lastlogon -Descending
@kerard
kerard / copy-az-database.sh
Created January 16, 2022 15:06
Copy Azure Database
# copy a database from one sql server to another (or the same one)
az account set --subscription "my-subscription"
az sql db copy --dest-name "database-copy-name" --dest-resource-group "database-resource-group" --dest-server "target-sql-server" --name "current-database-name" --resource-group "database-resource-group" --server "current-sql-server"
@kerard
kerard / pem-to-pfx.sh
Created January 16, 2022 14:59
Convert PEM to PFX
# a short openssl command to convert a PEM split key and cert
# into a PFX/pkcs12 file
openssl pkcs12 -inkey myprivatekey.key -in mycertificate.crt -export -out mypkcs12bundle.pfx
@kerard
kerard / replace-services-dupes.ps1
Created January 5, 2022 14:32
Replace duplicate services file entries
((get-content "$env:systemroot\system32\drivers\etc\services" | Sort-Object | Get-Unique).Where({$_ -ne ""})) | out-file "$env:systemroot\system32\drivers\etc\services.dedupe"
Copy-Item -Path "$env:systemroot\system32\drivers\etc\services" -Destination "$env:systemroot\system32\drivers\etc\services.$(get-date -Format yyyyMMdd)_backup"
move-item -Path "$env:systemroot\system32\drivers\etc\services.dedupe" -Destination "$env:systemroot\system32\drivers\etc\services" -Force
@kerard
kerard / sanitize-hosts.ps1
Created December 8, 2021 13:21
Sanitize hosts file on Windows system
$nodes = @("node1","node2","node3")
foreach ($node in $nodes)
{
invoke-command -computername $node -scriptblock {
$hostsOriginal = @"
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
@kerard
kerard / add-localgroupmembers.ps1
Created December 4, 2021 16:25
server localadmin group membership
$configuredGroup = "MyServer - Local Administrators"
$targetServers = "server1","server2","server3"
$membersOfConfiguredGroup = get-adgroupmember $configuredGroup
foreach ($server in $targetServers)
{
add-adgroupmember -Members $membersOfConfiguredGroup -Identity (get-adgroup "$server - Local Administrators")
}
@kerard
kerard / clear-logs.ps1
Created December 4, 2021 14:47
ez event log clear
# hackish event log dump
wevtutil el | Foreach-Object {wevtutil cl "$_"}
@kerard
kerard / az-deploy.sh
Created December 3, 2021 13:41
php app service test code
az account set --subscription mySubScriptionGuid
zip debug-php.zip index.php
az webapp deployment source config-zip --resource-group appservice-rg --name appservice-name --slot appservice-slot --src ./debug-php.zip
@kerard
kerard / generate-pfx-bundle.sh
Created November 22, 2021 21:11
Create a self-signed PFX bundle for Azure App Service using OpenSSL
openssl req -x509 -newkey rsa:2048 -keyout myserver.foo.com-key.pem -out myserver.foo.com-cert.pem -sha256 -days 1095 -subj "/C=US/ST=ST/L=MyCity/O=MyCompany/OU=Information Technology/CN=myserver.foo.com" -config my_cert_ext -extensions 'my server exts' -nodes
openssl pkcs12 -export -in myserver.foo.com-cert.pem -inkey myserver.foo.com-key.pem -out myserver.foo.com-pfx.pfx