Tengo curiosidad por saber cómo puedo habilitar el sshd para que se inicie en el arranque únicamente con el terminal. La GUI es genial y todo, pero no va bien con mi bash scripts.
Respuestas
¿Demasiados anuncios?La respuesta breve sobre cómo habilitar sshd de la terminal está haciendo esto:
sudo systemsetup -setremotelogin on
La respuesta larga sobre cómo ejecutar daemons o scripts en el arranque es un poco más larga. Hay dos formas (que yo sepa) de hacerlo:
-
La primera es a través de Artículos de inicio que se ejecutan en la fase final del arranque, están obsoletos y no deberían utilizarse a menos que se necesite compatibilidad con Mac OS X 10.3 o anterior. Puedes echar un vistazo a cómo hacerlo de esta manera en aquí .
-
El segundo es lanzamientod un sustituto de init y rc (entre otros). Esta es la forma recomendada y es un poco más complicada que simplemente poner un script en una carpeta como en Linux. Hay varias formas de lanzar demonios, la preferida es lanzarlos bajo demanda (así estarán listos para lanzarse pero no los verás en un ps por ejemplo, a no ser que los esté utilizando). La explicación es un poco extensa y la lista de opciones es larga, puedes echar un vistazo a la documentación aquí . Puede echar un vistazo en /Librería/LaunchAgents Por ejemplo, si tiene instalado Chrome, hay un archivo para el actualizador de software de Google llamado com.google.keystone.agent.plist que se ejecuta en el momento de la carga, puedes empezar por ahí.
Iba a hacer esto un comentario, pero sería demasiado largo. Va un poco en más detalle acerca de mi problema particular y una forma diferente de habilitar el servidor SSH de la terminal, así como para asegurarse de que persiste a través de reinicios.
Me encontré con esta pregunta porque mi Inicio de Sesión Remoto ( sshd
) se desactivaba después de cada reinicio. Ninguna de las respuestas satisfacía mi pregunta (es decir, no tenía activado FileVault, etc., etc.).
Sólo tienes que comprobarlo /System/Library/LaunchDaemons/ssh.plist
y asegúrese de que <key>Disabled</key>
no está ajustado a <true/>
. Además, para asegurarme de que se inicie siempre al arrancar, he hecho que la entrada parcial tenga este aspecto:
....
<dict>
<key>Disabled</key>
<false/>
<key>RunAtLoad</key>
<true/>
<key>Label</key>
<string>com.openssh.sshd</string>
....
A continuación, ejecute lo siguiente para asegurarse de que la nueva configuración se mantiene:
sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
sudo reboot