Я не могу ssh в мой пи. RPI подключен напрямую к моему хосту.
Я установил IP-адрес своего хоста: ----
sudo ifconfig eth0 192.168.0.204 netmask 255.255.255.0 up
sudo route add default gw 192.168.0.200
Pi имеет IP-адрес по умолчанию в файле сетевых интерфейсов как: ----
auto lo eth0
iface lo inet loopback
iface eth0 inet static
address 192.168.0.202
netmask 255.255.255.0
gateway 192.168.0.200
если команда config на моем ПК: -----
ignite@ignite-desktop:~$ ifconfig
eth0 Link encap:Ethernet HWaddr 6c:f0:49:f3:a6:1b
inet addr:192.168.0.204 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::6ef0:49ff:fef3:a61b/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:681 errors:0 dropped:0 overruns:0 frame:0
TX packets:208 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:43752 (43.7 KB) TX bytes:33407 (33.4 KB)
Interrupt:26 Base address:0x4000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:12 errors:0 dropped:0 overruns:0 frame:0
TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1012 (1.0 KB) TX bytes:1012 (1.0 KB)
Пинг работает на том же хосте: ----
ignite@ignite-desktop:~$ ping 192.168.0.204
PING 192.168.0.204 (192.168.0.204) 56(84) bytes of data.
64 bytes from 192.168.0.204: icmp_seq=1 ttl=64 time=0.026 ms
64 bytes from 192.168.0.204: icmp_seq=2 ttl=64 time=0.018 ms
64 bytes from 192.168.0.204: icmp_seq=3 ttl=64 time=0.017 ms
64 bytes from 192.168.0.204: icmp_seq=4 ttl=64 time=0.014 ms
Пинг работает на пи с моего компьютера: ----
ignite@ignite-desktop:~$ ping 192.168.0.202
PING 192.168.0.202 (192.168.0.202) 56(84) bytes of data.
64 bytes from 192.168.0.202: icmp_seq=1 ttl=64 time=0.530 ms
64 bytes from 192.168.0.202: icmp_seq=2 ttl=64 time=0.508 ms
64 bytes from 192.168.0.202: icmp_seq=3 ttl=64 time=0.464 ms
64 bytes from 192.168.0.202: icmp_seq=4 ttl=64 time=0.445 ms
64 bytes from 192.168.0.202: icmp_seq=5 ttl=64 time=0.434 ms
SSH не работает
ignite@ignite-desktop:~$ ssh pi@raspberrypi
ssh: Could not resolve hostname raspberrypi: Name or service not known
ignite@ignite-desktop:~$ ssh pi@192.168.0.202
Read from socket failed: Connection reset by peer
ignite@ignite-desktop:~$ ssh 192.168.0.202 -l pi
Read from socket failed: Connection reset by peer
Подскажите пожалуйста, как это решить?
edit: ---
ssh -vvv pi@192.168.0.202 ---> вывод
ignite@ignite-desktop:~$ ssh -vvv pi@192.168.0.202
OpenSSH_5.1p1 Debian-6ubuntu2, OpenSSL 0.9.8g 19 Oct 2007
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 192.168.0.202 [192.168.0.202] port 22.
debug1: Connection established.
debug1: identity file /home/ignite/.ssh/identity type -1
debug1: identity file /home/ignite/.ssh/id_rsa type -1
debug1: identity file /home/ignite/.ssh/id_dsa type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.0p1 Debian-2
debug1: match: OpenSSH_6.0p1 Debian-2 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.1p1 Debian-6ubuntu2
debug2: fd 3 setting O_NONBLOCK
debug1: SSH2_MSG_KEXINIT sent
Read from socket failed: Connection reset by peer
Ответы:
У меня была та же проблема с недавно установленным raspbian, и проблема была с ключами хоста ssh на стороне сервера.
Эти ключи не генерируются на образе по тем причинам, что каждое устройство должно иметь разные ssh-ключи, и во время первой загрузки эти ключи генерируются автоматически.
Моя проблема заключалась в том, что, вероятно, во время генерации этих ключей я отключал питание, они были неправильными с нулевым размером.
Решение состоит в том, чтобы восстановить ключи хоста на стороне сервера ssh:
https://wiki.debian.org/SSH#Regenerating_host_keys
источник
Причина проблемы и исправления
Без специальных программ вы не можете войти в Pi, используя имя хоста. Для сетей локальной сети, пинг хоста. Когда у вас есть IP, запишите его. Затем напишите в терминал:
и вы должны быть в состоянии войти.
Если вы хотите получить доступ к Pi из-за пределов вашей домашней сети, вы должны перенаправить маршрутизатор. На самом деле, существует вопрос обмена стека о том, как это сделать.
Предполагая, что вы все еще хотите использовать хорошее имя для своего Pi, есть один вариант, который будет работать как внутри вашей сети, так и без нее.
DNSDynamic
Это программное обеспечение позволяет вам настроить доменное имя для вашего пи.
Зайдите на их сайт и настройте доменное имя и учетную запись.
Установите
ddclient
на свой Pi.А затем отредактируйте настройки конфига.
Наконец, измените файл следующим образом:
Предполагая, что вы хотите, чтобы он запускался автоматически каждый раз, когда ваш компьютер просыпается, введите в терминал следующее.
Добавьте следующую команду перед
exit 0
(которая является последней строкой)Наконец, вы все еще должны portforward.
Надеюсь, это полезно. Задайте вопросы в разделе комментариев ниже.
источник
Вы можете взглянуть на мой ответ на эти вопросы.
Как получить IP-адрес Raspberry Pi для SSH
Еще одна возможность, о которой я не упомянул, это купить домен (это очень дешево) и поиграть с DNS. Я купил домен
aasgard.info
за 0,99 цента и присвоил имяygdrasill.aasgard.info
внутреннему адресу (192.168.1.141
в данном случае). Затем вам нужно установить домен по умолчанию в качестве купленного вами доменного имени и вуаля :)Должен признаться, что, потратив все время на настройку домена, я понял, что использовать файл / etc / hosts или avahi намного проще :)
источник
Вы уверены, что вы запустили SSH-сервер на Raspberry Pi? То, что вы можете пропинговать, не означает, что на нем работает SSH-сервер. Попробуйте
sshd
использовать легкий SSH-сервер.источник
Включить SSH
Начиная с выпуска ноября 2016 года Raspbian по умолчанию отключил SSH-сервер.
Это может быть включено вручную из терминала:
или
Или используйте systemctl для запуска сервиса
источник
Соединение SSH по умолчанию отключено в последней версии Raspberry Pi. RPi, выпущенные в / после ноября 2016 года.
Шаги: 1) Запишите распбианое изображение на SD-карту. 2) создать файл ssh без расширения. 3) скопируйте этот файл ssh на SD-карту, на которой написано ваше изображение. 4) Наконец, вы сможете использовать SSH для вашего малинового пи.
Для получения дополнительной информации посмотрите это видео: https://www.youtube.com/watch?v=zKT6bTESlLs
источник