GNU/Linux >> Tutoriales Linux >  >> Linux

¿SSH con Authorized_keys a un sistema Ubuntu con homedir encriptado?

Cambie esta línea en su archivo sshd_config:

AuthorizedKeysFile /etc/ssh/%u/authorized_keys

Y luego mueva su archivo de claves_autorizadas a /etc/ssh/your-username/authorized_keys

Esta publicación documenta otra forma de resolver esto.


Esta solución se inspiró en esta publicación. En mi humilde opinión, es mucho mejor que modificar su /etc/ssh/sshd_config ya que no requiere acceso de root en absoluto.

# Make your public key accessible
mkdir -m 700 /home/.ecryptfs/$USER/.ssh
echo $YOUR_PUBLIC_KEY > /home/.ecryptfs/$USER/.ssh/authorized_keys
ln -s /home/.ecryptfs/$USER/.ssh/authorized_keys ~/.ssh/authorized_keys
ecryptfs-umount-private
chmod 700 $HOME
mkdir -m 700 ~/.ssh
ln -s /home/.ecryptfs/$USER/.ssh/authorized_keys ~/.ssh/authorized_keys

# Make it auto-mount with first login.
# Note: it can cause problems with automated login.
echo /usr/bin/ecryptfs-mount-private > ~/.profile
echo cd >> ~/.profile
echo source .profile >> ~/.profile
ecryptfs-mount-private

Acabo de pasar un tiempo jugando con esto, y la respuesta es que es básicamente imposible. Es es es posible configurar inicios de sesión autenticados con clave pública sin contraseña a través de ssh, por lo que no tiene que escribir su contraseña para iniciar sesión , pero eso no te lleva a ninguna parte, porque tu directorio de inicio aún está encriptado.

El simple hecho es que su directorio de inicio cifrado está cifrado con una contraseña*, por lo que la única forma de descifrarlo es con esa contraseña.

Y si está pensando que, en teoría, debería ser posible usar su clave ssh para descifrar la frase de contraseña de montaje al iniciar sesión, eso no funcionará porque su clave privada nunca se envía al servidor.

Entonces, básicamente, si desea encriptación, debe usar contraseñas. Los directorios de inicio cifrados son incompatibles con los inicios de sesión con huellas dactilares por la misma razón.

*Sé que es más complicado que una sola contraseña, pero hagámoslo simple por ahora.


Linux
  1. Habilitar SSH en Ubuntu 20.04 - ¿Guía paso a paso?

  2. Cambiar el puerto SSH en el sistema Linux Ubuntu 20.04:¿el mejor método?

  3. Ssh:¿restringir un usuario de Ssh/scp/sftp a un directorio?

  4. Cómo instalar el servidor SSH en Ubuntu/Debian con OpenSSH

  5. No se pueden ejecutar aplicaciones X a través de SSH en Linux

Cómo habilitar SSH en Ubuntu 18.04

Servidor Ubuntu 20.04 SSH

Inicios de sesión SSH basados ​​en claves con PuTTY

Cómo instalar el cliente Putty SSH en Ubuntu 20.04 LTS

Cómo administrar de forma remota el servidor Ubuntu con SSH

¿Cómo cambiar el puerto SSH en Ubuntu?