3 votes

La connexion SSH Active Directory de MacOS Sierra ne fonctionne pas

J'ai un problème vraiment étrange avec mon serveur MacOS Sierra. Il est connecté au serveur Active Directory et l'accès à la fenêtre de connexion est limité à quelques personnes. Cela fonctionne sans aucun problème. (En réalité, seuls ces utilisateurs sont autorisés à se connecter au serveur Mac avec leurs informations d'identification du domaine).

Maintenant j'ai activé SSH car j'en ai besoin pour les dépôts GIT. J'ai donné à l'utilisateur du domaine les droits d'accès pour utiliser ssh mais J'obtiens toujours "Permission refusée" lorsque j'essaie de me connecter. Si j'utilise un compte local, cela fonctionne.

Dans les journaux, je ne trouve que :

com.openssh.sshd.... Le service s'est terminé avec un code d'état anormal 255
com.openssh.sshd.... Le service s'est terminé avec un code d'état anormal 1

Vous avez une idée de ce qui ne va pas ici ?

1voto

klanomath Points 63400

Il est difficile de répondre à votre question car il faudrait plus de détails, des détails de configuration d'AD et d'OS X ainsi que des paramètres de stratégie de groupe.


Dans un nouvel environnement Active Directory avec quelques clients OS X joints et un serveur OS X, la configuration fonctionne comme prévu.

Après avoir créé un groupe de sécurité global SSH-OSXUsers et ajouté quelques utilisateurs AD arbitraires, il faut ajouter ce groupe réseau dans le panneau de configuration Partage de MacOS > Connexion à distance > Seulement ces utilisateurs > + > Groupes réseau > SSH-OSXUsers (ou dans les paramètres respectifs de Server.app).

Pour se connecter à ce serveur, je recommande d'utiliser ssh user@hostname o ssh user@fqdn . Avec un enregistrement PTR correct pour le serveur OS X dans l'arbre DNS inverse, il devrait également fonctionner avec l'IP.

Si vous vous connectez avec un utilisateur du groupe SSH-OSXUsers qui ne s'est jamais connecté à l'hôte du serveur, vous obtiendrez l'erreur suivante Impossible d'effectuer un chdir vers le répertoire personnel /Users/domainsshuser : Aucun fichier ou répertoire de ce type car le dossier personnel de l'utilisateur est absent, mais vous pouvez exécuter des commandes.

Si vous vous connectez avec un compte réseau géré ou un utilisateur de compte mobile ayant un dossier personnel sur le serveur hôte, vous ne verrez pas ce message.


Une étape pour obtenir un message d'erreur ssh plus détaillé peut être de changer le chemin d'erreur standard de /dev/null à /tmp/ssh.stderr dans le démon de lancement après avoir désactivé SIP.

0voto

Maurits Points 1

Avez-vous vérifié si les utilisateurs AD ont un shell nommé ? Sans shell, les utilisateurs ne peuvent pas se connecter au Mac.

En utilisant dscl, vous pouvez lire le 'UserShell'. Celui-ci n'est pas défini dans AD et est normalement mappé sur /bin/bash.

Pour les comptes locaux, la commande est dscl . list /Users UserShell pour AD, vous devez utiliser quelque chose comme ceci dscl . list /Active\ Directory/domain/All\ Domains/Users UserShell mais je n'ai pas d'AD disponible pour vérifier ma syntaxe.

Vous devriez obtenir une liste complète de tous les utilisateurs avec cette commande, mais je ne peux pas vérifier. dscl localhost list /Search/Users UserShell

Si le shell n'est pas défini pour les utilisateurs AD, corrigez cela. Dans l'interface graphique : Utilitaire d'annuaire - Active Directory, Avancé - Expérience utilisateur dans le cli : dsconfigad (la commande dsconfigad -show peut montrer la configuration actuelle)

Editer : et vérifier l'accès des groupes à ssh (par défaut seulement pour des utilisateurs spécifiques) dans server.app.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X