Jak otworzyć port 22 w systemie OS X 10.6.7


83

Próbuję otworzyć port 22 na osx, więc mogę połączyć się z lokalnym hostem za pomocą ssh. Oto moja obecna sytuacja:

ssh localhost
ssh: connect to host localhost port 22: Connection refused

Wygenerowałem klucz i wrzuciłem go do mojego pliku allowed_keys w następujący sposób:

sh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

Skanowanie portów „Narzędzie sieciowe” potwierdza, że ​​22 (i, co zaskakujące), są zamknięte.

Kontekst: Pracuję nad lokalną konfiguracją Hadoop. W mojej konfiguracji używam usług na hoście lokalnym: #### si potrzebuję nawiązać z nimi komunikację przez ssh.

Jak mogę otworzyć 22? czy może mam inny problem (może nieprawidłowo wygenerowany klucz?)

Odpowiedzi:


186

Myślę, że twój port jest prawdopodobnie otwarty, ale nie masz nic, co na nim nasłuchuje.

System operacyjny Apple Mac OS X ma domyślnie zainstalowany protokół SSH, ale demon SSH nie jest włączony. Oznacza to, że nie możesz logować się zdalnie ani wykonywać zdalnych kopii, dopóki tego nie włączysz.

Aby go włączyć, przejdź do „Preferencji systemowych”. W sekcji „Internet i sieci” znajduje się ikona „Udostępnianie”. Uruchom to. Na wyświetlonej liście zaznacz opcję „Logowanie zdalne”. W systemie OS X Yosemite i nowszych nie ma już menu „Internet i sieć”; został przeniesiony do Konta. Menu udostępniania ma teraz własną ikonę w głównym menu Preferencji systemowych. (thx @AstroCB)

Spowoduje to natychmiastowe uruchomienie demona SSH i możesz zdalnie zalogować się przy użyciu swojej nazwy użytkownika. W oknie „Udostępnianie” u dołu wyświetlana jest nazwa i adres IP, których należy użyć. Możesz również dowiedzieć się tego za pomocą poleceń „whoami” i „ifconfig” w aplikacji Terminal.

Te instrukcje są kopiowane z Włącz SSH w Mac OS X , ale chciałem się upewnić, że nie znikną i zapewnić szybki dostęp.


Nie mogę zrozumieć, co zrobiłeś. Dokładnie, gdzie jest dostępna ikona udostępniania. proszę pomóż mi.
Divyang Shah,

Znajduje się w Preferencjach systemowych, dostępnym w menu Apple u góry.
Haukman,

Upewnij się również, że masz opcję „Zezwalaj na dostęp wszystkim użytkownikom”, jeśli nie jesteś administratorem.
Donato,

12
FYI: W systemie OS X Yosemite i nowszych nie ma już menu „Internet i sieć”; został przeniesiony do Konta. Menu udostępniania ma teraz własną ikonę w głównym menu Preferencji systemowych.
AstroCB


5

Dostępne są 3 rozwiązania.

1) Włącz zdalne logowanie za pomocą poniższego polecenia - sudo systemsetup -setremotelogin on

2) W systemie Mac przejdź do Preferencje systemowe -> Udostępnianie -> włącz Logowanie zdalne to wszystko. W 100% działające rozwiązanie

3) Ostatnim i najważniejszym rozwiązaniem jest - Sprawdź połączenie z siecią prywatną. Czasami zdalne logowanie nie jest dozwolone w sieci lokalnej.

Prosimy spróbować podłączyć urządzenie za pomocą sieci osobistej, takiej jak sieć komórkowa, hotspot itp.


0

Nie mogłem rozwiązać problemu; Następnie wykonałem następujące czynności i problem został rozwiązany: Zobacz tutaj :

sudo launchctl unload -w /System/Library/LaunchDaemons/ssh.plist  
    (Supply your password when it is requested)   
sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist  
ssh -v localhost  
sudo launchctl list | grep "sshd"  
    46427   -   com.openssh.sshd  

Wykonałem ten proces i otrzymałem „34720 0 com.openssh.sshd.long_string_of_digits_and_numbers”, ale „ssh username @ IP_address” nadal daje mi „ssh: connect to host IP_address port 22: Connection refused”
Gene Arboit

0

Zgodnie z systemem macOS 10.14.5, poniżej znajdują się szczegóły:

Iść do

preferencje systemowe> udostępnianie> logowanie zdalne.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.