Mike Schroll

Insights from Security Expert turned Web Entrepreneur

OSX Lion File Vault 2 Encrypting Secondary and External Drives

Ever since I upgraded to an OCZ Vertex 3 SSD and bought a Drive Adapter so that I could put my old 750GB in the spot of the optical drive in my 15” Macbook Pro, I’ve wanted to extend my FileVault to the secondary drive also.

Apple does not make this an easy task, and the sources for how to do this are incomplete, and scattered around the net, so I decided to write this up, mostly for my own reference, and also for anyone else who ventures down this path.

For those who are more adventerous than I, and have placed one or more User homedirs on your secondary drive, there’s also a nice Unlock app which solves a problem you’ll have, with your secondary drive not being mounted early enough in the boot process. I did not have to use this, as I want my homedir to be sped up by the SSD!

The magical terminal command line to kick things off is:

diskutil cs convert [disk name] -passphrase

Now, everyone else on the net ends that with [Passphrase] and tries to convince you to type your passphrase on the command line. Its common knowledge in the security world that putting sensitive information in a command-line string is a no-no, as it can be seen by other users on the system, and gets logged in your command-line history. Instead exclude it, and the command will prompt you interactively to supply the password.

Here is my command:

diskutil cs convert /dev/disk1s2 -passphrase

How did I get disk1s2? Well, running “diskutil list” is helpful. As is just running df and seeing what you have mounted.

Next I ran:

diskutil cs list

to check the activity of the conversion. I was met with only a Logical Volume Group and Physical Volume (no new encrypted partition called Logical Volume Family and Logical Volume). After waiting eons, and being concerned, I finally decided to reboot.

Upon reboot, I was prompted by OSX to enter the passphrase to mount the encrypted volume. (Damn them for not allowing me to paste it in from 1Password), then I ran the list command and it now showed everything correctly for the new encrypted drive, however it said ‘Sequence 4’ and claimed to be converting, but said Conversion Direction: -none- and Size (Converted): -none-

My console log reported:

corestoraged: 0x7fff76b19960 startBackgroundConversion: there was a problem starting background encryption on the logical volume

I figured it may have not started yet again due to not having the encryption passphrase on boot. Rebooted yet again.

Finally! The list command now reported Sequence 6 for the Logical Family Volume, conversion direction Forward and Logical Volume showed Size (Converted) growing.

Albeit this will take far longer than my SSD to convert, as its going about 5 times slower; but now I will no longer have to be concerned about ANY of my data being readable should my machine fall in to evil hands!

These are the sources I used while reading about doing this:

Update 1/5/2012: Apparently its not possible to encrypt drives larger than 3TB and/or through USB. I get the error:

Error: -69730: Unable to create boot loader partition due to the specifics of your partition map layout

But word is that its fixed in OSX 10.7.3, whenever that gets released.

Disclaimer: I made the top two product links referral links

Updated Domain Strategy Due to Godaddy’s Support of SOPA

I’ve been dissatisfied with GoDaddy and their policies for quite some time. With the recent Hubbub regarding their support of SOPA (SOPA for Dummies) I decided it was a great opportunity to migrate away from them. I moved 17 domains I plan on keeping to namecheap, using their promo code SOPASUCKS for $6.99 domains (first 10) and then switch2nc for my 2nd order of domains at $7.99/domain. I also continue to use IWantMyName for my most important 12 domains, which I’d already transferred from GoDaddy months ago. They’re even offering a managed domain transfer service!

To that end, I updated my Domains section in Services I use and why - Domains to reflect this change in Registrars:

Domain Names - Combination of GoDaddy, NameCheap & IWantMyName

GoDaddy is cheap. Godaddy is crap. They hassle you with offers, their customer service is as useful as talking to a wall, and they have a history of losing domains. Not to mention their support of SOPA. I recently moved most of my domains I plan to keep from GoDaddy to Namecheap. When I have a new idea, and GoDaddy is running a loss-leader domain sale (less than $7), I’ll buy at GoDaddy. I’ll continue to take advantage of their $1 domain offers - I keep a list of domain ideas, and buy them for $1 when the offers come up. Key thing: Remember to disable auto renewal - so you don’t get charged $13 the following year.

However if its a domain I plan to keep, or there’s no <$7 promos running at the time, I’ll buy my domains at NameCheap. (and for domains I plan to keep, I’ll transfer them to NameCheap after the 60 day transfer lock). If a project or idea actually takes off, then I’ll buy a bunch of years cheap at the domain’s current registrar, and then transfer it to IWantMyName - They are a small shop, and I trust my domain there - if I had any problem I could actually contact someone, who would have access to systems and can make the magic happen. They’re even offering a managed domain transfer service!

For my GoDaddy to Namecheap migration, I followed a great guide from a fellow TechStars Alumni on transferring from GoDaddy to Namecheap with minimal hassle. Hacker News Commentary.

In the spirit of helping - Anyone who knows me through DogPatchLabs, TechStars, or personally - Please feel free to reach out and I’m happy to help with Domain and DNS questions and guidance if you’re overwhelmed by the process or idea of transferring, don’t know where to start, don’t know who to transfer to, need help with DNS, how to do your transfer without any downtime, or even why you should care.

OSX Losing Setings on Reboot

I was getting very frustrated by OSX never saving my default application preference settings for vox (vs. iTunes), Google Chrome (vs Safari) and Mailplane (vs. Mail.app).

After a little researching I came across a superuser post: “OS X Default Browser Resetting to Safari” I was surprised to read this, but after a bit more digging it seems it was fixed after 10.6. Back to square one.

A different forum post referenced possibly corrupt com.apple.recentiitems.plist or com.apple.LaunchServices.plist files - I gave it a try, deleting them, rebooting, resetting my app preferences, rebooting again. Success!

My files may have somehow become corrupted by my Dropbox setup: I store my Preferences folder in Dropbox (for backup and syncing purposes), and then symlink to it from ~/Library/ – I’ve decided to change this behavior, and instead I’ve moved the folder back to its normal location, and made the symlink FROM dropbox to that folder - Dropbox follows symlinks, and I should have the same end result…

Services I Use and Why

I often get asked by friends and family what services I use to solve problems. I take much pride in evaluating the options in the market, and choosing the best service out there.

Dropbox

I love Dropbox. I’ve been using it for years now, have a paid account, and make sure that every friend and family member has it.

Compared to sugarsync, box.net, egnyte - I believe it is the best consumer and small business oriented file sharing solution out there. Whether you’re sharing a file with somone (public folder, or shareable link) or collaborating on a project (shared folder) - its the perfect solution.

For the geeks out there, it can be an amazingly powerful platform to do interesting projects - Infact this blog is generated based on a script which runs on my server, monitoring my dropbox folder, where I write these blog posts. Once it sees a trigger file created, it generates the site with Jekyll, commits & deploys the newly generated site to github!

Some tips: make sure to visit the Getting Started page to get some extra free storage, along with the Dropbox Free where you can tweet and facebook post for some extra free space. Finally if you’re an academic user you can visit Dropbox edu to double the space you earn for each referral!

Crashplan

I’ve explored Mozy, Jungledisk, and many other backup services over the years. For Linux and Mac - Crashplan is the winner (crashplan is also cross-platform and works on even more operating systems). Why? Here are a few of my highlights:

  • The client is not resource hungry, and has options for limiting CPU and Network usage.
  • They offer unlimited cloud storage space, not reliant on a third party vendor like AWS.
  • Because they rolled their own, their prices are very reasonable, especially for family plans.
  • The clients support advanced features like Multiple Backup Sets
  • They have a FREE option - just use the software and backup between your own machines, or to a friends - Social Backup! Brilliant!
  • Remote monitoring of backup status, and configured settings from the web gui (Jungledisk fail)
  • Email alerting for backup failures, and backup summary (Jungledisk fail again)
  • Use your own crypto key - WIN!

Prezi

Stop doing boring powerpoints - They also have special plans for .edu holders. Next presentation – make it a Prezi

1Password  

I was a HUGE fan of clipperz, but recently switched to 1Password. My only complaint is that 1Password isn’t free, but I did get a great deal on the desktop app as part of a MacUpdate Bundle - so it was hard to resist switching. Why is 1Password the right solution over the competitors?

  • It stores your data locally, with an option to use Dropbox - WIN!
  • While in dropbox - it can be accessed as 1PasswordAnywhere - their web-based solution
  • They have mobile apps (I use iOS), where you can sync/access your 1password credentials through dropbox
  • The above options mean that your passwords are stored with YOUR password and YOUR encryption key; AND you get the best functonality, while never compromising the security of your credentials (And this is coming from a security guy)
  • Browser extension integration - Chrome, Safari… Works surprisingly well - Much better than xMarks; and I trust it more than Google Sync, and its cross-browser and cross-platform

XMarks

I do use XMarks for browser bookmarks - because its cross platform; so it ends up being the best way to keep my bookmarks in sync between Chrome (which I use on my laptop) and Mobile Safari on iphone, despite not using safari on my desktop.

LucidChart

I hate desktop products for almost anything – and I particularly dislike Visio (Windows only for starters) - so LucidChart works surprisingly well for a web-based alternative to Visio for flow charting.

Domain Names - Combination of GoDaddy, NameCheap & IWantMyName  

GoDaddy is cheap. GoDaddy is crap. They hassle you with offers, their customer service is as useful as talking to a wall, and they have a history of losing domains. Not to mention their support of SOPA. I recently moved most of my domains I plan to keep from GoDaddy to Namecheap. When I have a new idea, and GoDaddy is running a loss-leader domain sale (less than $7), I’ll buy at GoDaddy. I’ll continue to take advantage of their $1 domain offers - I keep a list of domain ideas, and buy them for $1 when the offers come up. Key thing: Remember to disable auto renewal - so you don’t get charged $13 the following year.

However if its a domain I plan to keep, or there’s no <$7 promos running at the time, I’ll buy my domains at NameCheap. (and for domains I plan to keep, I’ll transfer them to NameCheap after the 60 day transfer lock). If a project or idea actually takes off, then I’ll buy a bunch of years cheap at the domain’s current registrar, and then transfer it to IWantMyName - They are a small shop, and I trust my domain there - if I had any problem I could actually contact someone, who would have access to systems and can make the magic happen. They’re even offering a managed domain transfer service!

DNS - Zerigo + DNSMadeEasy  

Zerigo is cheaper, and is geo-disperse DNS solution, with nice APIs - including for dynamic DNS. Its better than your Domain Registrar’s cheap DNS service, in that its more reliable, and allows lower TTLs and faster update times. DNSMadeEasy is the premiere DNS host at a reasonable price - They do Anycast DNS which means the IPs look the same, but depending where in the world you are, your traffic heads to their nearest datacenter. They’re the solution for commercial-grade websites, but you pay a little more (nothing like what you pay dyn or other ridiculous services). So I usually do an ‘escalation strategy’ - When I first get a domain, its with Godaddy DNS. Once I’m using it for something, then it goes to Zerigo. If its something making me money - it goes to DNSMadeEasy.

Hosting - Heroku + Github Pages + Cloud DB services + Cloudflare  

I do a combination of things for my hosting - For static sites/pages I use Github pages - Such as this site you see, which is generated using Jekyll. Github lets you host an unlimited (within reason) amount of static content. You could even augment your storage with public links to dropbox public folder content.

For dynamic sites I use heroku’s free hosting tier. You can combine it with various cloud DB services which give you cheaper (than Heroku) cloud DB hosting options - including starter free tiers which have more than Heroku’s 5MB.

Finally I handle traffic and performance of these free hosted sites by using some other free services - from Cloudflare. They sit in front of your site and leverage CDNs, and various other optimizations. This works excellent with Heroku’s free tiers, to enable to you to handle far more traffic than you’d think otherwise.

SSL - Comodo SSL Certs from ComodoSSLStore  

SSL Certs are a commodity ripoff. They cost nearly $0 to create and maintain the revocation lists, yet there’s a racket in charging for SSL cert names, little ‘security’ buttons, and green-bar SSL certs. Unless you’re a multi-million dollar ecommerce site, don’t buy in to the hype. Buy the cheapest SSL cert you can which supports most major browsers. The winner in that category is Comodo, and the cheapest is reseller ComodoSSLStore, which is where I buy all my SSL certs now - Even the wildcards are very inexpensive, comparatively speaking!

ShortSwitch - Hosted URL Shortener

I do a combination of a small free hosted Heroku site and then redirect my URL shortening in to the free ShortSwitch service. At this point in time I generate very few URLs - so the free tier is great - occasionally I go over and fork out $4/mo - with is worth it for the analytics they provide. Why not Bit.ly? Well Bitly is $995 for enterprise, for starters, and they have a horrible limiation: The namespace for URLs is all shared. Even with my own domain, I cannot have /a because /a has been used eons ago by someone else at bit.ly/a or some other domain/a - Seems ridiculous, I know; but read their site!

Blitz.io - Cloud Performance testing

Blitz.io is one of the few services I’ve found for cloud performance testing which is easy to use, gives you a decent usable amount for free, and just works!

SMFA Intermediate Web Development Class

I’m currently taking Intermediate Web Design at the School of the Museum of Fine Arts, Boston with Pascal Rettig. You can find all my work related to the class here