Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I'm trying to set up the most secure personal computing environment possible with the following requirements:

  1. most secure OS(in relative terms) that is freely available(I'm guessing FreeBSD)
  2. read-only system partition with disk encryption and TPM(I'm guessing ZFS)
  3. desktop environment with an internet browser running under a user with minimal permissions(I'm guessing Firefox here); all file I/O are done to a separate partition that get's flushed on every startup(fast-format with encryption on)
  4. force openvpn VPN connection at all times. Disable internet when not connected

I was thinking of ChromeOS, then all my personal information is shared with Google, so that's no good. As for the desktop environment, because I'm using this computer solely for web browsing, I don't need any write permission to anything else.

Anyways Is this possible?

ps. I know for sure that FreeBSD allows read-only system partition with some tweaks...

share|improve this question
    
(1) is debatable, but openBSD is advertised as being security oriented , FreeBSD being more general oriented. –  Ouki Feb 14 '12 at 10:00

3 Answers 3

Lightweight Portable Security is a nice linux distro that is developed and maintained by the US Air force.

  1. Is debatable, but this is very close
  2. Done with read only media if you want (or USB). Encryption is not needed as there is nothing confidential that can ever be stored
  3. The intent (that all data that you download cannot carry over to your system) is enforced.
  4. Not sure how to do this one, but is probably possible.
share|improve this answer
    
Has it ever been audited for backdoors? We all know how governments like to backdoor... –  Frank Thornton Jun 9 at 23:15

Tails is live system designed to make a secure personal computing environment convenient and readily accessible on nearly any machine without requiring complex or error-prone set-up. It likely meets your aims if not your proposed requirements:

  1. 'Most secure' is unfortunately difficult to define. Tails is a Debian distribution which benefits from the large number of eyeballs on Debian and the apparently serious and prompt attitude of the Debian security team with respect to patches.
  2. Its default configuration persists nothing and makes no use of your hard disk. If run from a non-rewritable DVD it's pretty impervious to disk-based attacks. It has no use for a TPM.
  3. It provides ready-to-go hardened installations of Firefox and other software.
  4. Tails uses the Tor network. You could run Tails in a virtual machine in an operating system using OpenVPN (though you may compromise Tails' security advantages) or behind a router running OpenVPN. If you manage to install and configure OpenVPN within Tails you'll want to make sure you're not defeating your aims.
share|improve this answer
    
TAILS is a very good option –  Frank Thornton Jun 9 at 23:14
    
"...the apparently serious and prompt attitude of the Debian security team..." Except, of course, their so-called Long Term Support for Squeeze, where they have refused to port OpenSSL 0.9.8za, for instance. So not impressed with Debian "LTS." –  Wexxor Jul 18 at 5:34
  1. FreeBSD is a good choice. The FreeBSD team spends a lot of time thinking about both security and embedded uses.

  2. If the system image is indeed read-only, why would you need either encryption or TPM? I suppose TPM can assure you during boot that the image hasn't been tampered with.

  3. If this is strictly throw-away data, add some ram and setup a ramdisk. It'll be fast to recreate on startup, and you don't have to worry about saving something you didn't want saved. Here you might want encryption just in case somebody manages to capture the system while it's on.

  4. This should be relatively easy to do, by controlling the routing table. Your network configuration will consist entirely of bringing up the interface, discarding whatever DHCP information you don't need; adding a host route to the OpenVPN server, then starting OpenVPN.

Good luck, and if you can, report back in comments how it goes.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.