¿Cómo habilitar el acceso remoto para otra cuenta en Mac de forma remota a través de SSH?
23
Tengo derechos de administrador en una computadora Mac remota. Puedo acceder a través de SSH. La Mac tiene otra cuenta de usuario, que no tiene acceso remoto. ¿Cómo puedo habilitar remotamente (a través de SSH) el acceso remoto para la otra cuenta?
El acceso SSH de los usuarios está controlado por la copia local de los Servicios de directorio. (Controlado usando dscl)
Primero fuera de carrera dscl . list /Groups | grep 'access_ssh'. Si el valor devuelto dice, com.apple.access_ssh-disabledentonces todos los usuarios tienen acceso SSH. Si no, entonces debemos darle acceso al usuario.
Para agregar el usuario que necesita ejecutar:
sudo dscl . append /Groups/com.apple.access_ssh user USERNAME
(reemplace USERNAME con el nombre de usuario corto del usuario) y también:
@Andrei: agregue el indicador -users después de -configure con la lista de usuarios. Lo he agregado a mi respuesta.
Chealion
44
Parece que la estructura de access_ssh ha cambiado con el tiempo. La clave 'usuario' en el primer comando dscl ahora debería ser GroupMembership. El segundo comando dscl que agrega el UID a los miembros del grupo sigue siendo válido.
Erik
2
Erik tiene razón: @Chealion, ¿podría actualizar su respuesta cambiando el comando adscl . append /Groups/com.apple.access_ssh GroupMembership <username>
Rfay
2
Estoy en 10.11.5 y los comandos no se quejan, pero el usuario todavía no puede ssh. EDITAR: probé esto y funcionó: support.apple.com/kb/PH18726
Jayen
1
Si bien esta respuesta aún puede funcionar, la respuesta de @ teppic proporciona un método más correcto utilizando la herramienta específica para editar grupos dseditgroup.
Endareth
12
Basado en la respuesta de Chealion, se me ocurrió esto para permitir que TODOS los usuarios ingresen:
Bien, puedo haber entendido mal tu pregunta. Por "acceso remoto" supuse que te referías al escritorio remoto, pero ahora veo que solo quieres habilitar el acceso ssh para la otra cuenta, ¿verdad?
Mi respuesta te lleva a medio camino. Después de habilitar Remote Desktop como se muestra, luego conéctese con la Mac remota para cambiar el acceso ssh del usuario a través de System Prefs.
Para conectarse a la Mac remota, vaya al Finder y seleccione Connect to Server…en el menú Ir. escriba la dirección del servidor para su computadora:
vnc://x.x.x.x
Donde xxxx es la dirección IP o URI de la computadora remota. Como te conectaste con ssh, supongo que ya lo sabes.
Ahora puede usar el Escritorio remoto para navegar a Preferencias del sistema> Cuentas y hacer clic en el cuadro para permitir que la otra cuenta inicie sesión en la computadora ...
¿Necesito tener Apple Remote Desktop instalado en la Mac remota? ¿Qué debo hacer después del primer comando?
Andrei
1
Escritorio remoto ya está instalado en el sistema. Editaré mi respuesta para las instrucciones de Escritorio remoto. Ups Puede que haya entendido mal su pregunta ...
ghoppe
De todos modos, ¿qué debo hacer después del primer comando, suponiendo que estoy usando otra Mac para acceder al remoto?
Andrei
2
Edité mi respuesta. Puede haber una forma de habilitar el acceso ssh a través de la línea de comandos para que no tenga que hacerlo a través del Escritorio remoto, pero este método también debería funcionar.
ghoppe
El primer comando hace algo sospechoso: cambia otras cuentas, no solo mi. ¿Se puede modificar de tal manera que otras cuentas no se vean afectadas?
Andrei
5
sshSe otorga acceso a los miembros del com.apple.access_sshgrupo. Este es el grupo que está editando cuando realiza modificaciones de acceso al servicio de Inicio de sesión remoto a través del panel de preferencias Compartir .
Si bien dsclse puede usar para editar membresías de grupo (como se describe en otras respuestas), dseditgroupes una forma más limpia de modificar las com.apple.access_sshmembresías de grupo desde la línea de comandos.
para agregar un usuario:
sudo dseditgroup -o edit -t user -a USERNAME com.apple.access_ssh
para eliminar un usuario:
sudo dseditgroup -o edit -t user -d USERNAME com.apple.access_ssh
dscl . append /Groups/com.apple.access_ssh GroupMembership <username>
Basado en la respuesta de Chealion, se me ocurrió esto para permitir que TODOS los usuarios ingresen:
fuente
Habilitar Escritorio remoto a través de la línea de comando:
Desactiva el uso compartido de pantalla:
EDITAR
Bien, puedo haber entendido mal tu pregunta. Por "acceso remoto" supuse que te referías al escritorio remoto, pero ahora veo que solo quieres habilitar el acceso ssh para la otra cuenta, ¿verdad?
Mi respuesta te lleva a medio camino. Después de habilitar Remote Desktop como se muestra, luego conéctese con la Mac remota para cambiar el acceso ssh del usuario a través de System Prefs.
Para conectarse a la Mac remota, vaya al Finder y seleccione
Connect to Server…
en el menú Ir. escriba la dirección del servidor para su computadora:Donde xxxx es la dirección IP o URI de la computadora remota. Como te conectaste con ssh, supongo que ya lo sabes.
Ahora puede usar el Escritorio remoto para navegar a Preferencias del sistema> Cuentas y hacer clic en el cuadro para permitir que la otra cuenta inicie sesión en la computadora ...
fuente
ssh
Se otorga acceso a los miembros delcom.apple.access_ssh
grupo. Este es el grupo que está editando cuando realiza modificaciones de acceso al servicio de Inicio de sesión remoto a través del panel de preferencias Compartir .Si bien
dscl
se puede usar para editar membresías de grupo (como se describe en otras respuestas),dseditgroup
es una forma más limpia de modificar lascom.apple.access_ssh
membresías de grupo desde la línea de comandos.para agregar un usuario:
para eliminar un usuario:
fuente