Raspberry pi ssh from windows

Подключение по SSH

Работать с Raspberry Pi можно и без монитора — через SSH соединение. Рассмотрим как подключится к микрокомпьютеру из операционной системы Windows.

Включение SSH

Подготовка Raspberry Pi

Если у вас карта памяти без Raspberry Pi OS , запишите образ самостоятельно.

Поиск IP-адреса Raspberry Pi

Для подключения к Raspberry Pi необходимо знать IP-адрес платы в локальной сети.

При динамической адресации (DHCP) маршрутизатор может менять IP-адрес при каждом включении платы. В таком случае вам каждый раз придётся повторять этот шаг.

Подключение по SSH к консоли Raspberry Pi

Raspberry Pi запущена, IP-адрес известен — можно приступать к подключению по SSH.

Скачать PuTTY с официального сайта разработчиков.

При вводе пароля, вводимые символы не отображаются в консоле. Это нормально для *NIX-систем.

$

У вас всё получилось. Теперь можно управлять Raspberry Pi консольными командами Raspbian .

Подключение Raspberry Pi к Wi-Fi сети

и запомните имя интересующей вас точки доступа.

, где YourSSID — имя точки доступа, psk — пароль, key_mgmt — тип шифрования.

Если подключение выполнено успешно, вы увидите информацию о точке доступа.

Подключение к Raspberry Pi по SSH.

Одним из самых распространенных способов удаленного управления Raspberry Pi бесспорно является протокол SSH. При помощи подключения по SSH мы можем получить доступ к командной строке Raspberry с другого устройства.

Сетевой протокол SSH (Secure Shell) обеспечивает защищенное соединение между клиентом и сервером. При этом протокол шифрует весь трафик и допускает использование разных алгоритмов шифрования. Но не будем сильно погружаться в его функционирование, сегодня речь о другом.

Итак, реализуем следующее:

При этом Raspberry Pi должна быть подключена к сети. И здесь у нас два основных варианта:

Я использую второй, но с точки зрения подключения по SHH это не играет особой роли. Так что двигаемся дальше!

Шаг 1. Включение SSH на Raspberry Pi.

И на этом этапе у нас есть сразу несколько вариантов:

1. Если плата используется без дисплея, у нас нет возможности использовать командную строку или утилиты операционной системы для изменения настроек. В этом случае путь один – поместить файл с именем ssh без расширения в корень раздела “boot” SD-карты, на которой хранится операционная система для Raspberry.

При установке Raspberry Pi OS на пустую карту памяти итоговая разметка карты будет содержать два раздела, первый из которых (меньшего размера) и является загрузочным и имеет метку “boot”. Он то нас и интересует в данном случае.

При загрузке ОС проверяет наличие файла ssh, и если он обнаружен, то система включает SSH и удаляет этот файл. При этом содержимое файла не имеет никакого значения, он может быть и пустым.

С этим случаем разобрались, идем дальше.

2. Включение SSH через интерфейс системы. В данном случае все максимально просто. Заходим в Raspberry Pi Configuration и просто активируем SSH:

3. Использование инструмента raspi-config. Вводим в терминале команду:

Далее следуем по пути Interfacing Options – SSH и включаем протокол:

4. И, наконец, четвертый вариант – использование команды systemctl. Вводим в консоли:

Шаг 2. Определение IP-адреса Raspberry Pi.

Для подключения к плате нам понадобится узнать ее IP-адрес. В этом нам может помочь одна из команд:

Можно использовать любую из них, результат будет такой… Для ifconfig:

Как видите, в обоих случаях получаем IP – 192.168.0.102.

Шаг 3. Изменение имени пользователя и пароля.

По умолчанию в Raspberry Pi OS:

  • имя пользователя – pi
  • пароль – raspberry

Так вот для безопасности рекомендуется изменить стандартный пароль. Для этого , как и для включения SSH, есть несколько способов:

1. Через Raspberry Pi Configuration.

Запускаем Raspberry Pi Configuration и во вкладке System выбираем соответствующий пункт меню:

2. Установка пароля через raspi-config.

Снова вводим команду:

И получаем возможность изменить пароль:

3. И еще один вариант заключается в использовании команды passwd. После ее вызова вводим новый пароль и затем еще раз повторяем его для подтверждения.

Шаг 4. Подключение по SSH.

Читайте также:  Как настроить windows 10 pro для организаций

На стороне Raspberry все готово, теперь осталось подключиться к плате удаленно. И этот шаг нам нужно разбить на два случая:

  • SSH на Linux
  • SSH на Windows

В такой последовательности и начнем…

SSH-клиент для Linux.

Здесь все очень просто, дело все в том, что дистрибутивы Linux включают в себя SSH-клиент по умолчанию, поэтому нам остается только использовать команду ssh. Рассмотрим пример для стандартного имени пользователя (pi) и полученного нами на шаге 2 IP-адреса. Вводим команду:

Далее нам потребуется ввести пароль и после этого мы получим доступ к консоли Raspberry:

И для отключения SSH – команда:

SSH-клиент для Windows 10.

В Windows 10, начиная с обновлений, датированных октябрем 2018 года, также добавлена поддержка SSH без использования сторонних утилит. Используем полностью аналогичный механизм в командной строке Windows (только без sudo) и получаем аналогичный результат:

SSH-клиент для Windows.

Чуть “интереснее” дело обстоит для других версий Windows. Здесь уже без дополнительных инструментов не обойтись. Используем в качестве SSH-клиента утилиту PuTTY, которую можно скачать по этой ссылке. Устанавливаем и запускаем, в поле Host Name вводим IP-адрес Raspberry Pi и нажимаем Open:

При первом запуске возникнет предупреждение, игнорируем его (нажимаем “Да”), после чего видим стандартное окно консоли, которое запрашивает у нас логин и пароль. Вводим верные данные и получаем доступ к командной строке Raspberry Pi:

И на этом на сегодня заканчиваем! Рассмотрели всевозможные варианты и конфигурации оборудования, так что теперь проблем с подключением по SSH возникнуть не должно.

SSH using Windows

Depending on the version of Windows you are using and what software you have already installed, you may need to download an SSH client. The most commonly used client is called PuTTY and can be downloaded from greenend.org.uk.

Look for putty.exe under the heading For Windows on Intel x86 .

1. Add your Raspberry Pi as a host

Start PuTTY. You will see the configuration screen below:

Type the IP address of the Pi into the Host Name field and click the Open button. If nothing happens when you click the Open button, and you eventually see a message saying Network error: Connection timed out , it is likely that you have entered the wrong IP address for the Pi.

If you do not know the IP address, type hostname -I in the Raspberry Pi command line. There are more ways to find your IP address here.

2. Connect

When the connection works you will see the security warning shown below. You can safely ignore it, and click the ‘Yes’ button. You will only see this warning the first time PuTTY connects to a Raspberry Pi that it has not seen before.

You will now see the usual login prompt. Log in with the same username and password you would use on the Pi itself. The default login for Raspberry Pi OS is pi with the password raspberry .

You should now have the Raspberry Pi prompt which will be identical to the one found on the Raspberry Pi itself.

You can type exit to close the PuTTY window.

3. Modification, troubleshooting, and more

Next time you use PuTTY, look for the Saved Sessions section in the bottom half of the configuration screen. If you use this, we recommend switching to the Connection page in the left hand tree, and setting the Seconds between keepalives value to 30 . Then switch back to the Session page in the tree before you click Save . Using this setting allows you to leave a PuTTY window open for long periods of time with no activity, without the Pi timing out and disconnecting you.

A connection might be unsuccessful for various reasons. It is most likely that your device or Raspberry Pi are not connected properly; SSH is disabled; there is a typo in your code; or the IP address or credentials have changed. In the latter cases, you will need to update the host. For instructions on how to update a host, and for further PuTTY documentation, please see the PuTTY docs.

Raspberry pi ssh from windows

Сначала в наcтройках raspi-config надо включить SSH сервер, если он еще не включен. В терминале дайте команду

Читайте также:  Linux изменит права файла

Затем идем Advanced Options — Enter — SSH — Enter. Стрелками выбираем пункт Enable и жмем Enter, затем Ok. Нажимаем Tab, выбираем Finish и выходим из raspi-config. Перезагружаем Raspberry Pi.

Теперь настраиваем Windows. Для подключения по ssh используют программу PuTTY. Заходим на putty.org и скачиваем архив putty.zip с комплектом необходимых программ. Распакуйте архив на диск. У меня получилась папка putty на диске D.
В последних версиях программы (файл .msi) она устанавливается в папку Program Files. Для запуска программы, создания и сохранения файлов в этой папке требуются права администратора. Командную строку также надо запускать от имени администратора. Предварительно на Raspberry Pi создайте в домашней папке скрытый каталог .ssh командой mkdir /home/pi/.ssh (если этого каталога не существует).

Для работы необходимо сгенерировать секретный и public ключи. Запустите puttygen с правами администратора. Для генерации ключей надо непрерывно водить мышкой в окне программы. Для большей безопасности придумайте и впечатайте в поле Key passphrase пароль не менее 8 символов. Можно этого не делать, подключаться будет проще. В поле Confirm passphrase повторите пароль. Сохраните секретный ключ, нажав кнопку Save private key.

Программа запросит имя файла. Укажите имя файла, расширение ppk будет добавлено автоматически. Я сохранил его в папке putty под именем privat_key.ppk. Если вы оставите пустыми поля passphrase, то при сохранении ключа программа выдаст предупреждающее окно:

Вы уверены, что хотите сохранить ключ без защиты паролем? Если нажмете Да, то программа сохранит секретный ключ без парольной защиты.
Сохраните public key в текстовом файле. Щелкните мышкой по кнопке Save public key (Сохранить публичный ключ). Введите имя файла с расширением txt. Я сохранил его под именем win_key.txt в папке putty.
Далее понадобится знать IP-адрес Raspberry Pi в локальной сети. На Raspberry Pi откройте терминал и дайте команду hostname -I (прописная i) или введите команду

У меня Raspberry Pi подключен по Wi-Fi, поэтому IP-адрес указан в секции wlan0 — это адрес 192.168.1.32. Если сеть подключена кабелем, то смотрите адрес в секции eth0.
Запустите командную строку Windows от имени администратора.

По умолчанию это каталог C:\Windows\system32. Перейдите в каталог с программой PuTTY (у меня это диск D и в нем каталог putty). Проверьте доступность хоста командой ping. Затем командой pscp скопируйте win_key.txt на Raspberry Pi в каталог .ssh в создаваемый файл authorized_keys.

pscp win_key.txt pi@ :/home/pi/.ssh/authorized_keys

Если вы получите ошибку «команда не найдена» или «файл, каталог не существует», то укажите полный путь к команде или файлу, например:
C:\Putty\pscp.exe C:\Putty\win_key.txt pi@ :/home/pi/.ssh/authorized_keys

Если вы подключаетесь в первый раз, то каталога .ssh не будет. Создайте его. Находясь в домашнем каталоге /home/pi, дайте команду mkdir .ssh. Точка в имени означает. что каталог скрытый.

Если PuTTY установлена в папке Program Files, то запустите командную строку от имени администратора и перейдите в эту папку, как показано на скриншоте.

При этом придется ввести пароль для логина pi. По умолчанию это raspberry, если вы его, конечно, не поменяли.
Если при этом выдается запрос Store key in cache? (Хранить ключ в кэше?), то нажмите y, для однократного подключения — нажмите n, вообще хотите отказаться — нажмите Enter.

Можно не изощряться так, а просто скопировать win_key.txt на флешку, подключить ее к Raspberry Pi (флешка подмонтируется в каталог /media) и скопировать файл в каталог .ssh, а затем переименовать его в authorized_keys. Удобно это делать в Midnight Commander (аналог Total Commander в Windows). Установить можно командой sudo apt-get install mc.

Каталог .ssh скрытый, в менеджере файлов щелкните правой кнопкой мыши по полю и в меню поставьте галку Показывать скрытые файлы.

У меня authorized_keys уже существует, в нем записан публичный ключ для компьютера Linux Mint. Поэтому я скопировал win_key.txt в другой файл win_key. Теперь мне нужно добавить этот ключ win_key в файл authorized_keys. На Raspberry Pi в терминале дадим команду

sudo nano /home/pi/.ssh/authorized_keys

В редакторе nano откроется для редактирования файл authorized_keys. Пропустите одну строку и поставьте курсор в начало следующей строки. Нажмите F5 — эта функция добавляет к существующему файлу информацию из другого файла. Внизу окна ввел полный путь к файлу win_key.txt. Нажимаем Enter. Добавляется строка с ключом для компьютера Windows. Сохраняем файл (Ctrl+O) и выходим из редактора (Ctrl+X). Таким образом вы можете добавить в authorized_keys несколько ключей для подключения к Raspberry Pi c разных компьютеров вашей локальной сети.

Читайте также:  Physxloader dll как исправить эту ошибку windows 10

Идем дальше. На компьютере Windows в программе Putty надо создать и сохранить сессию для подключения к Raspberry Pi. Запустите Putty от имени администратора . В левом окне Category щелкните Connection -> SSH -> Auth. В окне справа нажмите кнопку Browse и выберите путь к вашему секретному ключу или впечатайте в поле полный путь к вашему ключу.

В окне Category щелкаем по Session. В поле Host name укажите IP адрес вашего Raspberry Pi. Придумайте название Windows-сессии и укажите его в поле Saved Sessions. Нажмите кнопку Save.

В окне ниже к названию Default Settings должна добавиться строка с названием вашей сессии. Чтобы подключиться к Raspberry Pi, достаточно в окне выбрать имя сессии и нажать кнопку Load.

Должны загрузиться ваши настройки. Нажимаем Open, чтобы начать подключение. Выводится запрос login as, вводим pi. Если при сохранении секретного ключа вы вводили пароль, то для разблокировки потребуется ввести этот пароль. При этом на экран ничего не выводится.

Если пароль не указывали, то ничего не запрашивается, просто происходит подключение. Только потребуется ввести пароль для логина pi.

Соединение по SSH установлено. Можно с компьютера Windows вводить команды так, как будто вы находитесь за клавиатурой Raspberry Pi.
Для выхода из сессии наберите команду exit.

При работе системы Windows образуется много временных файлов. Они тормозят работу системы и приводят к сбоям в работе программ. У некоторых пользователей на диске накапливаются целые гигабайты временных файлов. Если после установки и настройки Putty вы никак не можете подключиться к Raspberry Pi, то установите и запустите программу Ccleaner . Удалите временные файлы и почистите реестр. После этого попробуйте снова подключиться по SSH к Raspberry Pi.

Если подключите новый компьютер, переустановите систему или изменится IP адрес компьютера в локальной сети, то при подключении по ssh к Raspberry Pi будет выдана ошибка.

На скриншоте показана ситуация после переустановки Linux на одном из компьютеров. Из Linux подключаться к Raspberry Pi проще и удобнее, системы-то однородные.
Сообщается, что компьютер не найден в списке известных хостов и приводится команда для исправления ситуации (выделена белым фоном). Выделите мышкой (ЛКМ) эту команду и нажмите колесико или среднюю кнопку мыши. Команда будет вставлена в командную строку терминала, останется только нажать Enter. Выдается сообщение о том, что список хостов обновлен. Снова пробуем подключиться по ssh. На запрос о подключении введите yes. Система запросит пароль на подключение к Raspberry Pi. Введите пароль пользователя и соединение будет установлено.

IP адрес, выдаваемый вашему устройству, может меняться. Чтобы не менять каждый раз настройки Putty, надо закрепить за Raspberry Pi конкретный IP адрес. Как это сделать, описано в статье Как в настройках роутера присвоить статический IP адрес устройству по MAC адресу ? Для настройки понадобится MAC адрес. Как его узнать, описано в статье Как узнать и изменить MAC адрес .
В Linux узнать MAC адрес проще. В терминале дайте команду ifconfig. В сообщении для вашего сетевого устройства найдите параметр HWaddr (HardWare address, т.е. адрес «железа»). Это и будет MAC адрес.

Если вы подключитесь к Raspberry Pi с другого компьютера вашей сети, с которого ранее не подключались, то в Windows будет выдано окно

щелкните Да, если хотите постоянно подключаться, Нет — если хотите подключиться только один раз.

Если вы хотите подключаться к рабочему столу Raspberry Pi, используя SSH, то читайте статью Как подключиться к VNC серверу Raspberry Pi через SSH туннель .

Можно подключиться к Raspberry Pi, используя имя домена, если настроен доступ через интернет. Например, когда Raspberry Pi установлен на даче. В строке Host Name вбейте название домена. Остальные настройки аналогичны. Не забудьте добавить public key в файл authorized_keys на Raspberry Pi. В роутере при настройке port forwarding (проброс портов) добавьте для Raspberry Pi порт 22 (SSH).

При подключении выдается окно:

Настройка доступа через интернет описана в статье Как получить доступ по интернету к датчикам в квартире .
В Linux всё намного проще. Пример сессии в Linux Mint:

Оцените статью