Comment activer SSH sur un Mac à partir de la ligne de commande

Table des matières:

Anonim

Tous les Mac modernes exécutant macOS ou Mac OS X sont livrés avec SSH préinstallé par défaut, mais le démon SSH (Secure Shell) est également désactivé par défaut. Les utilisateurs avancés de Mac apprécieront peut-être de savoir que la possibilité d'activer et de désactiver SSH est entièrement disponible à partir de la ligne de commande de Mac OS, ce qui permet un moyen simple d'autoriser ou d'interdire les connexions à distance à un ordinateur.Il n'y a pas de chargement, de téléchargement ou de compilation de kext nécessaire, pour activer SSH depuis le terminal sur n'importe quel Mac, vous devez simplement exécuter une commande de configuration du système, comme nous le montrerons dans ce didacticiel.

Une remarque rapide ; ce guide s'applique à toutes les versions de macOS et Mac OS X, mais s'adresse vraiment aux utilisateurs plus avancés qui passent beaucoup de temps dans le Terminal. Si vous souhaitez activer et désactiver SSH et éviter la ligne de commande, vous pouvez le faire en activant la connexion à distance dans le panneau de préférences de partage sur un Mac, ou arrêtez le serveur en le laissant décoché. Si vous n'utilisez pas régulièrement ssh, il n'y a aucune raison d'activer le serveur ssh sur un Mac.

Comment vérifier si la connexion à distance SSH est activée sous Mac OS via Terminal

Vous voulez vérifier l'état actuel de SSH sur un Mac ? À l'aide de la chaîne de commande systemsetup, nous pouvons rapidement déterminer si SSH et la connexion à distance sont actuellement activés sur n'importe quel Mac :

sudo systemetup -getremotelogin

Si la connexion à distance et SSH sont actuellement activés, la commande et le rapport indiqueront "Connexion à distance : activé" tandis que si SSH est désactivé et dans l'état macOS par défaut, il indiquera "Connexion à distance : désactivé" .

Activez SSH sur Mac à partir de la ligne de commande avec systemetup

Pour activer rapidement le serveur SSH et autoriser les connexions ssh entrantes vers le Mac actuel, utilisez l'indicateur -setremotelogin avec systemetup comme suit :

sudo systemetup -setremotelogin on

sudo est nécessaire car la commande systemetup nécessite des privilèges d'administrateur, tout comme lorsque vous activez la connexion à distance à partir des préférences de partage sur un Mac pour activer les serveurs shell sécurisés.

Il n'y a pas de confirmation ni de message indiquant que la connexion à distance et SSH ont été activés, mais vous pouvez utiliser l'indicateur -getmorelogin susmentionné pour vérifier que le serveur SSH est bien en cours d'exécution.Et oui, l'utilisation de -setremotelogin s'applique à l'activation des serveurs ssh et sftp sur le Mac.

Une fois que ssh a été activé, tout compte d'utilisateur ou toute personne disposant d'un identifiant sur le Mac actuel peut y accéder à distance à l'aide de la commande ssh visant l'adresse IP du Mac comme ceci :

ssh [email protected]

Une fois connecté, l'utilisateur aura un accès à distance à l'ordinateur via la ligne de commande, et s'il a un compte administrateur ou un mot de passe administrateur, il aura également un accès complet à l'administration à distance.

Désactivez SSH sur Mac OS avec systemsetup

Si vous souhaitez désactiver les serveurs SSH à partir de la ligne de commande et ainsi empêcher les connexions à distance, passez simplement de "on" à "off" avec l'indicateur -setremotelogin de systemetup comme suit :

sudo systemetup -setremotelogin off

Encore une fois, sudo est nécessaire pour désactiver SSH et désactiver les serveurs ssh et sftp.

Lorsque vous exécutez la commande avec succès, il vous sera demandé : "Voulez-vous vraiment désactiver la connexion à distance ? Si vous le faites, vous perdrez cette connexion et ne pourrez la réactiver que localement sur le serveur (oui/non) ? » tapez donc "oui" pour confirmer, ce qui désactivera SSH et déconnectera également toutes les connexions SSH actives au Mac en question. Si vous voulez éviter d'avoir à taper oui/non, peut-être pour l'inclure dans un script de configuration ou autre, vous pouvez utiliser l'indicateur -f pour contourner la question comme suit :

sudo systemetup -f -setremotelogin off

De même, vous pouvez également utiliser -f pour ignorer toutes les invites concernant l'activation de SSH.

systemsetup -f -setremotelogin on

Notez que, que vous désactiviez ou activiez SSH à partir de la ligne de commande, le paramètre du panneau de préférences du système de connexion à distance dans l'interface graphique de Mac OS X sera également ajusté pour refléter le changement en conséquence.

Comment activer SSH sur un Mac à partir de la ligne de commande