Skip to content

Instantly share code, notes, and snippets.


Ryan Castellucci ryancdotorg

View GitHub Profile
darconeous /
Last active Dec 23, 2021
Enabling SSH on Engenius EAP600

Enabling SSH on Engenius EAP600 (and maybe other models)

This tutorial will walk you through the steps needed to get root SSH access on an Engenius EAP600 dual-band WiFi access point. SSH doesn't come enabled out of the box on these things, so if you want to SSH into the device (which is running an old version of OpenWRT), keep reading.

dlenski /
Last active Dec 21, 2021
Fingerprint-based certificate validation in Python (including pin-sha256)
# -*- coding: utf-8 -*-
# This is a demonstration of how to do fingerprint-based certificate
# validation in Python, in the style of OpenConnect:
# For Python <3.7, we monkey-patch ssl.SSLSocket directly, because ssl.SSLContext.sslsocket_class
# isn't available until Python 3.7. For Python 3.7+, we set ssl.SSLContext.sslsocket_class
# to our modified version (which is sort of monkey-patching too).
bradoaks /
Created Apr 25, 2011 — forked from eqhmcow/
HFSC - linux traffic shaping's best kept secret
# As the "bufferbloat" folks have recently re-discovered and/or more widely
# publicized, congestion avoidance algorithms (such as those found in TCP) do
# a great job of allowing network endpoints to negotiate transfer rates that
# maximize a link's bandwidth usage without unduly penalizing any particular
# stream. This allows bulk transfer streams to use the maximum available
# bandwidth without affecting the latency of non-bulk (e.g. interactive)
# streams.
bendc / supportsES6.js
Created Aug 25, 2016
Test if ES6 is ~fully supported
View supportsES6.js
var supportsES6 = function() {
try {
new Function("(a = 0) => a");
return true;
catch (err) {
return false;
jmshal / atob.js
Last active Jul 9, 2021
Node.js ponyfill for atob and btoa encoding functions
View atob.js
module.exports = function atob(a) {
return new Buffer(a, 'base64').toString('binary');
epixoip / sshd_config.diff
Created Apr 10, 2021
ssh pubkey auth only with libpam
View sshd_config.diff
--- /etc/ssh/sshd_config.orig 2021-04-10 05:50:44.673514864 +0000
+++ /etc/ssh/sshd_config 2021-04-10 05:59:56.316912290 +0000
@@ -31,7 +31,7 @@
# Authentication:
#LoginGraceTime 2m
-#PermitRootLogin prohibit-password
+PermitRootLogin prohibit-password
#StrictModes yes
#MaxAuthTries 6
cemeyer / ⁄etc⁄logrotate.conf
Last active Mar 1, 2021
Sane logrotate.conf settings
View ⁄etc⁄logrotate.conf
# create new (empty) log files after rotating old ones
# use date as a suffix of the rotated file
compresscmd /bin/zstd
compressext .zst
compressoptions -18 -T0 --rm
FelixWeis / scriptPubKey-templates-0-400000.json
Created Mar 5, 2016
Bitcoin output script types by frequency (P2PK, P2PKH, MULTISIG, P2SH, OP_RETURN, ...)
View scriptPubKey-templates-0-400000.json
"OP_HASH160 20 OP_EQUAL": 10083919,
"65 OP_CHECKSIG": 887766,
"OP_RETURN": 288521,
"OP_1 33 33 33 OP_3 OP_CHECKMULTISIG": 224438,
"": 219175,
"OP_1 33 33 OP_2 OP_CHECKMULTISIG": 206415,
"33 OP_CHECKSIG": 101306,
"OP_RETURN 40": 65287,
Yawning / elligator2.h
Last active Mar 20, 2020
(DEPRECATED) A mostly drop in elligator2 for ed25519-donna.
View elligator2.h
There used to be something that resembled an Elligator2 implementation here ported from agl's
Go code. The implementation is unmaintained and has severe issues (as pointed out in a comment),
and should not be used for anything.
jayeye /
Created Oct 3, 2016
Setting up ISC dhclient on debian / ubuntu for prefix delegation

My ISP (Time Warner Cable) hands out IPv6 addresses with DHCPv6; it will delegate a /56 if asked. So long as I keep refreshing the lease, it won't renumber me. I have my cable modem set to bridge, and do all the firewalling, NATing, etc., on a Debian box. In what follows, eth0 is the internal interface.

The dhclient that ships with debian/ubuntu does not support asking for a prefix delegation, so I had to build one from sources.