Tag Archives: review

results from running pi-hole for several weeks

I came across pi-hole recently – an ad blocker and DNS service that you can run on a Raspberry Pi in Raspian (or any Debian or Ubuntu (ie Debian-like)) system. Using pi-hole should obviate the need for running ad-blockers in your browser (so long as you’re on a network that is running DNS queries through pi-hole).

I’ve seen some people running it on CentOS – but I’ve had issues with that combination, so am keeping to the .deb-based distros (specifically, I’m running it on the smallest droplet size from Digital Ocean with Ubuntu 16.04).

First the good – it is truly stupidly-simple to get setup and running. A little too simple – not because tools should have to be hard to use, but because there’s not much configuration that goes in the automated script. Also, updating the blacklist and whitelist are easy – though they don’t always update via the web portal as you’d hope.

Second, configuration is almost all manual: so, if you want to use more than 2 upstream DNS hosts (I personally want to hit both Google and Freenom upstream), for example, there is manual file editing. Or if you want to have basic auth enabled for the web portal, you need to not only add it manually, but you need to re-add it manually after any updates.

Third, the bad. This is not a pi-hole issue, per se, but it is still relevant: most devices that you would configure to use DNS for your home (or maybe even enterprise) want at least two entries (eg your cable modem, or home wifi router). You can set only one DNS provider with some devices, but not all. Which goes towards showing how pi-hole might not be best run outside your network – if you run piggy-back DHCP and DNS both off your RPi, and not off the wireless router you’re probably running, then you’re OK. But if your wireless router / cable modem demands multiple DNS entries, you either need to run multiple pi-hole servers somewhere, or you need to realize not everything will end up going through the hole.

Pi-hole sets up lighttpd instance (which you don’t have to use) so you can see a pretty admin panel:

pihole

I added basic authentication to the admin subdirectory by adding the following lines to /etc/lighttpd/lighttpd.conf after following this tutorial:

#add http basic auth
auth.backend = "htdigest"
auth.backend.htdigest.userfile = "/etc/lighttpd/.htpasswd/lighttpd-htdigest.user"
auth.require = ("/admin" =>
( "method" => "digest",
"realm" => "rerss",
"require" => "valid-user" )
)

I also have 4 upstream DNS providers in /etc/dnsmasq.d/01-pihole.conf:

server=80.80.80.80
server=8.8.8.8
server=8.8.4.4
server=80.80.81.81

I still need to SSLify the page, but that’s coming.

The 8.8.* addresses are Google’s public DNS. The 80.80.* addresses are Freenom’s. There are myriad more free DNS providers out there – these are just the ones I use.

So what’s my tl;dr on pi-hole? It’s pretty good. It needs a little work to get it more stable between updates – but it’s very close. And I bet if I understood a little more of the setup process, I could probably make a fix to the update script that wouldn’t clobber (or would restore) any custom settings I have in place.

draft day – the second football movie of the year

And while not as good as When The Game Stands Tall, still a very good movie.

The parents’ guide warnings from IMDB may be helpful – there’s more language than needed for the story-telling, though I guess that’s what brought it into the PG13 range instead of PG.

I’m not a huge fan of sports movies in general, but some are good (especially the ones that aren’t really sports movies (like For Love of the Game, another Kevin Costner film)). I’m happy to be able to add this one to my list of enjoyable stories.

programming your home by mike riley

Mike Riley’s entry in The Pragmatic Programmers series, Programming Your Home – automating with Arduino, Android, and your computer – was a lot of fun.

While I am not really in a position to do many of the mini projects given in the book (wrong type of house plus we rent), reading some of the project ideas did give me some inspiration for other activities. One of those is a Buffer-like tool I’m now writing to queue tweets over-and-above what the free level of Buffer will allow (and on a different schedule from my Buffer-fed queue). In conjunction with python-twitter, cron, and simple email messages, I’ve got a system started to which I can email things I would like to be posted, and they will go out when the cron job runs.

The Arduino is an impressive embedded platform – one that has also rekindled another long-time interest I’ve had in robotics. Years back, I recall seeing Sally Struthers advertising for one of those learn-at-home groups, and one of the options was robotics. (By “years back”, I mean 20+ years ago – probably more like 25 years ago, at this point.) I used to own a copy of Robot Builder’s Bonanza – and read it cover-to-cover a couple times. I loved watching Battlebots on TV. I’ve always wanted to buy/use LEGO Mindstorms.

Using robots to automate daily activities (and, of course, for fun) has been a fascination since I first saw Lost In Space and myriad other scifi shows and movies.

Riley does a great job of not demanding you be an expert programmer (or even a programmer at all) with the fully-implemented code examples in the book. He also does a good job of indicating what you’ll likely have to tweak on your own – and what you can probably just leave alone in the examples. Add to this the “extra credit challenges”, and I highly recommend it to anyone interested in home automation, embedded development, robotics, or just general programming/scripting.

There are some other interesting Python snippets throughout the book – that don’t have to be used in the context of an Arduino (like using Google’s SMTP server (via authentication)).

germline by t c mcarthy

As promised when I finished Mira Grant’s Newsflesh trilogy, I did read Germline by T C McCarthy.

I wasn’t able to get into the second book of the trilogy (Exogene), and haven’t attempted the last (Chimera) – but Germline was amazing.

A quick disclaimer first – this book is most certainly NOT for the faint of stomach, or those who cannot ignore vulgarity.

Taking place in a not-too-distant future, T C McCarthy takes us into the on-again-off-again underground hot war being fought somewhere in Kazakhstan. We find our main character, Oscar, a journalist for Stars and Stripes, spinning out of control in a drug-induced stupor but getting that “one last chance” to earn his place as a journalist. Oscar hasn’t paid his dues, but has managed to make friends among the “important” players on the US side of the war.

This book reminded me of a novel I read years ago that took place in the Vietnam War, written by a vet of that arena – it’s visceral, gritty, and the words seem to fly off the page into your eyes, converting your mind into the exact place and time Oscar is in when he’s in it. You are there with Oscar as he suits up, plugs-in, shoots-up, crawls through the subterrene with the Marines unit he’s assigned to.

This is perhaps the single best future scifi I’ve ever read that doesn’t require an entirely alternate universe to exist.

why nations fail by daron acemoglu and james a robinson

I first came across Why Nations Fail at my local Half Price Books. After seeing it on the shelves a couple times, but still being unsure about whether I really wanted to read it or not, I reserved it at my local library.

Now I wish I had bought it (and likely will) – Daron Acemoglu & James A Robinson, while sometimes slipping into an academic, journalistic tone, present a fantastic historical, economic, cultural, and international view into the similarities, and differences, of “national” failures around the world over the last several centuries.

They spend a great deal of time expounding on the differences of countries that succeed and those that don’t – and offer insights into how failing nations could, potentially, turn themselves around.

Interestingly, the factors that play-into national success and failure are similar throughout history – critical junctures, inclusive/pluralistic political and economic environments vs extractive/exclusive political and economic structures, empowered citizenries, overbearing rulers, literacy, economic incentives (positive and negative), etc.

The Iron Law of Oligarchy:

the overthrow of a regime presiding over extractive institutions heralds the arrival of a new set of masters to exploit the same set of pernicious extractive institutions (p366)

My recommendation? Buy it. Read it. Share it. The background and conclusions this book presents and reaches should be required reading for anyone who wants to see their nation “do better” – politicians, businessmen, citizens, NGOs: all would benefit from applying what is demonstrated in this excellent work.

  • Quality of writing: 4/5
  • Quality of content: 4.5/5
  • Historicity: 5/5
  • Educational value 4.5/5
  • Overall: 4.5/5