Як відкрити порт 22 в OS X 10.6.7


83

Я намагаюся відкрити порт 22 на osx, щоб я міг підключитися до localhost за допомогою ssh. Це моя поточна ситуація:

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

Я згенерував ключ і кинув його у свій файл санкціонованих ключів так:

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

Сканування портів "Мережева утиліта" підтверджує, що 22 (і, що дивно, 23) закриті.

Контекст: Я працюю над тим, щоб Hadoop встановлювався локально. У моїй конфігурації я запускаю служби на localhost: #### s і мені потрібно відкрити для них зв’язок через ssh.

Як я можу відкрити 22? або я можу зіткнутися з іншою проблемою (можливо, неправильно сформований ключ?)

Відповіді:


186

Я думаю, що ваш порт, можливо, відкритий, але у вас немає нічого, що б його слухало.

В операційній системі Apple Mac OS X за замовчуванням встановлено SSH, але демон SSH не ввімкнено. Це означає, що ви не можете віддалено входити в систему або робити віддалені копії, поки ви не ввімкнете її.

Щоб увімкнути його, перейдіть до "Системні налаштування". У розділі "Інтернет та мережі" є піктограма "Спільний доступ". Запусти це. У списку, що з’явиться, поставте прапорець біля пункту «Віддалений вхід». В OS X Yosemite і новіших версіях більше не існує меню "Інтернет та мережі"; його було переміщено до рахунків. Меню Спільний доступ тепер має власну піктограму в головному меню Системних налаштувань. (thx @AstroCB)

Це негайно запускає демон SSH, і ви можете віддалено ввійти, використовуючи своє ім’я користувача. У вікні 'Спільний доступ' внизу відображаються ім'я та IP-адреса, які слід використовувати. Ви також можете дізнатися про це за допомогою 'whoami' та 'ifconfig' із програми Terminal.

Ці інструкції скопійовані з Enable SSH у Mac OS X , але я хотів переконатися, що вони не зникнуть, і забезпечити швидкий доступ.


Я не можу зрозуміти, що ти зробив. Точно там, де доступна піктограма спільного доступу. будь ласка, допоможи мені.
Divyang Shah

Він знаходиться в розділі Системні налаштування, доступний в меню Apple у верхній частині.
Хаукман

Також переконайтеся, що у вас є "Дозволити доступ для всіх користувачів", якщо ви не адміністратор.
Донато

12
FYI: В OS X Yosemite і новіших версіях більше не існує меню "Інтернет та мережі"; його було переміщено до рахунків. Меню Спільний доступ тепер має власну піктограму в головному меню Системних налаштувань.
AstroCB


5

Для них доступно 3 рішення.

1) Увімкніть віддалений вхід за допомогою команди нижче - sudo systemsetup -setremotelogin on

2) У Mac перейдіть до Системних налаштувань -> Спільний доступ -> увімкніть віддалений вхід, це все. 100% робочий розчин

3) Остаточне і найважливіше рішення - перевірити підключення до приватної мережі. Іноді віддалений вхід заборонено використовувати в локальній мережі.

Будь ласка, спробуйте підключити свій апарат за допомогою особистої мережі, як-от мобільна мережа, точка доступу тощо.


0

Я не міг вирішити проблему; Потім я зробив наступне, і проблема була вирішена: Зверніться сюди :

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  

Я прослідкував цей процес і отримав '34720 0 com.openssh.sshd.long_string_of_digits_and_numbers', але 'ssh username @ IP_address' все одно дає мені ssh: підключитися до хосту IP_address порт 22: Підключення відмовлено '
Gene Arboit

0

Відповідно до macOS 10.14.5, нижче наведено деталі:

Йти до

системні налаштування> спільний доступ> віддалений вхід.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.