Skip to content

Instantly share code, notes, and snippets.

@RulerOf
RulerOf / get-sshfingerprint.ps1
Created January 31, 2019 20:49
Get SSH host key fingerprint using PowerShell. Requires the WinSCP .Net assembly.
function Get-SshFingerprint {
param( [string]$ssh_server )
# Load WinSCP .NET assembly
Add-Type -Path "${env:ProgramFiles(x86)}\WinSCP\WinSCPnet.dll"
# Setup session options
$sessionOptions = New-Object WinSCP.SessionOptions -Property @{
Protocol = [WinSCP.Protocol]::Sftp
HostName = $ssh_server
@RulerOf
RulerOf / plex-streaming-quality-settings.md
Last active October 16, 2023 03:53
Adjusting Plex Media Player streaming quality defaults and per-stream

Setting a default quality in Plex Media Player desktop

The Plex Media Player desktop application's default quality setting is in different places depending on the interface you're using. The Plex Web UI is used as a point-and-click interface, whereas the Plex Media Player TV UI is used as a remote-friendly interface.

Plex Web UI Plex Media Player TV UI
@RulerOf
RulerOf / arn_parse.rb
Last active January 31, 2020 20:58
Parse an AWS ARN with Ruby
class Arn
attr_accessor :partition
attr_accessor :service
attr_accessor :region
attr_accessor :account
attr_accessor :resource
def initialize(partition, service, region, account, resource)
@partition = partition
@service = service
@RulerOf
RulerOf / example.tf
Created August 12, 2019 23:01
Turning two lists of maps into a single map output
variable "map1" {
default = [
{
name = "map1name1",
default_ip_address = "map1addr1"
},
{
name = "map1name2",
default_ip_address = "map1addr2"
}
@RulerOf
RulerOf / README.md
Last active November 30, 2022 21:20
Dynamic DNS Script I used for Google Domains with DD-WRT

DD-WRT Dynamic DNS for Google Domains

Create a Synthetic Record for Dynamic DNS. Copy the script and substitute your synthetic record's username, password, and FQDN in the config section.

Go to Administration > Commands tab and paste the code into the Command box, then click Save Custom Script.

Go to Administration > Management tab. Scroll down to the Cron section, and toggle Cron: Enable

In the Additional Cron Scripts section, put:

@RulerOf
RulerOf / README.md
Created June 30, 2020 01:48
Bookmarklet to make a youtube video fill the window

Use the minified code inside of a bookmarklet. You can test it directly in your browser console on any YouTube video page. It ought to work anywhere but was only tested in Chrome 83.

When you're on a YouTube page, click the bookmarklet and it'll take you to the embedded version of the player that fills the entire window without requiring you to go to full screen mode. This is particularly useful if you have a 16:10 monitor.

The non-minified code is included as a reference to show how it works. There are other window-filling bookmarklets out there. I made this one because I wanted to write it.

@RulerOf
RulerOf / pfsense-on-centos-8.md
Last active January 9, 2024 22:18
Installing pfSense on KVM in CentOS 8

Installing pfSense on KVM in CentOS 8

We download the latest release of pfSense as a gzipped ISO, then extract it and pass it to virt-install to get the VM up and running. Interactive portions of setup are done with virt-install's native console redirection. This guide assumes you've already installed and configured KVM, and that you've created network bridges already.

Instructions

Find the latest release here.

Download the gzipped memstick-serial image from a mirror into a directory that KVM can access, then unzip it:

@RulerOf
RulerOf / README.md
Last active April 9, 2021 14:26
Provides a bare-minimum configuration to keep Amazon Linux 2 on Lightsail updated if you want it to be a "hands off" setup.

Amazon Linux 2 on Lightsail, Bare Minimum Setup

The idea here is to give a set of "common sense" defaults for running Amazon Linux 2 on Lightsail. These defaults include:

  • Automatic Updates
  • Live Kernel Patching
  • Automatic Reboots when Required by Updates

Usage

@RulerOf
RulerOf / README.md
Created March 31, 2021 13:44
DNS SRV Records with Terraform

DNS SRV with Terraform (On AWS Route53)

DNS SRV records are a little cryptic. Even when you create them, it's not particularly obvious what the information in the SRV record actaully means.

When creating the records with Terraform, you can for_each the resource to supply one or more maps that contain better descriptors of the SRV record's constituent components. See the example in the terraform snippet below. Refer here for a longer explanation.

@RulerOf
RulerOf / install.sh
Created April 4, 2021 15:41
Install OpenVSwitch with os-net-config on Debian Buster
# Install python3 and OVS
sudo apt install python3-pip openvswitch-switch -y
# Install os-net-config
sudo pip3 install os-net-config
# Create os-net-config file
sudo mkdir -p /etc/os-net-config
sudo touch /etc/os-net-config/config.yaml