Floating Octothorpe
Archive
- Building a NAS: part 4 - ZFS mirror
- Building a NAS: part 3 - ZFS
- Building a NAS: part 2 - OS encryption
- Building a NAS: part 1
- New year, new URL
- Importing CA certificates on Firefox for Android
- Markdown readme files in cgit
- Automating VirtualBox screenshots with Python
- Automating VirtualBox screenshots with the CLI
- Detecting uptime from TCP timestamps
- Bup repositories and Git
- Getting started with Bup
- Raspberry Pi playbooks
- 2018 Facebook Hacker Cup qualification
- Using doctest instead of unittest in Python
- Test driven development with Python
- Test driven development
- Additional SSH client security
- Protecting SSH keys
- DNS over HTTPS with cloudflared
- DNS queries over TLS
- CVE-2018-1111: DHCP command injection
- Caching DNS queries with Unbound
- Custom Linux login prompts
- Reverse Polish notation
- The C Programming Language: Chapter 3
- Encrypting files with OpenSSL
- Bitwise operators in C
- The C Programming Language: Chapter 2
- The C Programming Language: Chapter 1
- The C Programming Language: Preface
- Deploying Python 3 WSGI applications with mod_wsgi
- Setting up a headless Raspberry Pi
- Recovering deleted branches in Git
- Bash config and where it lives
- Customising systemd unit files
- Linting JavaScript with ESLint
- Incremental tar backups
- Getting started with PixiJS
- Writing snake in JavaScript
- Working without Netcat
- Cracking TrueCrypt volumes with John the Ripper
- Using CSS custom properties
- Linux teardown checklist
- Writing custom Pelican themes
- Working with Pelican
- Getting started with Pelican
- Setting up cgit on Debian
- Managing OpenWrt remotely with cURL
- Automating Debian installation using preseeding
- Receiving files over HTTP with Python
- Mix authentication with htpasswd and certs
- Revoking client SSL certificates
- Client SSL certificate authentication with Apache
- Embedding Ace in Gitit
- Running Gitit behind Apache
- Setting up a wiki with Gitit
- Using chntpw to reset Windows accounts
- Decrypting Android backups with Python
- Extracting backups with Android backup extractor
- Android backups with adb
- Working with GPG
- JavaScript oddities
- Intercepting HTTP traffic with Squid
- WiFi security with hostapd
- Raspberry Pi WiFi access point
- Empty trees in Git
- LaTex CV with CentOS
- Dumping memory with GDB
- Monitoring filesystems with inotify
- HAProxy: TLS passthrough with HTTPS checks
- Setting up Syncthing on Raspbian
- Comparing remote files with Vim
- Automatic Radicale backups with Git
- Securing Radicale
- Getting started with Radicale
- Sudo security
- Getting started with Websockets
- Netcat tricks and tips
- Decrypting HTTPS traffic without a key
- Decrypting HTTPS traffic with Wireshark
- Checking expired passwords with Serverspec
- Sharing Serverspec examples
- Getting started with Serverspec
- Tracing processes
- SOCKS5 with SSH
- Remote logging with Rsyslog
- Getting started with auditd
- Grabbing certificates with OpenSSL
- Leap seconds and Datefudge
- Running Xfce on CentOS
- Python, Venv and Cygwin
- ATA security
- Validating YAML with Ruby
- Removing carriage returns
- Face detection with OpenCV
- Python3, CentOS and pip
- Getting started with virtualenv
- Multiplayer terminals with Screen
- Cloudflare API: dynamic DNS
- Cloudflare API: getting started
- Running Python modules as scripts
- Shannon entropy
- Git statistics
- Python for else?
- Verifying RPM signatures
- Linked clones
- More Bash tips
- Local CentOS mirror
- Kickstarting a CentOS VM
- Tips for print CSS
- Makefiles for Java
- Ansible playbooks
- Getting started with Ansible
- Git: Prevent pushing directly to master
- TTY detection in bash
- Java and TrustStores
- Mapping IP addresses
- Running knockd
- SSH Multiplexing
- dd progress
- Bash tips
- Old ssh known_hosts entries
- Git tips
- Hello world