0 votos

¿Cómo activar el ssh sin contraseña en un Mac?

Quiero empezar un guión

#!/bin/bash
BOOT_TIME=$(sysctl -n kern.boottime | sed -e 's/.* sec = \([0-9]*\).*/\1/')
CURR_TIME=$(date +%s)
MAX_UPDAYS=1 #Days

DAYS_UP=$(( ( $CURR_TIME - $BOOT_TIME) / 86400 ))
    if [ $DAYS_UP -ge ${MAX_UPDAYS} ];then
        echo Mac is going to shutdown 
        shutdown -h now
    else
        echo No shutdown needed
fi

que apaga un PC si el tiempo de ejecución es superior a 1 día. Sin embargo quiero ejecutarlo remotamente a las 11:30pm, donde no puedo escribir una contraseña. ¿Cómo puedo configurar el script y el cronjob para que no me pida permiso mediante contraseña?

0voto

David Duggins Puntos 1

Este escenario tendría dos instancias en las que se pediría una contraseña. Una en la máquina local para conectarse a la máquina remota y otra en la máquina remota para ejecutar el comando. En la máquina local simplemente necesitas establecer una clave ssh en tu máquina local e instalarla en la máquina remota. Aquí hay un gran artículo sobre cómo hacerlo: https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys--2 .

En la máquina remota tendría que añadir un usuario al grupo sudo o wheel y luego configurar el grupo wheel para que ejecute comandos sudo sin pedir una contraseña. Para ello, inicie sesión en la máquina remota y ejecute sudo visudo y editar el archivo sudoers.

Hay varias maneras de hacerlo. Puedes cambiar a nivel de grupo o a nivel de usuario. El grupo sudo admin por defecto en el mac es wheel así

%wheel ALL=(ALL) NOPASSWD:ALL

Entonces tendrías que ejecutar el script en la máquina remota usando sudo por un usuario del grupo wheel y no debería pedir la contraseña.

Para hacerlo sólo a nivel de usuario, sustituya %wheel con sólo el nombre de usuario. Tenga en cuenta que este usuario (o todos los usuarios en el grupo de la rueda) a partir de este punto será capaz de ejecutar comandos como Root sin una contraseña. No sería mala idea crear un usuario para este script y luego darle sólo la capacidad de ejecutar el comando shutdown. Para esto, reemplaza el último ALL con la ruta del comando...en tu caso /sbin/shutdown

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X