Estoy tratando de configurar un inicio de sesión sin contraseña de machineAa machineBpara mi usuario davidque 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 machineAen la clave del machineB authorized_keysarchivo (/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 machineBcomo usuario de David sin pedir ninguna contraseña.
david@machineA:~$ ssh david@machineB
Pregunta:
Ahora he creado un nuevo usuario machineAy machineBambos ejecutando este comando solamente useradd golden. Y ahora quiero ssh sin contraseña de este goldenusuario a machineBpartir 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.pubclave /home/golden/.ssh/id_rsa.pubpara el usuario del oro machineAal machineB authorized_keysarchivo /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.logarchivo, a continuación se muestra lo que veo cuando ejecuto este comando desde la máquina A ssh -vvv golden@machineBpara 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/passwdentrada para el usuario?Respuestas:
El problema es con la configuración de la pila PAM. Su host está configurado
pam_accessy la configuración predeterminada no permite el acceso externo / SSH para el nuevo usuariogolden, aunque sus claves estén configuradas correctamente.Agregar un
goldenusuario a la/etc/security/access.confsiguiente solucionó el problema.+:golden:ALLPara ver más información, lea lo
man access.confque 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_configy 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 rootde/etc/security/access.conf, que comenzó a trabajar.