web-dev-qa-db-fra.com

Accès refusé pour un utilisateur particulier par la configuration du compte PAM

J'essaie de configurer une connexion sans mot de passe de machineA à machineB pour mon utilisateur david qui se ferme déjà. Voici ce que j'ai fait pour générer les clés d'authentification:

david@machineA:~$ ssh-keygen -t rsa
........

david@machineB:~$ ssh-keygen -t rsa
........

Après cela, j'ai copié id_rsa.pub(/home/david/.ssh/id_rsa.pub) clé de machineA dans machineBauthorized_keys fichier (/home/david/.ssh/authorized_keys) clé.

Et puis je suis retourné à l'écran de connexion de machineA et j'ai exécuté la commande ci-dessous et cela a bien fonctionné sans aucun problème. J'ai donc pu me connecter à machineB en tant qu'utilisateur david sans demander de mot de passe.

david@machineA:~$ ssh david@machineB

Question:

Maintenant, j'ai créé un nouvel utilisateur sur machineA et machineB en exécutant cette commande uniquement useradd golden. Et maintenant, je veux passer sans mot de passe de cet utilisateur golden à machineB à partir de machineA. J'ai fait exactement la même étape que ci-dessus mais cela ne fonctionne pas.

david@machineA:~$ Sudo su - golden
golden@machineA:~$ ssh-keygen -t rsa
........

david@machineB:~$ Sudo su - golden
golden@machineB:~$ ssh-keygen -t rsa
........

Et puis j'ai copié id_rsa.pub clé /home/golden/.ssh/id_rsa.pub pour l'utilisateur Golden de machineA à machineBauthorized_keys fichier /home/golden/.ssh/authorized_keys. Et quand j'essaye de ssh, ça me donne:

golden@machineA:~$ ssh golden@machineB
Connection closed by 23.14.23.10

Qu'est-ce qui ne va pas? Cela ne fonctionne pas uniquement pour l'utilisateur Golden que j'ai créé manuellement via cette commande useradd. J'utilise Ubuntu 14.04. Y a-t-il des paramètres que je dois activer pour cet utilisateur manuel que j'ai créé?

Dans le machineBauth.log fichier, voici ce que je vois lorsque j'exécute cette commande à partir de machineA ssh -vvv golden@machineB ouvrir une session

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]

Y a-t-il quelque chose qui me manque? Voici à quoi ressemble la structure de mon répertoire:

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

Mise à jour:

Dans machineA:

cat /etc/passwd | grep golden
golden:x:1001:1001::/home/golden:/bin/bash

Dans machineB:

cat /etc/passwd | grep golden
golden:x:1001:1001::/home/golden:/bin/bash
10
user5447339

Le problème est lié à la configuration de la pile PAM. Votre hôte est configuré avec pam_access et la configuration par défaut n'autorise pas l'accès externe/SSH pour le nouvel utilisateur golden, même si vos clés sont correctement configurées.

Ajout de golden utilisateur dans /etc/security/access.conf comme ci-dessous a résolu le problème.

+:golden:ALL

Pour plus d'informations, lisezman access.conf qui explique chaque champ de ce fichier. Regardez la section des exemples pour comprendre l'ordre et la signification de LOCAL, ALL, etc.

13
VenkatC

J'ai eu le même problème et aucune des options suggérées n'a fonctionné. Mais j'ai trouvé dans l'un des forums ( https://ubuntuforums.org/showthread.php?t=196051 ) une "solution de contournement" qui fonctionnait parfaitement.

Éditer /etc/ssh/sshd_config Et mettre

UsePAM no

Bien que ce ne soit probablement pas la vraie solution, car quelque chose ne va vraiment pas avec ma machine (hier, elle fonctionnait bien!), Celle-ci fonctionne au moins.

8
The Godfather