Skip to content

Instantly share code, notes, and snippets.

/* Usage
1. Run the setup function (you'll need to do this twice - 1st time to grant acces to Script Properties)
2. Share > Publish as service ... set security level and enable service
3. Copy the service URL and post this in your form/script action
4. Insert column names on the DATA sheet matching the parameter names of the data you are passing
call via https://your-script-url/exec?key=YOUR_KEY?headerX=123&headerB=xyz
*/
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDiYWt/bASTO/OR9c6MN4JMjlpTFsbuV+Vn0HfiR/XxRDTH52ay/KdlK0DdbkENVv66cWolZ/J/e71UJwGVTnKwOfYn1Hu4fh3RvLWDPJ/F0eaCvBEmrqxd+KxtWH/0io1J9sSjfAA2zTEGaR6NYf1Kz1lJpYROy7IbfHCpi7UGBbw9DOirPBG8GIH6y5QbZrLvV+CwA+GcQnGy2VU/H8GhQVYFwduhikXerEW9OJeX4USKjea7M1MaW//vPeRb5wQ3rZpJHwLryO0NpkhAU7V6kkaTyPBF95SlP4vE7tI5t/x0Ve/NQ3i4DOkcrQMX56jR4kXLBBF9wSavEcy1vB7tpxL+f/Tpm7IcQ+RwxWAYoNDzFEsU+Fhk5UwKYlTWKEGbSpISFObS72Bp11TgmdJydC5Ns2804DHo/4NlnW4Dg/7Ck0ruxGcCbKNffGPbcBOQRsLMfzcwAIenJoUNoHcchULBeDVcF83X8tobSTx0YDtYFlZKrNlVqHRXt8pZCKLIjAr+Lh1qkad7B1oP0WLokaqMnE0XGR3fzGgPl5kuvKpTLQIA2IbYTg0iW8nGBjq37G7kN/orGyyxcDqr1tWt7jzOwzSJTO4+B84QNyN9CSlSjxKU1sG0NbLdM5mWrAgTlc2EJof9S535oCVNqPlCJ0IT36DhS+6o6aFqMcQzvQ== jack@f4der.local
@withakay
withakay / NTLM.cs
Created October 8, 2019 08:34
NTLM Hash function in c#
/*
source:
https://www.codeproject.com/Articles/328761/NTLM-Hash-Generator
*/
public static string Ntlm(string key)
{
const uint INIT_A = 0x67452301;
const uint INIT_B = 0xefcdab89;
const uint INIT_C = 0x98badcfe;
@withakay
withakay / windows-vpn.ps1
Created December 11, 2019 16:20
Windows VPN
# Path for the public phonebook. Used as this is an all users connection.
# Change $env:PROGRAMDATA to $env:APPDATA if not creating an AllUserConnection.
$PbkPath = Join-Path $env:PROGRAMDATA 'Microsoft\Network\Connections\Pbk\rasphone.Pbk'
# Update these variables with the actual VPN name, address, and PSK.
$ConnectionName = 'ArrayString0',"ArrayString1", "ArracyString3","ArracyString4"
$ServerAddress = 'meraki-dynamic-ip-address-dynamic-m.com','meraki-dynamic-ip-address-dynamic-m.com','meraki-dynamic-ip-address-dynamic-m.com','meraki-dynamic-ip-address-dynamic-m.com'
$PresharedKey = 'PreSharedKeySecret'
# If no VPNs, rasphone.Pbk may not already exist
@withakay
withakay / doing.sh
Created January 7, 2020 16:41
Doing. Log what you are doing to a text file with a timestamp in a markdown friendly manner
#!/usr/bin/env bash
# path to the 'doing' file, if this doesn't exist one will be created (see below)
DOING_FILE="~/Documents/doing.txt"
# the entry prefix, a tab and hyphen, so markdown parsers can render it
PREFIX=" -"
# date now as yyyy-MM-dd HH:mm - e.g. 2019-05-25 21:56
now=`date '+%F %H:%M'`
task="$@"
@withakay
withakay / sigred_temp_fix.bat
Created July 17, 2020 11:28
SigRed temp registry fix
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters" /v "TcpReceivePacketSize" /t REG_DWORD /d 0xFF00 /f && net stop DNS && net start DNS
@withakay
withakay / dhcpd.conf
Created December 2, 2020 14:58
Update Route53 from ISC DHCP Server when a new lease is created via python and boto3
# add to dhcpd.conf
# make sure the dhcpd user has permission to execute the script
on commit {
set ClientName = pick-first-value(option fqdn.hostname, option host-name, "unknown-hostname");
set ClientIp = binary-to-ascii(10, 8, ".", leased-address);
set ClientMac = binary-to-ascii(16, 8, ":", substring(hardware, 1, 6));
execute("/opt/dhcpd-hooks/dhcp_event_hook.py", "commit", ClientName, ClientIp, ClientMac);
}
@withakay
withakay / resize.sh
Last active February 4, 2021 17:11
Extend/Resize a partition and logic volume on Ubuntu Linux that was installed with LVM enabled
#!/usr/bin/env bash
# This script will extend the logical volume
# To use all the free space.
# Run this after increasing the size of the virtual disk.
# NOTE, run as sudo.
# Run `pvdisplay` to check your device numbers match up
# /dev/sda3 & ubuntu-vg & ubuntu-lv are the defaults
# if you chose LVM when installing Ubuntu
@withakay
withakay / install-latest-docker-compose.sh
Created February 8, 2021 06:51
Install the latest docker-compose
#!/bin/bash
# A script that will always install the latest docker-compose.
# Execute as root.
#
# See official docs for more
# https://docs.docker.com/compose/install/
#
curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
@withakay
withakay / UnlockScheduledTask.ps1
Created February 19, 2021 13:34
This Powershell script updates the security descriptor for scheduled tasks so that any user can run the task.
<#
.SYNOPSIS
This Powershell script updates the security descriptor for scheduled tasks so that any user can run the task.
Version 1.0 of this script only displays tasks in the root folder. I want to make sure that works first.
.DESCRIPTION
Earlier versions of Windows apparently used file permissions on C:\Windows\System32\Tasks files to manage security.
Windows now uses the SD value on tasks under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree to accomplish that.