SSH "з'єднання відмовлено" на Raspberry pi - не можу знайти чому


13

У мене є така проблема SSH "з'єднання відмовлено". Це спрацювало б добре, але, працюючи над SSH, я отримав би "відмовлено в з'єднанні" і мені доведеться знову підключитися (що не відбувається протягом добрих 5-10 хвилин). Я все спробував (перезапустити Linux, перезапустити ssh), але все ще не допомагає. Я перевірив також var / log, але там нічого корисного ...

ПРИМІТКА. Цікава примітка: коли я спробую ssh на свій зовнішній ip (277 ...), він переходить на чорний cmd-екран, я закриваю це і намагаюсь адресу 192.168.0.13, і це дозволяє мені ввійти .. але коротке в той час, знову з'єднання відмовилося ... Звичайно, якщо я відкрию сервер і перезавантажую sudo sshd, моє ssh "з'єднання відмовлено" відпадає ...

Мій порт ssh відкрито о 23, і я його також встановив на модем / маршрутизатор

sudpi@raspberrypi:~$ sudo netstat -tlpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1817/apache2
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      2227/vsftpd
tcp        0      0 127.0.0.1:3350          0.0.0.0:*               LISTEN      1784/xrdp-sesman
tcp        0      0 0.0.0.0:23              0.0.0.0:*               LISTEN      3115/sshd
tcp        0      0 0.0.0.0:3389            0.0.0.0:*               LISTEN      1781/xrdp
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      2397/mysqld

Коли я відключаюсь і знову входжу в систему та перевіряю "ХТО", я бачу лише попереднє підключення, свій root та поточне з'єднання

whopi@raspberrypi:~$ who  
pi       tty1         2013-01-28 09:20
pi       pts/0        2013-01-28 10:28 (192.168.0.12)
pi       pts/1        2013-01-28 10:32 (192.168.0.12)

Це те, що я змінив у ssh_config, який я змінив (SSH до 23, тому що роджери використовують 22 ...)

#   Port 23
...    
#Keep my damn connection alive!
KeepAlive yes
ServerAliveInterval 60

Це те, що я отримую, коли запускаю арп-сканування

pi@raspberrypi:/etc$ sudo arp-scan -I eth0 -l | grep 192.168.0.13
192.168.0.13    a0:6c:ec:ec:bb:5b       (Unknown)

Ця частина, яку я знайшов в Інтернеті, сказав мені, що я повинен розмістити наступні дві інформації

pi@raspberrypi:~$ ps afxu | grep sshd
root      2838  0.0  0.7   9800  3168 ?        Ss   10:27   0:00 sshd: pi [priv]                                                                                   
pi        2845  0.0  0.3   9800  1628 ?        S    10:28   0:00  \_ sshd: pi@pt                                                                                   s/0
root      2854  0.0  0.7   9800  3168 ?        Ss   10:32   0:00 sshd: pi [priv]                                                                                   
pi        2861  0.0  0.3   9800  1628 ?        S    10:32   0:00  \_ sshd: pi@pt                                                                                   s/1
root      2900  0.3  0.7   9800  3168 ?        Ss   10:44   0:00 sshd: pi [priv]                                                                                   
pi        2907  0.0  0.3   9800  1628 ?        S    10:44   0:00  \_ sshd: pi@pt                                                                                   s/2
root      2934  0.0  0.2   6204  1060 ?        Ss   10:45   0:00 /usr/sbin/sshd
root      2954  0.7  0.7   9800  3164 ?        Ss   10:45   0:00  \_ sshd: pi [p                                                                                   riv]
pi        2961  0.1  0.3   9800  1624 ?        S    10:46   0:00      \_ sshd: p                                                                                   i@pts/3
pi        2970  0.0  0.1   3536   796 pts/3    S+   10:46   0:00              \_                                                                                    grep sshd

EDIT: pi @ raspberrypi: ~ $ ssh -vvv 192.168.0.13 (ЦЕ може бути довго ... Дякую Барт Фрідеріхс)

pi@raspberrypi:~$ ssh -vvv 192.168.0.13 -p 23
OpenSSH_6.0p1 Debian-3, OpenSSL 1.0.1c 10 May 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 192.168.0.13 [192.168.0.13] port 23.
debug1: Connection established.
debug1: SELinux support disabled
...
debug1: match: OpenSSH_6.0p1 Debian-3 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.0p1 Debian-3
debug2: fd 3 setting O_NONBLOCK
debug3: put_host_port: [192.168.0.13]:23
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
...
debug1: Next authentication method: publickey
debug1: Trying private key: /var/www/.ssh/id_rsa
debug3: no such identity: /var/www/.ssh/id_rsa
debug1: Trying private key: /var/www/.ssh/id_dsa
debug3: no such identity: /var/www/.ssh/id_dsa
debug1: Trying private key: /var/www/.ssh/id_ecdsa
debug3: no such identity: /var/www/.ssh/id_ecdsa
debug2: we did not send a packet, disable method
debug3: authmethod_lookup password
debug3: remaining preferred: ,password
debug3: authmethod_is_enabled password
debug1: Next authentication method: password
pi@192.168.0.13's password: - I TYPED PASSWORD -
...
debug2: channel_input_status_confirm: type 99 id 0
debug2: PTY allocation request accepted on channel 0
debug2: channel 0: rcvd adjust 2097152
debug2: channel_input_status_confirm: type 99 id 0
debug2: shell request accepted on channel 0
Linux raspberrypi 3.6.11+ #350 PREEMPT Mon Jan 7 21:51:11 GMT 2013 armv6l

Запустіть netstat -tlpnяк root (або з sudo), якщо ви хочете побачити назви програм / PID. Переміщення SSH з порту за замовчуванням не здається гарною ідеєю, якщо ви недостатньо знайомі з адміністрацією Linux.
Бруно

1
Рядки, розпочаті з #, - це коментарі, тому в рядку ви вказуєте порт 23, який у вас є # раніше, він не буде оброблений, і тому він буде використовувати стандартний порт (22). Ви також можете мати щось у /etc/hosts.allow або /etc/hosts.deny, який контролює, хто може підключитися до sshd. Ви перевірили, чи немає у вас мережі зіткнення з ip адресою?
Труба

Відповіді:


8

Ви sshdслухаєте на порту 23, але ви підключаєтесь до порту 22 (стандартний ssh).

Спробуйте це:

  pi@raspberrypi:~$ ssh -vvv 192.168.0.13 -p 23

Помилка "відхилено з'єднання" означає, що рівень TCP в ядрі не приймає жодного з'єднання на цьому порту. Це не має нічого спільного з тим, щоб зберігати живі чи що-небудь.

Також ви використовуєте arpдля пошуку речі, але кращим інструментом буде nmap. arpповідомляє лише, якщо IP знаходиться у вашому домені широкомовної передачі, а не якщо відкриті будь-які порти.


Здрастуйте, Дякую за Вашу відповідь, я спробував pi @ raspberrypi: ~ $ nmap -bash: nmap: команда не знайдена ... мені потрібно це встановити? а чи є така для малини? Також дякую за виправлення, я відредагував -p 23, але в ньому немає нічого, що виглядає не на місці ...

nmapнасправді не потрібен, просто зручний інструмент. Зроблене оновлення, здається, змусило його працювати?
Барт Фрідеріхс

5

Цитування документації :

Станом на листопад 2016 року в Raspbian за замовчуванням відключений сервер SSH. Це потрібно буде ввімкнути вручну.

Щоб увімкнути SSH на машинах через консоль:

Увійдіть sudo raspi-configу термінал, спочатку виберіть advanced options, потім перейдіть до ssh, натисніть Enterта виберіть Enable or disable ssh server.

Щоб увімкнути SSH для безголівкових машин:

Для безголовної настройки SSH можна ввімкнути, розмістивши файл, названий sshбез будь-якого розширення, на завантажувальному розділі SD-карти.


Скопіюйте текст із відповіді @techraf у цьому пов'язаному питанні: SSH не працює зі свіжим встановленням .


Хоча це може технічно відповісти на запитання, я не впевнений, що techraf буде радий, що ви просто скопіювали та вставили їх відповідь. Однак якщо ви попросили їх дозволу перед тим, як зробити цю публікацію, це було б інакше.
Дарт Вейдер

1
Частина "умов надання послуг" (розд. 3) полягає в тому, що тут вважаються ліцензії , що мають ліцензію Creative Commons Attribution ShareAlike , і це перепризначення знаходиться в цих умовах. Однак тут не так багато відповідей, оскільки це досить чітко в питанні, яке sshdпрацює, і питання було до 2016 року
goldilocks

@DarthVader Я опублікував це як відповідь громади, належним чином зарахувавши автора, я подумав, що цього буде достатньо.
Дельган

1
@goldilocks Як ви вже здогадалися, це запитання з’являється у верхній частині результатів пошуку Google про відмову від ssh connexion для Raspberry Pi. Я вважав, що це допоможе людям швидше зрозуміти, що може бути проблемою.
Дельган

На поточному новітньому (Raspbian Stretch) конфігурація SSH розміщена у розділі 5) Параметри взаємодії -> P2) SSH
R2RT

1

У мене була така ж проблема сьогодні вранці, і виправлено її шляхом видалення та встановлення openssh-сервера:

sudo apt-get remove openssh-server 
sudo apt-get install openssh-server

Привіт і Ласкаво просимо до обміну стеками! Просимо розглянути можливість більш глибокого пояснення на користь майбутніх читачів.
НУЛЬ

0

У мене була така ж проблема, і моїм рішенням було відключити та видалити iptables.

запустіть ці команди:

(як sudoer)

iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -t mangle -F iptables -t mangle -X iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT

sudo apt-get remove --purge iptables


0

Для мене працювало наступне: перейшов до / etc / ssh / ssh_config та / etc / ssh / sshd_config, а потім дозволив доступ без пароля.

Відмовились від служби та voilà, працюючи!


0

Оновлення відповіді Делгана для Raspberry pi 3, RASPBIAN JESSIE AND PIXEL OS

У терміналі

sudo raspi-config 

Виберіть Параметри взаємодії -> SSH. Натисніть Enter та виберіть Увімкнути або вимкнути ssh-сервер


0

Я не впевнений, чи допоможе моя порада. У мене була така ж проблема, і я новачок у світі Linux. Прочитавши документацію Raspberry Pi, я виявив, що проблема знаходиться в конфігурації Pi, де SSH був відключений.

Клацніть на меню Raspberry Pi -> Налаштування -> Запуск конфігурації Raspberry Pi. Перейдіть на вкладку "Інтерфейси" Виберіть Увімкнено поруч із SSH. Натисніть кнопку ОК. Це вирішило мою проблему. Будь ласка, спробуйте і дайте мені знати.


-1

з

sudpi@raspberrypi:~$ sudo netstat -tlpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1817/apache2
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      2227/vsftpd
tcp        0      0 127.0.0.1:3350          0.0.0.0:*               LISTEN      1784/xrdp-sesman
tcp        0      0 0.0.0.0:23              0.0.0.0:*               LISTEN      3115/sshd
tcp        0      0 0.0.0.0:3389            0.0.0.0:*               LISTEN      1781/xrdp
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      2397/mysqld

Добре почати перевірити, в чому проблема, але недостатньо, щоб відповісти на питання :-(
Morgan Courbet

-1

У мене була така ж проблема, але вона була вирішена після того, як я запустив команду

sudo apt-get remove --purge iptables. і відключення бездротового підключення.


-1

Є два файли конфігурації / etc / ssh / ssh_config та / etc / ssh / sshd_config

Змініть порт з 22 на все, що вам потрібно в обох файлах.

перезапустити послугу sudo service ssh restart


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