SSH-соединение получает отказ


10

Я новичок в Linux, и я пытаюсь установить SSH-соединение с ПК моего друга в той же локальной сети, но я получаю:

ssh: connect to host 192.168.71.70  port 22: Connection refused

Оба способа получают «соединение отказано». Как я могу это исправить?


1
Не могли бы вы проверить, а затем обновить вопрос: а) что у вашего друга установлен и работает openssh-сервер, б) что он прослушивает порт по умолчанию 22 и в) что вы получили правильный IP-адрес.
Андол

и d) что брандмауэр не блокирует соединение
RobotHumans

Спасибо за ваш ответ andol проблема в том, что ssh-сервер не был установлен. Теперь я сделал это, и он работает правильно.
Саммит

Ответы:


14

В локальной сети или нет, я обычно делаю это:

  1. Сначала установите openssh-сервер на все ПК, которые будут получать SSH-соединение:

    sudo apt-get install openssh-server
    
  2. Убедитесь, что компьютер, на котором я только что установил openssh-сервер, доступен. Самый быстрый способ - отправить ему пинг.

ping 192.168.0.100при условии, что IP-адрес - это IP-адрес компьютера моего друга. Если все в порядке, я продолжаю к нему доступ. Помните, что вам нужно использовать учетную запись, которая уже существует на ПК вашего друга. Обычно его собственный аккаунт подойдет.

ssh friend@192.168.0.100где friendимя пользователя вашего друга

В нормальном сценарии этого должно быть достаточно. Дайте мне знать, если это работает.


Я бы сказал, что часть этого ответа верна, это «install openssh-server», но часть проверки не имеет ничего общего с SSH. Лучший способ убедиться, что сервер ssh работает: 1. Убедитесь, что он включен (состояние ssh службы sudo) 2. На клиентском компьютере telnet подключитесь к порту 22 на коробке с сервером ssh (telnet server1.example .com 22) или nmap сервер ssh (nmap server1.example.com). Pinging только сообщает клиенту, что вы можете получить к ним доступ через ICMP, но вы все равно можете использовать SSH на сервере и отключить ICMP на уровне ядра ... Просто мои два цента.
ruffEdgz

У меня были друзья, устанавливающие SSH, и я провел час, пытаясь соединиться друг с другом, просто чтобы узнать, что у них нет подключенных кабелей или неправильно настроена сеть, чтобы видеть друг друга. PING просто поможет с этим и не думает, что SSH имеет проблему. Экономит время.
Луис Альварадо

Это прекрасно, чтобы добавить его, чтобы убедиться в возможности подключения, но вы можете сделать это ПЛЮС, чтобы убедиться, что порты открыты с помощью nmap (sudo apt-get install nmap) с клиентского компьютера на серверный компьютер, если iptables не блокирует все порты к серверу ssh. Я мог бы быть немного придирчив к этому, но я хочу убедиться, что выполняется правильная проверка, чтобы убедиться, что сервис на самом деле включен, а не просто проверять, запущен ли ящик.
ruffEdgz

Ну, по умолчанию я увидел, что достаточно установить сервер openssh. Порты открыты по умолчанию. Вы должны были бы заблокировать их или иметь устройство, блокирующее порт. Так что, если ОП сделал это, это было бы что-то особенное для него / нее. Помимо этого, да, проверка в nmap или других сетевых инструментах - хорошая идея во многих случаях.
Луис Альварадо

5

Когда вы попытаетесь подключиться, используйте -vvvпереключатель, чтобы показать отладочную информацию:

ssh -vvv username@host
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.