Usuario de inicio de sesión cuando se conecta a través de ssh en MacOS

5

He agregado la máquina MacOS Sierra a un dominio corporativo de Active Directory y he habilitado el inicio de sesión remoto para varios usuarios en un grupo de AD.

Esos usuarios pueden iniciar sesión localmente a través de la interfaz de usuario e incluso pueden iniciar sesión a través de SSH abierto a mac.

El requisito comercial para el que se hizo esto es permitir que los usuarios se conecten a un host Xamarin Build de Visual Studio para desarrollar para iOS, pero esto está fuera del alcance de esta pregunta. Así que, en última instancia, la conexión de Visual Studio se realiza a través de SSH puro. Una vez que la máquina MacOS remota acepta las credenciales ssh que se ingresan en la interfaz de usuario VS, intenta implementar una parte del programa requerida por VS para realizar las tareas necesarias, una aplicación Broker. El registro del intento es el siguiente:

Starting connection to Mac mac.mydomain.net... Starting Broker
4.3.0.795 in port 58116... 
The user must be logged in on the Mac in order to execute an SSH command. 
Disconnected from the Mac mac.mydomain.net (IP of mac.mydomain.net)

El problema es esta entrada:

The user must be logged in on the Mac in order to execute an SSH command. 

Básicamente, si voy a MacOS a través de la interfaz de usuario e inicio de sesión a ese usuario, luego, con el cambio rápido de usuario, simplemente moveré la pantalla a la ventana de inicio de sesión, mientras mantengo la sesión de la interfaz de usuario del usuario, podré conectarme a través de Visual Estudio muy bien.

Entonces, el inicio de sesión ssh no es lo mismo que el inicio de sesión UI. ¿Cómo puedo configurar los eventos o algo así, para que al iniciar sesión en SSH, un usuario esté "como en la interfaz de usuario" también registrado?

Actualización: Probablemente duplicado de enlace

    
pregunta Maxim V. Pavlov 04.04.2017 - 12:09

1 respuesta

1

A corto plazo, probablemente tendrá que limitar los usuarios registrados a uno o dos, ya que Mac OS no implementa un modelo de servicios de terminal de muchos usuarios remotos. Es probable que su configuración no solo viole los términos explícitos relacionados con funcionalidad de Escritorio remoto en la licencia de software ( Suponiendo que su empresa no negoció un acuerdo de licencia personalizado con Apple), muchos subsistemas, parámetros de ajuste y scripts están diseñados para un usuario principal a la vez.

A largo plazo, es probable que elijas volver a diseñar tu conjunto de herramientas de compilación para configurar una combinación de:

  • un servidor de integración continua que se construye sin GUI
  • Server.app de Apple y aprovecha el servicio del servidor Xcode para gestionar el inicio de sesión en la GUI, por lo que no es necesario realizar una secuencia de comandos y automatizar la sesión local con ventanas para la cuenta de compilación compartida
  • múltiples Mac para cada desarrollador para que puedan construirse localmente en lugar de de forma remota.

TLDR; el sistema no fue diseñado para 5 usuarios remotos: experimentará rarezas y problemas si se ejecuta de esa manera por mucho tiempo

    
respondido por el bmike 04.04.2017 - 12:45

Lea otras preguntas en las etiquetas