Cron rsync with encrypted SSH keys on OS X

There are many online resources about using SSH keys to achieve passwordless, cron-initiated tasks like rsyncing some files around. Most of these assume your SSH key is either not encrypted with a password, or that you're running the related command in an interactive session.

What I couldn't easily find recently was a way to make sure that a script initiated via cron on OS X 10.10 (Yosemite) and that uses an SSH key that is encrypted with a password would have access to that key as managed by the current login session's ssh-agent.

This problem manifested itself with the following kind of output from my rsync command - being used to back up some files from a remote server - when it was executed via cron:

Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: unexplained error (code 255) at /SourceCache/rsync/rsync-45/rsync/io.c(453) [receiver=2.6.9]

If I ran the same command from the shell prompt it worked fine.

Continue reading "Cron rsync with encrypted SSH keys on OS X"

Chrome extensions to manage online privacy

Privacy

There are a couple of extensions for Chrome that I've been using for a while now to try to maintain or improve my privacy online. Some have been helpful, others haven't. Some mini-reviews:

Terms of Service, Didn't Read

Most every modern website has a "Terms of Service" that governs your interactions with it. The document usually lays out how and when the site will use any data it collects about you - helpful, right? The document is also usually many pages long and would potentially take hours to fully absorb and understand. Terms of Service, Didn't Read is an extension that tries to give you a high-level view of the Terms of Service of the site you're on, based on their team's reading and interpretation of those documents on your behalf. If there are particular concerns related to privacy and personal data use, the extension will flag that when you arrive.

I used this extension for several months, finding it interesting at first to see how the sites I visited regularly measured up to TOSDR's evaluation. But after the initial curiosity wore off, I realized that for the most part, the information here wasn't changing my behavior. If TOSDR flagged something like "The copyright license is broader than necessary" or "This service tracks you on other websites," I'd still have to do some more digging to figure out exactly what that meant, and whether or not I was comfortable with it. So, the information provided by TOSDR is helpful, but not always conveniently actionable when it comes to protecting privacy. (There's a theme in all this: protecting privacy is rarely convenient.)

Continue reading "Chrome extensions to manage online privacy"

Pet Adoption, Debt Clock WordPress Plugins

I recently released two simple WordPress plugins:

This creates a simple pet adoption search form in a widget on your WordPress site. Once you enter a postal/zip code, you're taken to results on Adopt-a-Pet.com where you can look for a homeless dog, cat or other animal waiting for your love. (Yes, I've worked a lot in the past with Adopt-a-Pet.com, but this plugin is not affiliated with or endorsed by them, I just created it for fun and to promote pet adoption.) Pull requests welcome.

This creates a simple widget display of the current U.S. national debt, based on the latest data available from the U.S. Treasury. If you want you can animate the number so that it is increasing/decreasing on the page according to recent changes in the actual debt. Pull requests welcome.

 

Continue reading "Pet Adoption, Debt Clock WordPress Plugins"

Two-factor authentication

UCSF bicycle security failYou need to be using two-factor authentication (2FA) for your online accounts that matter.

Right now.

Do it.

Please.

In the past 2FA was a kind of geeky thing that only the most security-conscious would bother with. Today, it's essential that anyone storing sensitive information online or using online services for anything remotely important employs the use of 2FA.

It's an imperfect security mechanism and there things about it that are inconvenient, but for now it's the best intermediate option for protecting against unauthorized access to your accounts and your information. Using it is much less inconvenient than trying to recover from having someone take your money, abuse your identity, or access your private data.

Continue reading "Two-factor authentication"

Perl script and Alfred workflow for quick call notes

As a part of trying to live a more paperless life, I'm determined to take notes electronically when I'm sitting at my computer, instead of jotting them down on scraps of paper and then putting them into a document later.

When a phone call comes in, I want to be able to start typing my notes about the call right away so that I'm not distracted as I'm switching over to my text editor, opening a new document, saving the document someplace to make sure I don't lose what I'm typing, and THEN being ready to actually take notes.

I've been using the OS X productivity app Alfred more and more lately, and so I decided to create a simple Alfred workflow that would let me get a phone call notes file up in front of me, ready to edit, with minimal typing.

I wanted to make sure that the resulting notes file was named in some reasonable way that I could find again later, and so part of creating the workflow was figuring out how to take a free-form description of the call that I'd be typing in as it started, and turn that into a filesystem-friendly name (sometimes known as a slug). I ended up using a simple Perl script to do that for me.

The Alfred workflow, then, is just a keyword and a script run:

Screen Shot 2014-10-11 at 2.06.56 PM

Continue reading "Perl script and Alfred workflow for quick call notes"

Facebook messages autoresponder

I went looking today for tools to create an autoresponder for Facebook's private messaging functions. I try to avoid using Facebook's messaging whenever possible, but that doesn't stop someone who I'm connected to there from sending me a private message, which then most often sits unreplied for weeks or months. Having an autoreply that encouraged message senders to email me instead would save me some time and help make sure the contact attempt got through in a timely manner.

The bottom line is that the options are very limited and I may need to build my own if it feels important enough to pursue. In the meantime I thought I'd post my findings here in case there are others looking for the same, or who have new ideas to share.

Continue reading "Facebook messages autoresponder"

I'm joining Automattic

wordpress-logo-stacked-rgbOne of the main reasons I get excited about Internet technologies is that they amplify the power of the written word and other kinds of creative publishing. Modern online tools enable bloggers, software developers, poets, journalists, novelists, chefs, filmmakers, marketers, photographers, artists, scientists, organizers and many other kinds of people to bring their creations to the world, at a constantly decreasing cost. And even through all of the cultural transformations we've seen spurred on by the Internet, the power of the written word remains - publishing can still change minds, start movements, spark connections, capture beauty, reshape lives.

Next week I'm joining Automattic, Inc., the company that makes WordPress, runs WordPress.com, and provides a bunch of other publishing-related tools and services. I'm joining the WordPress.com VIP team as a full-time VIP Wrangler, where I'll be helping to provide support, hosting, training, and other services to some of the biggest and best WordPress sites on the web (NY Times, TED, CNN, Time and more).

There are many reasons I'm excited about this, including:

Continue reading "I'm joining Automattic"

Use the cloud, keep control of your data

Balloons in the Rose GardenAfter ranting recently about the choices we make to give "big data" companies access to our private information in ways that might be abused or exploited by government eavesdroppers, I thought it would be worth sharing some of the options I've found for using "the cloud" while also retaining a reasonable level of control over access to the data stored there.

This post has information about tools and software you can deploy yourself to approximate some of the functionality that third party services might provide, but that might also make you vulnerable to privacy and security vulnerabilities.  It's based on my experiences designing and implementing solutions for my own company, so it's mostly applicable to the interests of businesses and organizations, but may also be useful for personal projects.

A few important disclaimers: any time you make your personal or corporate data available on Internet-connected devices, you're creating a potential privacy and security vulnerability; if you need to keep something truly protected from unauthorized access, think hard first about whether it belongs online at all.  Also, the tools and services I'm listing here are harder to setup and configure than just signing up for one of the more well-known third party services, and may require ongoing maintenance and updates that take time and specialized knowledge.  In some cases, it requires advanced technical skills to deploy these tools at all, which is the reason most people don't or can't go this route.  Hosting and maintaining your own tools can often have a higher initial and/or ongoing cost, depending on what financial value you assign to data privacy.  Sometimes the privacy and security tradeoffs that come with using a third-party service are well worth it.

Still interested in options for using the cloud without giving up control over your data?  Read on.

Email and Calendar Sharing

Need a powerful, free email account?  Need robust calendar management and sharing capabilities? Everybody uses Gmail and Google Calendar, so just sign up for an account there, right?  Unless you don't want Google having access to all of your email communications and usage patterns, and potentially sharing that information with advertisers, government agencies or other entities.

Continue reading "Use the cloud, keep control of your data"

Recovering ASUS router firmware without Windows

Shark at the National AquariumIf you own an ASUS router and you brick it while trying to upgrade the firmware or some other action, you'll probably find documentation saying you need to run a Windows-only firmware restoration program to undo this damage.

While this is apparently the only officially supported method for restoring firmware (the alternative being to ship the router to ASUS for repair, a 10+ day process), I found with some exploring that the Windows program is likely just a glorified tftp client, and that you can restore firmware using some more standard, non-Windows tools.

I'm listing below the steps I had to use today after trying to upgrade my RT-AC66U device from firmware version 3.0.0.4.266 to 3.0.0.4.270.  (The release notes for the latter indicate a fix for a "live update related bug" which is what I suspect I encountered when I first tried to do the upgrade via the web GUI.)

I'm a Mac user, but these steps should work for other non-Windows operating systems such as Linux. It hopefully goes without saying that you should follow these steps at your own risk, and I make no claims or warranty about the outcome; you could end up worse off than you are now.  You could set your router on fire. You could end up killing another version of yourself living in an alternate universe.  Be careful.

Continue reading "Recovering ASUS router firmware without Windows"