Skip to content

Instantly share code, notes, and snippets.

View tdewin's full-sized avatar

tdewin

View GitHub Profile
@tdewin
tdewin / veeam-cve-list.sh
Last active March 28, 2024 10:17
veeam-cve-list.sh
#!/bin/bash
curl -s -o sec.json 'https://www.veeam.com/services/kb-articles?product=&version=&type=security&fromModificationDate=&toModificationDate=&search=&offset=0&limit=10000'
jq '[.articles[] | {id:.id,title:.title,date:.date}] | sort_by(.date) | reverse' sec.json
@tdewin
tdewin / experimental-migrate-vsphere-proxmox.sh
Last active March 14, 2024 22:24
Experimental migration tool from vSphere to Proxmox using Veeam Instant VM Recovery
# MIT LICENSE
# EXPERIMENTAL RUN STEP BY STEP AND MAKE SURE YOU UNDERSTAND WHAT YOU ARE DOING
# EXPERIMENTAL RUN STEP BY STEP AND MAKE SURE YOU UNDERSTAND WHAT YOU ARE DOING
# EXPERIMENTAL RUN STEP BY STEP AND MAKE SURE YOU UNDERSTAND WHAT YOU ARE DOING
# EXPERIMENTAL RUN STEP BY STEP AND MAKE SURE YOU UNDERSTAND WHAT YOU ARE DOING
# EXPERIMENTAL RUN STEP BY STEP AND MAKE SURE YOU UNDERSTAND WHAT YOU ARE DOING
# By default vPowerNFS does not allow mounting by any host. You need to disable the vPowerNFS IP filter to do so
# https://www.veeam.com/kb1055 -> point 7
# Key Location: HKLM\SOFTWARE\WOW6432Node\Veeam\Veeam NFS\
@tdewin
tdewin / minimalem.xml
Last active March 6, 2024 10:34
Minimal silent install files
<?xml version="1.0" encoding="utf-8"?>
<unattendedInstallationConfiguration bundle="Em" mode="install" version="1.0">
<properties>
<property name="ACCEPT_EULA" value="1" />
<property name="ACCEPT_LICENSING_POLICY" value="1" />
<property name="ACCEPT_THIRDPARTY_LICENSES" value="1" />
<property name="ACCEPT_REQUIRED_SOFTWARE" value="1" />
<property name="VBREM_LICENSE_AUTOUPDATE" value="0" />
@tdewin
tdewin / screenshot-function.zsh
Created November 3, 2023 18:38
Create screenshot with offset in macOS. At the same time make a screen log.md
function p {
PNG=$(printf "code-%d.png" $(($(date +%s))));
screencapture -R-1600,180,1280,720 $PNG;
OUT=$(printf '\n## Screenshot \n![](./screenshots/%s)\n' $PNG);
printf "%s" $OUT
printf "%s\n\n" $OUT | pbcopy
printf "%s\n\n" $OUT >> screenlog.md
}
@tdewin
tdewin / screenshot.zsh
Last active November 3, 2023 18:06
photo gallery powerpoint for Mac
#!/bin/zsh
# use screencapture -R0,0,1280,720 -T1 $(date +%s).png to make automated screenshots
# eg to snapshot for 1280 720 top left corner of your screen
#
#SEC=3
#X=0
#Y=47
#while [ 1 -eq 1 ]; do screencapture -R$(($X)),$(($Y)),$(($X+1280)),$(($Y+720)) -T$SEC $(date +%s).png; done
@tdewin
tdewin / kyverno.md
Last active November 6, 2023 14:46
kyverno with kasten 321
alias ky="kubectl"
ky create -f\
 https://github.com/kyverno/kyverno/releases/download/v1.10.0/install.yaml
ky get crd | grep kyverno.io
ky api-resources | grep kyverno.io
# ky delete clusterpolicies.kyverno.io "k10-3-2-1-backup-policy"
@tdewin
tdewin / setsize.ps1
Created October 16, 2023 12:10
set window size for screenshotting microsoft edge on 1280x720 (be careful, tricky code ;))
Add-Type @"
using System;
using System.Runtime.InteropServices;
public class Window {
[DllImport("user32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
public static extern bool GetWindowRect(IntPtr hWnd, out RECT lpRect);
@tdewin
tdewin / govc-screenshot.sh
Last active October 12, 2023 11:43
govc screenshot bash/zsh
# use ctrl c to exit loop
VM=myvm
[ ! -z "$(uname -a | grep Darwin)" ] && open $(govc vm.console $VM)
NOW=$(date +%s)
PAUSE=2
while [ 1 -eq 1 ];do
@tdewin
tdewin / govc-inject-ps.sh
Last active October 6, 2023 19:16
Inject powershell script in VM on ESXi host with govc (require a powershell command to be open, and us-keyboard-layout)
cat <<EOF > data.txt
write-host "All your base, base, base, are belong to us"
write-host "@tdewin"
EOF
VMNAME=vm
govc vm.keystrokes -vm=$VMNAME -s=$(printf "[System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String(\"%s\"))>data.ps1" $(cat data.txt | base64))
govc vm.keystrokes -vm=$VMNAME -c=0x28
@tdewin
tdewin / manage.sh
Last active September 26, 2024 17:33
GOVC wrapper on Mac, install vmrc for remote console and imagemagick for cropping. Useful mainly for a lab
#!/bin/zsh
export PATH=$PATH:/Users/$(whoami)/go/bin/
export GOVC_URL=https://192.168.
export GOVC_USERNAME=root
export GOVC_PASSWORD=Pleaseshareallyourcredentialsongithubnow!
export GOVC_INSECURE=true
export DEF_SSH_USER=root