Estoy tratando de configurar un inicio de sesión sin contraseña de machineA
a machineB
para mi usuario david
que ya existe. Esto es lo que hice para generar las claves de autenticación:
david@machineA:~$ ssh-keygen -t rsa
........
david@machineB:~$ ssh-keygen -t rsa
........
Después de eso, copié la id_rsa.pub
(/home/david/.ssh/id_rsa.pub)
clave machineA
en la clave del machineB
authorized_keys
archivo (/home/david/.ssh/authorized_keys)
.
Y luego volví a la pantalla de inicio de sesión de MachineA y ejecuté debajo del comando y funcionó bien sin ningún problema. Así que pude iniciar sesión machineB
como usuario de David sin pedir ninguna contraseña.
david@machineA:~$ ssh david@machineB
Pregunta:
Ahora he creado un nuevo usuario machineA
y machineB
ambos ejecutando este comando solamente useradd golden
. Y ahora quiero ssh sin contraseña de este golden
usuario a machineB
partir de machineA
. Hice el mismo paso exacto que el anterior pero no funciona.
david@machineA:~$ sudo su - golden
golden@machineA:~$ ssh-keygen -t rsa
........
david@machineB:~$ sudo su - golden
golden@machineB:~$ ssh-keygen -t rsa
........
Y luego he copiado id_rsa.pub
clave /home/golden/.ssh/id_rsa.pub
para el usuario del oro machineA
al machineB
authorized_keys
archivo /home/golden/.ssh/authorized_keys
. Y cuando intento ssh, me da:
golden@machineA:~$ ssh golden@machineB
Connection closed by 23.14.23.10
¿Qué está mal? No funciona solo para usuarios dorados que creé manualmente a través de este comando useradd
. Estoy ejecutando Ubuntu 14.04. ¿Hay alguna configuración que necesito habilitar para este usuario manual que creé?
En el machineB
auth.log
archivo, a continuación se muestra lo que veo cuando ejecuto este comando desde la máquina A ssh -vvv golden@machineB
para iniciar sesión
Jan 3 17:56:59 machineB sshd[25664]: error: Could not load host key: /etc/ssh/ssh_host_ed25519_key
Jan 3 17:56:59 machineB sshd[25664]: pam_access(sshd:account): access denied for user `golden' from `machineA'
Jan 3 17:56:59 machineB sshd[25664]: pam_sss(sshd:account): Access denied for user golden: 10 (User not known to the underlying authentication module)
Jan 3 17:56:59 machineB sshd[25664]: fatal: Access denied for user golden by PAM account configuration [preauth]
¿Hay algo que me falta? A continuación se muestra cómo se ve la estructura de mi directorio:
golden@machineA:~$ pwd
/home/golden
golden@machineA:~$ ls -lrtha
total 60K
-rw------- 1 golden golden 675 Nov 22 12:26 .profile
-rw------- 1 golden golden 3.6K Nov 22 12:26 .bashrc
-rw------- 1 golden golden 220 Nov 22 12:26 .bash_logout
drwxrwxr-x 2 golden golden 4.0K Nov 22 12:26 .parallel
drwxr-xr-x 2 golden golden 4.0K Nov 22 12:34 .vim
drwxr-xr-x 7 root root 4.0K Dec 22 11:56 ..
-rw------- 1 golden golden 17K Jan 5 12:51 .viminfo
drwx------ 2 golden golden 4.0K Jan 5 12:51 .ssh
drwx------ 5 golden golden 4.0K Jan 5 12:51 .
-rw------- 1 golden golden 5.0K Jan 5 13:14 .bash_history
golden@machineB:~$ pwd
/home/golden
golden@machineB:~$ ls -lrtha
total 56K
-rw------- 1 golden golden 675 Dec 22 15:10 .profile
-rw------- 1 golden golden 3.6K Dec 22 15:10 .bashrc
-rw------- 1 golden golden 220 Dec 22 15:10 .bash_logout
drwxr-xr-x 7 root root 4.0K Jan 4 16:43 ..
drwx------ 2 golden golden 4.0K Jan 5 12:51 .ssh
-rw------- 1 golden golden 9.9K Jan 5 12:59 .viminfo
drwx------ 6 golden golden 4.0K Jan 5 12:59 .
-rw------- 1 golden golden 4.6K Jan 5 13:10 .bash_history
Actualizar:
En machineA
:
cat /etc/passwd | grep golden
golden:x:1001:1001::/home/golden:/bin/bash
En machineB
:
cat /etc/passwd | grep golden
golden:x:1001:1001::/home/golden:/bin/bash
/etc/passwd
entrada para el usuario?Respuestas:
El problema es con la configuración de la pila PAM. Su host está configurado
pam_access
y la configuración predeterminada no permite el acceso externo / SSH para el nuevo usuariogolden
, aunque sus claves estén configuradas correctamente.Agregar un
golden
usuario a la/etc/security/access.conf
siguiente solucionó el problema.+:golden:ALL
Para ver más información, lea lo
man access.conf
que explica cada campo de este archivo. Mire la sección de ejemplos para comprender el orden y los significados de LOCAL, TODOS, etc.fuente
Tuve el mismo problema y ninguna de las opciones sugeridas funcionó. Pero encontré en uno de los foros ( https://ubuntuforums.org/showthread.php?t=1960510 ) una "solución" que funcionó perfectamente.
Editar
/etc/ssh/sshd_config
y configurarSi bien probablemente no sea la solución real, porque definitivamente algo está mal con mi máquina (¡ayer funcionaba bien!), Esta al menos funciona.
fuente
Por favor agregue lo siguiente en
/etc/security/access.conf
:fuente
-:ALL:EXCEPT root
de/etc/security/access.conf
, que comenzó a trabajar.