web-dev-qa-db-fra.com

Quels utilisateurs sont autorisés à se connecter via ssh par défaut?

  1. Quand j'ai installé mon Debian 6, je me demandais, quels utilisateurs à part root dont le mot de passe que je connais peut se connecter à mon système via SSH?

  2. Lorsque j'installe Apache 2, un utilisateur appelé www-Data est créé. Cet utilisateur a-t-il le droit de se connecter à mon système via SSH? Mais s'il y avait un mot de passe par défaut pour Www-Data, tout le monde pourrait se connecter, me semble peu probable.

  3. Où ai-je une liste que les utilisateurs sont autorisés à se connecter à mon système via SSH? Vous ne trouvez rien dans les fichiers de configuration SSH.

18
JohnnyFromBF

ParaDeepchhetri n'est pas exactement correct.

Debian est non modifié sshd_config a ce qui suit:

PubkeyAuthentication yes
PermitEmptyPasswords no
UsePAM yes

Ainsi, Login via SSH ne fonctionnerait que pour les utilisateurs ayant un champ de mot de passe peuplé dans /etc/shadow ou une clé SSH dans ~/.ssh/authorized_keys. Notez que la valeur par défaut pour PubkeyAuthentication est yes et pour PermitEmptyPasswords est no, donc même si vous les supprimez, le comportement sera le même.

Dans l'exemple de la question, www-data Par défaut ne sera pas autorisé à vous connecter car le programme d'installation de Debian n'attribue pas non plus de mot de passe ni ne crée une clé pour www-data.

pam_access, AllowUsers et AllowGroups dans sshd_config Peut être utilisé pour un contrôle plus fin si c'est nécessaire. Dans Debian, il est fortement encouragé à UsePAM.

20
bahamat

Par défaut, SSH server N'est même pas installé. Vous devriez installer le paquet openssh-server Avant que quiconque puisse ssh dans.

Après cela, tout utilisateur doit passer deux chèques:

  • Authentification SSH
  • Vérifications de compte PAM

L'authentification SSH signifie que l'utilisateur doit avoir un mot de passe valide dans /etc/shadow Ou ils ont une clé publique ssh valide avec les droites autorisations dans le code de l'utilisateur cible ~/.ssh/authorized_keys.

Les mots de passe valides sont décrits plus loin dans la page crypt(3) man man, mais essentiellement si le 2e champ de l'utilisateur dans /etc/shadow Est quelque chose qui commence par $NUMBER$, Il est probablement valide, et si c'est * Ou !, C'est invalide.

Les contrôles de compte PAM signifient essentiellement que le compte n'est pas expiré. Vous pouvez vérifier cela en utilisant chage -l USERNAME.

Donc, pour répondre à vos questions, à ma connaissance:

  1. Seule la racine et le compte que vous créez lors de l'assistant d'installation peuvent vous connecter sur un nouveau système.
  2. Non, car www-data A un mot de passe haché de * Et il n'y a pas de fichier ~www-data/.ssh/authorized_keys
  3. Il n'y a pas de liste unique, car il existe plusieurs exigences, mais pour avoir une idée, vous pouvez essayer d'exécuter grep -v '^[^:]*:[!*]:' /etc/shadow
7
Mikel