Meant to also reply all...

Reply elsewhere...

-- 
 Jason Hellenthal
 JJH48-ARIN
 - (2^(N-1))


Begin forwarded message:

> From: Jason Hellenthal <jhellent...@dataix.net>
> Date: February 20, 2013 2:42:57 EST
> To: Paul Schenkeveld <free...@psconsult.nl>
> Subject: Re: Chicken and egg, encrypted root FS on remote server
> 

> Just a thought with no working example but…
> 
> bootp / tftp - from a remote secured management frame to TX a key filesytem 
> to unlock your rootfs.
> 
> Could be something as simple as a remote wireless adhoc server with a 64GB 
> thumbdrive to hold your data or just enough to tell the system where to get 
> it.
> 
> Considering a key can be any length string of a sort just to say but... Serve 
> the rootfs key directly from a TXT out of a secured DNS zone only visible to 
> so said machines. 
> 
> Just a thought.
> 
> -- 
> Jason Hellenthal
> JJH48-ARIN
> - (2^(N-1))
> 
> 
> On Feb 20, 2013, at 1:58, Paul Schenkeveld <free...@psconsult.nl> wrote:
> 
>> Hi,
>> 
>> I've been trying to find a solution for this chicken and egg problem,
>> how to have an encrypted root filesystem on a remote server.
>> 
>> Geli can ask for a root password at the console to unlock the root fs
>> but that of course won't work for a remote server.
>> 
>> Ideally I'd like the server to start, do minimal network config, run
>> a minimal ssh client (dropbear?) and wait for someone to log in,
>> provide the passphrase to unlock the root filesystem and then mount
>> the root filesystem and do a normal startup.
>> 
>> I read about a pivotroot call in other OS-es, that would allow for a
>> very small unencrypted root filesystem to be mounted temporarily until
>> the passphrase has been entered and then swap that for a real, encrypted
>> root filesystem.  But AFAIK we don't have pivotroot.
>> 
>> The problem could also be solved if the real root fs could be union
>> mounted over the small unencrypted one but unionfs won't mount over /.
>> 
>> I found out that a ZFS pool where a specific dataset has the
>> mountpoint=/ option set can be used to 'buri' the unencrypted root under
>> the real root but that would render the unencrypted one unchangable
>> after the real one is mounted (prohibiting sysadmin to change the ssh
>> credentials or network config there).  It would also make maintenance
>> a bit more difficult because an import of the zpool would automatically
>> remount /, even when running from a cd-rom or USB stick.  And of course
>> this approach would not work in non-zfs environments (like very small
>> systems).
>> 
>> Looking at sys/kern/init_main.c and sys/kern/vfs_mount.c I could
>> imagine having a kind of "pre root environment", an unencrypted root
>> that gets mounted first (along with a devfs) and a /sbin/init that
>> sets up minimal networking and runs sshd.  Aftre that one dies the
>> unencrypted root and devfs would be unmounted, the real root mounted
>> and the real /sbin/init started.  But this may be a considered a dirty
>> approach.
>> 
>> Did I miss the obvious and easy solution?  Any ideas?
>> 
>> With kind regards,
>> 
>> Paul Schenkeveld
>> _______________________________________________
>> freebsd-hackers@freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
>> To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"
_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"

Reply via email to