GNU/Linux >> Tutoriels Linux >  >> Linux

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

Paradeepchhetri n'est pas tout à fait correct.

sshd_config non modifié de Debian contient les éléments suivants :

PubkeyAuthentication yes
PermitEmptyPasswords no
UsePAM yes

Ainsi, la connexion via ssh ne fonctionnerait que pour les utilisateurs qui ont un champ de mot de passe rempli dans /etc/shadow ou une clé ssh en ~/.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 question, www-data par défaut ne sera pas autorisé à se connecter puisque le programme d'installation de Debian n'attribue pas de mot de passe ni ne crée de clé pour www-data .

pam_access , AllowUsers et AllowGroups en sshd_config peut être utilisé pour un contrôle plus précis si nécessaire. Dans Debian, il est fortement recommandé de UsePAM .


Par défaut, la connexion est autorisée pour tous les utilisateurs sur Debian.

Vous pouvez le changer en autorisant certains utilisateurs à se connecter en modifiant /etc/ssh/sshd_config fichier.

Comme mentionné dans la page de manuel de sshd_config.

AllowUsers

Ce mot-clé peut être suivi d'une liste de modèles de nom d'utilisateur, séparés par
les espaces. Si spécifié, la connexion n'est autorisée que pour les noms d'utilisateur qui correspondent à l'un des modèles. Seuls les noms d'utilisateur sont valides ; un ID utilisateur numérique n'est pas
reconnu. Par défaut, la connexion est autorisée pour tous les utilisateurs. Si le motif prend la forme [email protected] puis USER et HOST sont vérifiés séparément, limitant les connexions à des utilisateurs particuliers à partir d'hôtes particuliers. Les directives d'autorisation/de refus sont traitées dans l'ordre suivant :DenyUsers , AllowUsers ,DenyGroup , et enfin AllowGroups .


Par défaut, SSH server n'est même pas installé. Vous auriez à installer le openssh-server package avant que quiconque puisse s'y connecter en SSH.

Après cela, tout utilisateur doit passer deux vérifications :

  • Authentification SSH
  • Vérifications de compte PAM

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

Les mots de passe valides sont décrits plus en détail dans le crypt(3) page de manuel, mais essentiellement si le 2ème champ de l'utilisateur dans /etc/shadow est quelque chose commençant par $NUMBER$ , c'est probablement valide, et si c'est * ou ! , c'est invalide.

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

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

  1. Seuls root et le compte que vous créez pendant l'assistant d'installation peuvent se 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 ~www-data/.ssh/authorized_keys fichier
  3. Il n'y a pas de liste unique, car il y a plusieurs exigences, mais pour avoir une idée, vous pouvez essayer d'exécuter grep -v '^[^:]*:[!*]:' /etc/shadow

Linux
  1. Ssh – Restreindre un utilisateur Ssh/scp/sftp à un répertoire ?

  2. Comment :Administration des utilisateurs de FreeBSD

  3. Ajouter un nouvel utilisateur WordPress

  4. Désactiver la connexion racine directe et l'accès utilisateur via SSH au serveur

  5. Comment faire en sorte que ssh se connecte avec le bon utilisateur ?

Comment répertorier les utilisateurs sous Linux

Comment restreindre l'accès SSH à certains utilisateurs sous Linux

Comment me connecter à mon compte cPanel via SSH ?

Comment déconnecter un utilisateur de SSH sous Linux

Comment SSH au serveur via Linux

Le guide ultime pour créer des utilisateurs sous Linux / Unix