cron.weekly issue #63: MongoDB, SELinux, relayd, dgsh, SSH, GPG, /dev/random & more!


cron.weekly is a newsletter about Linux, open source & webdevelopment. Want to get it in your inbox every Sunday? Subscribe below!

I respect your privacy and you won't get spam. Ever. Just a weekly-ish newsletter about Linux and open source.

Want to help support this blog? Try out Oh Dear, the best all-in-one monitoring tool for your entire website, co-founded by me (the guy that wrote this blogpost). Start with a 10-day trial, no strings attached.

We offer uptime monitoring, SSL checks, broken links checking, performance & cronjob monitoring, branded status pages & so much more. Try us out today!

Image of Mattias Geniar

Mattias Geniar, January 15, 2017

Follow me on Twitter as @mattiasgeniar

Welcome to cron.weekly issue #63 for Sunday, January 15th, 2017.

A full issue once again, lots of new projects and guides got posted last week. If those were New Year’s resolutions, keep it up!

Just as a reminder for anyone trying to find a project or guide mentioned in a previous newsletter, all issues are available online in the archive.

News

The MongoDB hack and the importance of secure defaults

Last few weeks, several unfirewalled and unsecured MongoDB instances were held “ransom”: their data was stolen and you had to pay bitcoins to get it back. This article looks at how that could happen and what the value of secure, sane default values are for system packages.

Docker 0-Day Stopped Cold by SELinux

Earlier last week, a Docker vulnerability (CVE-2016-9962) was made public, that allowed code run in a container to escape that container and compromise the host. In this post by Red Hat they explain how SELinux prevents such exploits.

systemd Sucks, Long Live systemd

A look at the bad & good parts of systemd. Thankfully, there are more good parts than bad, as we’ll be using systemd for quite some time.

How Stack Overflow plans to survive the next DNS attack

This post has some good insights in how/when to spread your DNS records across multiple providers, what the impact of one offline provider, if you should revoke nameservers or just keep them listed but ‘offline’, …

Software Developers Should Have Sysadmin Experience

And vice versa! A well reasoned post about the benefits of knowing both ends of the spectrum in order to build more resilient, reliable and performant applications.

Tools & Projects

DataDog: all your infrastructure, in one place

Track & alert on the health and performance of every server, container, and app in any environment, with Datadog. Sign up for a free 14-day trial. (Sponsored)

relayd

The relayd project consists of `relayd`, a load-balancer, application layer gateway, transparent proxy, and SSL/TLS gateway, and `httpd`, a web server that is based on relayd. It is secure, serves static files and supports FastCGI and TLS.

posixcube

A potential alternative to Ansible, posixcube is a POSIX compliant shell script server automation framework.

pssht

pshtt (“pushed“) is a tool to scan domains for HTTPS best practices. It saves its results to a CSV (or JSON).

wmail

This might be useful for your desktop, not so much your servers: an open source desktop client for Gmail & Google Inbox. Bringing the online Gmail & Google Inbox experience to your desktop in a neatly packaged app.

vallumd

This program allows you to centralize and distribute IP blacklists. It can be integrated with fail2ban, where banned IPs on a single host can be exported to other servers and preventively blocked. It’s a tool to build a clustered fail2ban, sharing IP block lists.

dvws

Damn Vulnerable Web Sockets (DVWS) is a vulnerable web application which works on web sockets for client-server communication.

hotel

A simple process manager for developers. Start apps from your browser and access them using local .dev domains.

dgsh — directed graph shell

A new shell based on Bash which introduces a very interesting “left to right” syntax at the CLI, offers multi-core processing with piped commands and an expressive syntax. Worth a look, scroll down to the examples to understand its power!

chisel

A fast TCP tunnel over HTTP.

Guides & Tutorials

Google Infrastructure Security Design Overview

very detailed write-up by Google on how to run a secure service online. It covers everything from physical security (hardware, on-prem security, …) to secure deployment to secure communication between services. Such amazing value in that document!

Using GPG to Encrypt Your Data

A guide by NASA on how to use GPG to encrypt and decrypt a message (or images, binary files, …).

SSH Start to Finish – Certificate Authority Basics

This write-up explains Certificate Authorities and Key Revocation Lists in order to understand how SSH key authentication works.

From OSX to Ubuntu

A guide for the hardcore OSX users that are tired of their OS to switch to Ubuntu. It covers some practical areas like replacing Alfred (task launcher), the File Manager, code editors, … All for Desktop Linux, of course.

Faster MySQL replication with group commit and delay

This post introduces 2 MySQL options that can greatly decrease MySQL replication lag: ‘slave-parallel-type’ and ‘binlog-group-commit-sync-delay’.

Randomness in Linux

A fund read about the difference between /dev/random and /dev/urandom, where entropy comes from, what ‘randomness’ means in Linux, …

Linux kernel initialization, translated to bash

This script by Hector Martin was created to explain the Kernel init process (initrd, initramfs, mounts, etc) more clearly, in Bash. Very technical and to the point, you’ll learn a few lesser-used CLI tools along the way.

Containers from Scratch

Containers with good old fashioned tools: chroot, unshare, nsenter, bind mounts, cgroups, setcap, … To understand what goes on behind a docker CLI command, this post gives a very good idea.

Videos

Building a Billion User Load Balancer

This presentation by Facebook offers more insights into the load balancer they created to serve traffic to Facebook.com and all the different apps. Lots of info on ECMP, ipvs, TCP session sharing, …



Want to subscribe to the cron.weekly newsletter?

I write a weekly-ish newsletter on Linux, open source & webdevelopment called cron.weekly.

It features the latest news, guides & tutorials and new open source projects. You can sign up via email below.

No spam. Just some good, practical Linux & open source content.