FreeBSD ofrece un alto grado de protección contra el acceso no autorizado a los datos. Los Permisos de fichero y MAC (Mandatory Access Control, controles de acceso obligatorio, consulte el Capítulo 16) ayudan a evitar que otros tengan acceso no autorizado a los datos mientras el sistema operativo está funcionando y la computadora está encendida. Sin embargo los permisos impuestos por el sistema operativo son irrelevantes si un atacante tiene acceso físico al sistema y puede simplemente mover el disco duro de la computadora a otro sistema para copiar y analizar datos sensibles.
Independientemente de cómo un atacante pueda conseguir acceso a un disco duro a a un sistema apagado, el cifrado de disco basado en GEOM (GEOM Based Disk Encryption, gbde) puede proteger los datos de los sistemas de ficheros del sistema incluso contra atacantes muy decididos y con recursos adecuados a su disposición. A diferencia de otros métodos de cifrado más difíciles de usar, que cifran únicamente ficheos individuales, gbde cifra sistemas de ficheros completos de forma transparente. Ni un solo texto en limpio llega a tocar el disco duro.
Conviértase en root
La configuración de gbde requiere privilegios de superusuario.
% su - Password:
Verifique la versión del sistema operativo
gbde(4) requiere FreeBSD 5.0 o posterior.
# uname -r 5.0-RELEASE
Añada soporte de gbde(4) al fichero de configuración de su kernel
Añada la siguiente línea al fichero de configuración de su kernel con el editor que prefiera:
options GEOM_BDE
Configure, recompile e instale el kernel de FreeBSD. Este proceso se detalla en el Capítulo 8.
Reinicie con el nuevo kernel.
El siguiente ejemplo asume que añade a su sistema un disco duro nuevo que contendrá una sola partición cifrada. Esta partición se montará como /private. gbde puede usarse también para cifrar /home y /var/mail, pero esto requeriría instrucciones más complejas que las que se pretenden dar en esta introducción.
Añada el nuevo disco
Instale el nuevo disco en el sistema como se explicó en la Sección 18.3. En nuestro ejemplo hemos añadido una nueva partición de disco como /dev/ad4s1c. Los dispositivos /dev/ad0s1* representan particiones FreeBSD estándar que i existían previamente en el sistema.
# ls /dev/ad* /dev/ad0 /dev/ad0s1b /dev/ad0s1e /dev/ad4s1 /dev/ad0s1 /dev/ad0s1c /dev/ad0s1f /dev/ad4s1c /dev/ad0s1a /dev/ad0s1d /dev/ad4
Crée un directorio para los ficheros “lock” de gbde
# mkdir /etc/gbde
Los ficheros “lock” de gbde contienen información que gbde requiere para acceder a las particiones cifradas. Sin el acceso a los ficheros “lock” gbde no podrá descifrar los datos alojados en la partición cifrada sin una cantidad significativa de trabajo, tarea para la que además no le resultará de ayuda este software. Cada partición cifrada utiliza un fichero “lock” separado.
Inicialice la partición gbde
Una partición gbde debe inicializarse antes de que pueda utilizarse. Esta inicialización sólo debe hacerse una vez:
# gbde init /dev/ad4s1c -i -L /etc/gbde/ad4s1c
gbde(8) abrirá su editor para que pueda configurar las opciones de configuración que se le presentarán en una plantilla. Para utilizar UFS1 o UFS2, ponga el sector_size a 2048:
$FreeBSD: src/sbin/gbde/template.txt,v 1.1 2002/10/20 11:16:13 phk Exp $ # # El tamaño de sector (sector size) es la unidad de datos más # pequeña que podrá leer o escribir. Si la elige demasiado # pequeña reducirá el rendimiento y la cantidad de espacio # útil. Si la elige demasiado grande puede hacer que los sistemas # de ficheros no funcionen. 512 es el tamaño mínimo y # siempre funciona. Si va a usar UFS utilice # sector_size = 2048 [...]
gbde(8) le pedirá dos veces que escriba la contraseña que debe usarse para asegurar los datos. La contraseña debe ser la misma las dos veces. La capacidad de gbde de proteger sus datos depende íntegramente de la calidad de la contraseña que elija. [1]
El fichero gbde init crea un fichero “lock” para su partición gbde, que en nuestro ejemplo está en /etc/gbde/ad4s1c.
AtenciónEs imprescindible que los ficheros “lock” de gbde deben respaldarse junto con el contenido de cualquier partición cifrada. Aunque la sola acció de borrar un fichero “lock” no puede evitar que un atacante motivado descifre una partición gbde sin el fichero “lock”, el propietario legítimo no podrá acceder a los datos en la partición cifrada sin una cantidad notable de trabajo, que es necesario señalar que no entra dentro de las funciones de gbde(8) ni de su diseñador.
Conecte al kernel la partición cifrada
# gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1c
Se le pedirá la contraseña que elijió al inicializar la partición cifrada. El nuevo dispositivo cifrado aparecerá en /dev como /dev/nombre_de_dispositivo.bde:
# ls /dev/ad* /dev/ad0 /dev/ad0s1b /dev/ad0s1e /dev/ad4s1 /dev/ad0s1 /dev/ad0s1c /dev/ad0s1f /dev/ad4s1c /dev/ad0s1a /dev/ad0s1d /dev/ad4 /dev/ad4s1c.bde
Crée un sistema de ficheros en el dispositivo cifrado
Una vez el dispositivo cifrado está conectado al kernel puede crear un sistema de
ficheros en el dispositivo con newfs(8). Dado que es
más rápido inicializar un sistema de ficheros del nuevo UFS2 que un sistema de ficheros
del tradicional UFS1, le recomendamos encarecidamente usar newfs(8) con la opción
-O2
.
Nota: La opción
-O2
es el valor por defecto en FreeBSD 5.1-RELEASE y siguientes.
# newfs -U -O2 /dev/ad4s1c.bde
Nota: newfs(8) debe ejecutarse en una partición gbde conectada, que podrá identificar por la extensión *.bde del nombre del dispositivo.
Montar la partición cifrada
Crée un punto de montaje para el sistema cifrado de ficheros.
# mkdir /private
Montar el sistema cifrado de ficheros.
# mount /dev/ad4s1c.bde /private
Verificar que el sistema cifrado de ficheros esté disponible
el sistema cifrado de ficheros debería ser visible para df(1) y estar listo para su uso.
% df -H Filesystem Size Used Avail Capacity Mounted on /dev/ad0s1a 1037M 72M 883M 8% / /devfs 1.0K 1.0K 0B 100% /dev /dev/ad0s1f 8.1G 55K 7.5G 0% /home /dev/ad0s1e 1037M 1.1M 953M 0% /tmp /dev/ad0s1d 6.1G 1.9G 3.7G 35% /usr /dev/ad4s1c.bde 150G 4.1K 138G 0% /private
Todos los sistemas cifrados de ficheros deben reconectarse al kernel después de cada arranque. Además, antes de poder utilizarlo debe revisarlo por si contuviera errores y montarlo. Todo el proceso debe ser ejecutado por el usuario root.
Conectar la partición gbde al kernel
# gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1c
Se le pedirá la contraseña que elijió en la inicialización de la partición cifrada gbde.
Revisión de errores en el sistema de ficheros
Como que los sistemas cifrados de ficheros no pueden aparecer en /etc/fstab (lo que haría que fueran montados automáticamente), los sistemas de ficheros deben revisarse manualmente mediante fsck(8) antes de montarlos.
# fsck -p -t ffs /dev/ad4s1c.bde
Montar los sistemas cifrados de ficheros
# mount /dev/ad4s1c.bde /private
El sistema cifrado de ficheros está listo para su uso.
Es posible usar un “script” para automatizar la conexión, revisión y el montaje de una partición cifrada, pero por razones de seguridad el “script” no debe contener la contraseña de gbde(8). Se recomienda ejecutar esos “scripts” se ejecuten de forma manual proporcionando la contraseña vía consola o ssh(1).
gbde(8) cifra el XXX sector payload usando AES de 128 bits en modo CBC. Cada sector en el disco se cifra con una clave AES diferente. Para más información sobre el diseño criptográfico de gbde, incluyendo cómo se derivan las claves de sector a partir de la contraseña consulte gbde(4).
sysinstall(8) es incompatible con dispositivos gbde cifrados. Todos los dispositivos *.bde deben desconectarse del kernel antes de iniciar sysinstall(8) o se “congelará” durante la prueba inicial de dispositivos. Para desconectar el el dispositivo cifrado de nuestro ejemplo haga lo siguiente:
# gbde detach /dev/ad4s1c
Tenga en cuenta también que, como vinum(4) no utiliza el subsistema geom(4), no es posible usar gbde en volúmenes vinum.
[1] |
Si quiere ayuda para seleccionar una contraseña segura que además sea fácil de recordar visite el sitio web Diceware Passphrase. |
Anterior | Inicio | Siguiente |
Cuotas en sistemas de ficheros | Subir | GEOM: Marco de trabajo modular de transformación de discos |
Puede descargar éste y muchos otros documentos desde ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
Si tiene dudas sobre FreeBSD consulte la documentación antes de escribir a la lista
<questions@FreeBSD.org>.
Envíe sus preguntas sobre la documentación a <doc@FreeBSD.org>.