Come posso abilitare il server SSH all'avvio tramite Terminal?

5

Curioso di come posso abilitare l'avvio di sshd all'avvio usando esclusivamente il terminale. La GUI è fantastica e tutto ma non va bene con i miei script di bash.

    
posta Jake 24.01.2012 - 00:33
fonte

2 risposte

5

La risposta breve su come abilitare sshd dal terminale è questa:

sudo systemsetup -setremotelogin on

La lunga risposta su come eseguire daemon o script all'avvio è un po 'più lunga. Ci sono due modi (che io sappia) per fare questo:

  • Il primo è attraverso Elementi di avvio , che vengono eseguiti nella fase finale di avvio, questi sono deprecati e non dovrebbero essere utilizzati a meno che non sia necessaria la compatibilità con Mac OS X 10.3 o in precedenza. Puoi dare un'occhiata a come fare in questo modo in qui .

  • Il secondo è launchd , una sostituzione per init e rc (tra gli altri). Questo è il metodo consigliato ed è un po 'più complicato del semplice mettere uno script su una cartella come in Linux. Ci sono diversi modi per lanciare i demoni, il modo preferito per lanciarli su richiesta (quindi saranno pronti per il lancio ma non li vedrete in un ps per esempio, a meno che non li stiate usando ). La spiegazione è un po 'lunga e l'elenco delle opzioni è lungo, puoi dare un'occhiata alla documentazione qui . Puoi dare un'occhiata in / Library / LaunchAgents per gli esempi, se hai installato Chrome, c'è un file lì per l'aggiornamento software di Google chiamato com.google.keystone.agent.plist , che viene eseguito al momento del caricamento, puoi iniziare da lì.

risposta data 24.01.2012 - 16:41
fonte
0

Stavo per rendere questo un commento, ma sarebbe troppo lungo. Va un po 'più in dettaglio sul mio particolare problema e un modo diverso per abilitare il server SSH dal terminale, oltre a garantire che persista attraverso i riavvii.

Mi sono imbattuto in questa domanda perché il mio Login remoto ( sshd ) si è disattivato dopo ogni riavvio. Nessuna delle risposte ha soddisfatto la mia domanda (cioè non avevo FileVault abilitato, ecc. Ecc.).

Controlla /System/Library/LaunchDaemons/ssh.plist e assicurati che <key>Disabled</key> non sia impostato su <true/> . Inoltre, per assicurarmi che si avvii all'avvio ogni volta, ho fatto apparire la voce parziale in questo modo:

....
<dict>
    <key>Disabled</key>
    <false/>
    <key>RunAtLoad</key>
    <true/>
    <key>Label</key>
    <string>com.openssh.sshd</string>
....

Quindi esegui quanto segue per assicurarti che le nuove impostazioni rimangano:

sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
sudo reboot
    
risposta data 28.09.2017 - 17:35
fonte

Leggi altre domande sui tag