Jak włączyć zdalny dostęp do innego konta na komputerze Mac zdalnie przez SSH?
23
Mam uprawnienia administratora na zdalnym komputerze Mac. Mogę uzyskać do niego dostęp za pośrednictwem SSH. Komputer Mac ma inne konto użytkownika, które nie ma dostępu zdalnego. Jak mogę zdalnie (przez SSH) włączyć zdalny dostęp do drugiego konta?
Dostęp użytkowników SSH jest kontrolowany przez lokalną kopię Usług katalogowych. (Kontrolowane za pomocą dscl)
Pierwsze uruchomienie dscl . list /Groups | grep 'access_ssh'. Jeśli zwrócona wartość mówi, com.apple.access_ssh-disabledwszyscy użytkownicy mają dostęp do SSH. Jeśli nie, to musimy dać użytkownikowi dostęp.
Aby dodać użytkownika, musisz uruchomić:
sudo dscl . append /Groups/com.apple.access_ssh user USERNAME
(zastąp USERNAME krótką nazwą użytkownika), a także:
@Andrei: dodaj flagę -users po opcji -configure z listą użytkowników. Dodałem to do mojej odpowiedzi.
Chealion
4
Wygląda na to, że struktura access_ssh zmieniła się z czasem. Kluczowym „użytkownikiem” w pierwszym poleceniu dscl powinno być teraz GroupMembership. Druga komenda dscl dołączająca UID do członków grupy jest nadal ważna.
Erik,
2
Erik ma rację - @Chealion, czy możesz zaktualizować swoją odpowiedź, zmieniając komendę nadscl . append /Groups/com.apple.access_ssh GroupMembership <username>
rfay
2
Mam 10.11.5 i polecenia nie narzekają, ale użytkownik nadal nie może ssh. EDYCJA: wypróbowałem to i zadziałało: support.apple.com/kb/PH18726
Jayen
1
Chociaż ta odpowiedź może nadal działać, odpowiedź @ teppic zapewnia bardziej poprawną metodę przy użyciu konkretnego narzędzia do edycji grup dseditgroup.
Endareth,
12
Na podstawie odpowiedzi Chealiona wymyśliłem to, aby WSZYSCY użytkownicy mogli ssh:
OK, mogłem źle zrozumieć twoje pytanie. Przez „Zdalny dostęp” przypuszczałem, że miałeś na myśli pulpit zdalny, ale teraz widzę, że po prostu chcesz włączyć dostęp ssh dla drugiego konta, prawda?
Moja odpowiedź zaprowadzi cię w połowie drogi. Po włączeniu Pulpitu zdalnego, jak pokazano, połącz się ze zdalnym komputerem Mac, aby zmienić dostęp ssh użytkownika za pośrednictwem Prefiksów systemu.
Aby połączyć się ze zdalnym komputerem Mac, przejdź do Findera i wybierz Connect to Server…w menu Go. wpisz adres serwera dla swojego komputera:
vnc://x.x.x.x
Gdzie xxxx to adres IP lub identyfikator URI komputera zdalnego. Ponieważ łączyłeś się z ssh, zakładam, że już o tym wiesz.
Teraz możesz użyć Pulpitu zdalnego, aby przejść do Pref. Systemowych> Konta i kliknąć pole, aby zezwolić drugiemu logować się na komputerze…
Czy muszę mieć Apple Remote Desktop zainstalowany na zdalnym komputerze Mac? Co powinienem zrobić po pierwszym poleceniu?
Andrei
1
Pulpit zdalny jest już zainstalowany w systemie. Zmienię swoją odpowiedź na instrukcje dotyczące pulpitu zdalnego. Ups Być może źle zrozumiałem twoje pytanie…
ghoppe
W każdym razie, co muszę zrobić po pierwszym poleceniu, zakładając, że używam innego komputera Mac, aby uzyskać dostęp do zdalnego?
Andrei
2
Edytowałem moją odpowiedź. Może istnieć sposób na włączenie dostępu ssh za pomocą wiersza poleceń, więc nie musisz tego robić za pomocą Pulpitu zdalnego, ale ta metoda również powinna działać.
ghoppe
Pierwsze polecenie robi coś podejrzanego - zmienia inne konta, nie tylko moje. Czy można to zmienić w taki sposób, aby nie miało to wpływu na inne konta?
Andrei
5
sshdostęp jest przyznawany członkom com.apple.access_sshgrupy. Jest to grupa, którą edytujesz, gdy modyfikujesz dostęp do usługi logowania zdalnego za pomocą panelu przedniego Udostępnianie .
Chociaż dsclmożna go używać do edytowania członkostwa w grupach (jak opisano w innych odpowiedziach), dseditgroupjest prostszym sposobem modyfikacji com.apple.access_sshczłonkostwa w grupach z wiersza poleceń.
aby dodać użytkownika:
sudo dseditgroup -o edit -t user -a USERNAME com.apple.access_ssh
aby usunąć użytkownika:
sudo dseditgroup -o edit -t user -d USERNAME com.apple.access_ssh
dscl . append /Groups/com.apple.access_ssh GroupMembership <username>
Na podstawie odpowiedzi Chealiona wymyśliłem to, aby WSZYSCY użytkownicy mogli ssh:
źródło
Włącz pulpit zdalny za pomocą wiersza polecenia:
Wyłącz udostępnianie ekranu:
EDYTOWAĆ
OK, mogłem źle zrozumieć twoje pytanie. Przez „Zdalny dostęp” przypuszczałem, że miałeś na myśli pulpit zdalny, ale teraz widzę, że po prostu chcesz włączyć dostęp ssh dla drugiego konta, prawda?
Moja odpowiedź zaprowadzi cię w połowie drogi. Po włączeniu Pulpitu zdalnego, jak pokazano, połącz się ze zdalnym komputerem Mac, aby zmienić dostęp ssh użytkownika za pośrednictwem Prefiksów systemu.
Aby połączyć się ze zdalnym komputerem Mac, przejdź do Findera i wybierz
Connect to Server…
w menu Go. wpisz adres serwera dla swojego komputera:Gdzie xxxx to adres IP lub identyfikator URI komputera zdalnego. Ponieważ łączyłeś się z ssh, zakładam, że już o tym wiesz.
Teraz możesz użyć Pulpitu zdalnego, aby przejść do Pref. Systemowych> Konta i kliknąć pole, aby zezwolić drugiemu logować się na komputerze…
źródło
ssh
dostęp jest przyznawany członkomcom.apple.access_ssh
grupy. Jest to grupa, którą edytujesz, gdy modyfikujesz dostęp do usługi logowania zdalnego za pomocą panelu przedniego Udostępnianie .Chociaż
dscl
można go używać do edytowania członkostwa w grupach (jak opisano w innych odpowiedziach),dseditgroup
jest prostszym sposobem modyfikacjicom.apple.access_ssh
członkostwa w grupach z wiersza poleceń.aby dodać użytkownika:
aby usunąć użytkownika:
źródło