Гид по технологиям

Как включить и безопасно использовать SSH на Raspberry Pi

7 min read Raspberry Pi Обновлено 26 Dec 2025
Включение и защита SSH на Raspberry Pi
Включение и защита SSH на Raspberry Pi

Raspberry Pi с подключением по SSH, вид платы

Краткие ссылки

  • Что такое SSH?
  • Перед включением SSH: меры безопасности
  • Как узнать IP-адрес или имя хоста Raspberry Pi
  • Вариант 1: включение SSH через рабочий стол
  • Вариант 2: включение SSH через терминал
  • Отключение входа root по SSH
  • Подключение к Raspberry Pi с другого компьютера
  • Дополнительные рекомендации по безопасности и отладке
  • Чек-листы, критерии приёмки и шпаргалка команд

Что такое SSH?

SSH (Secure Shell) — протокол для зашифрованного удалённого входа и выполнения команд на другом устройстве. Одно предложение: SSH защищает передачу логинов и паролей от перехвата в сети.

Польза: шифрование предотвращает перехват учётных данных и данных сессии, в отличие от старых протоколов, передающих всё в открытом виде.

Понятие в одно предложение: ключ — это пара приватного и публичного файлов, которые заменяют пароль для входа.

Перед включением SSH: меры безопасности

Важно: включение SSH открывает сервис, который можно атаковать. Прежде чем включать SSH, выполните минимальные меры безопасности:

  • Установите надёжный пароль для пользователя pi или другого учётного записа.
  • Обновите систему: sudo apt update && sudo apt upgrade -y.
  • Запишите IP-адрес или имя хоста Pi (см. ниже).
  • Планируйте переход на аутентификацию по ключам (рекомендуется для постоянного доступа).

Если вы ещё не меняли пароль, выполните в терминале:

passwd

Вас попросят ввести текущий пароль, затем новый.

Как узнать IP-адрес или имя хоста Raspberry Pi

Откройте терминал на самой плате и выполните:

hostname -i

Команда выведет IP-адрес(а). Если Raspberry Pi подключён и по Wi‑Fi, и по Ethernet, будет несколько адресов. Чаще всего локальный адрес начинается с 192.168. или 10.. Запомните нужный адрес для удалённого подключения.

Совет: можно также узнать имя хоста командой:

hostname

и подключаться по DNS-имени вида hostname.local в локальной сети с поддержкой mDNS.

Вариант 1: включение SSH через рабочий стол

Этот способ удобен, если у вас есть подключённый монитор и полноценный GUI. На рабочем столе Raspberry Pi:

  1. Нажмите меню Raspberry (в левом верхнем углу).
  2. Выберите “Preferences” → “Raspberry Pi Configuration”.
  3. Перейдите на вкладку “Interfaces”.
  4. В строке SSH выберите “Enable” и нажмите “OK”.

Окно конфигурации Raspberry Pi

Вариант 2: включение SSH через терминал

Если вы предпочитаете командную строку или у вас нет GUI, используйте raspi-config:

sudo raspi-config

В появившемся текстовом меню используйте стрелки и выберите “Interfacing Options” → “P2 SSH”. Подтвердите включение, когда будет предложено.

Начальный экран raspi-config в терминале

Выберите “P2 SSH” и подтвердите включение.

Экран настройки интерфейсов в raspi-config

После включения SSH raspi-config обычно выводит подтверждение — выберите “Finish”.

Отключение входа root по SSH

По умолчанию вход под root через SSH может быть запрещён или ограничен. Для дополнительной защиты явно запретите root-вход.

Откройте конфигурационный файл SSHd:

sudo nano /etc/ssh/sshd_config

Найдите строку наподобие:

#PermitRootLogin prohibit-password

или

#PermitRootLogin yes

Измените/раскомментируйте её так:

PermitRootLogin no

Сохраните (Ctrl+X → Y → Enter). Перезапустите SSH-сервис:

sudo systemctl restart ssh

или старым способом:

sudo /etc/init.d/ssh restart

Важно: после отключения root вы всё ещё сможете выполнять привилегированные команды через sudo от обычного пользователя.

Настройка аутентификации по ключам (рекомендуется)

Аутентификация по ключам гораздо безопаснее паролей. Краткий порядок действий:

  1. На вашей рабочей машине (не на Pi) сгенерируйте ключ:
ssh-keygen -t ed25519 -C "pi@home"

При желании укажите passphrase для приватного ключа.

  1. Скопируйте публичный ключ на Raspberry Pi (замените [адрес] на IP или имя хоста):
ssh-copy-id -i ~/.ssh/id_ed25519.pub pi@[адрес]

Если ssh-copy-id недоступен, можно вручную добавить содержимое id_*.pub в файл ~/.ssh/authorized_keys на Pi.

  1. Проверьте вход по ключу:
ssh -i ~/.ssh/id_ed25519 pi@[адрес]
  1. После успешной проверки можно отключить вход по паролям (опционально, но безопаснее):

В /etc/ssh/sshd_config установите:

PasswordAuthentication no
ChallengeResponseAuthentication no

Перезапустите сервис ssh.

Примечание: убедитесь, что у вас есть работающий ключ и доступ в случае проблем — иначе вы заблокируете себя.

Отключение стандартного пользователя и смена имени пользователя

Если вы используете стандартного пользователя pi, рассмотрите смену его имени или создание новой учётной записи с меньшими правами и переносом sudo. Это снижает риск атак, ориентированных на пользователя pi.

Пример создания нового пользователя и добавления в sudo:

sudo adduser newuser
sudo usermod -aG sudo newuser

Затем перенесите нужные файлы и настройки и удалите или деактивируйте пользователя pi.

Подключение к Raspberry Pi с другого компьютера

С локальной машины (Linux, macOS, WSL) используйте:

ssh pi@[адрес]

Пример:

ssh pi@192.168.0.200

При первом подключении SSH спросит, доверяете ли вы ключу хоста — введите yes или y. Затем введите пароль или используйте ключ.

Если вы подключаетесь с Windows, используйте встроенный OpenSSH (PowerShell) или клиент PuTTY.

Дополнительные меры безопасности

Рассмотрите эти шаги для повышения стойкости SSH-сервера:

  • Измените стандартный порт с 22 на нестандартный (в sshd_config: Port 2222). Это не повышает криптостойкость, но снижает шум автоматических сканеров.
  • Ограничьте вход по IP в файрволе (ufw):
sudo ufw allow from 192.168.0.0/24 to any port 22
  • Установите fail2ban для автоматической блокировки повторных неудачных попыток входа.
  • Включите двухфакторную аутентификацию (например, с помощью Google Authenticator PAM), если требуется высокая безопасность.
  • Регулярно обновляйте систему и пакеты безопасности.

Туннелирование, пересылка портов и SFTP

SSH — не только интерактивный терминал. Вы можете:

  • Пробрасывать локальные или удалённые порты (ssh -L / -R).
  • Монтировать удалённую файловую систему через sshfs.
  • Переносить файлы через scp, sftp или rsync по ssh.

Пример копирования файла на Pi:

scp localfile.txt pi@[адрес]:~/

Отладка проблем с подключением

Если не удаётся подключиться:

  • Проверьте, что SSH-сервис запущен: systemctl status ssh
  • Убедитесь в правильности IP-адреса: hostname -i
  • Проверьте локальный файрволл (ufw status).
  • Посмотрите логи на Pi для ошибок: sudo journalctl -u ssh -e
  • Если вы изменяли порт — укажите его при подключении: ssh -p 2222 pi@[адрес]

Чек-листы по ролям

Администратор:

  • Сменить пароль по умолчанию.
  • Настроить ключи и отключить PasswordAuthentication.
  • Включить fail2ban и правила ufw.
  • Регулярно проверять логи и обновления.

Новичок / домашний пользователь:

  • Включить SSH через Raspberry Pi Configuration или raspi-config.
  • Сменить пароль.
  • Подключаться по ключу после изучения ssh-keygen.

Power user / разработчик:

  • Настроить agent forwarding, ssh config (~/.ssh/config) для удобства.
  • Использовать sshfs и rsync для бекапов.

Критерии приёмки

  1. SSH-сервис активен и принимает подключение: sudo systemctl status ssh → active.
  2. Удалённое подключение работает с корректным пользователем и/или ключом.
  3. Root-вход по SSH отключён (PermitRootLogin no).
  4. При отключении пароля вход по ключу сохраняется и проверен.
  5. Файрволл разрешает доступ только с необходимых адресов/сегментов сети.

Тестовые случаи и приёмка

  • TC1: Подключение по паролю с корректными учётными: PASS/FAIL.
  • TC2: Подключение по ключу: PASS/FAIL.
  • TC3: Попытка входа под root должна быть отклонена: PASS/FAIL.
  • TC4: Проверка перезапуска ssh и сохранения конфигурации: PASS/FAIL.

Шпаргалка команд

  • Включить raspi-config:
sudo raspi-config
  • Узнать IP:
hostname -i
  • Перезапустить SSH:
sudo systemctl restart ssh
  • Проверить статус SSH:
sudo systemctl status ssh
  • Сгенерировать ключ:
ssh-keygen -t ed25519
  • Копировать ключ на удалённый хост:
ssh-copy-id pi@[адрес]

Короткое объявление для команды (100–200 слов)

Начиная с сегодняшнего дня вы можете использовать SSH для безопасного удалённого доступа к Raspberry Pi. Включите SSH через Raspberry Pi Configuration или raspi-config, смените стандартный пароль и настройте аутентификацию по ключам для долговременного доступа. Обязательно отключите вход под root и рассмотрите настройки fail2ban и ufw для защиты от брутфорс‑атак. Следуйте чек-листам в этом руководстве перед открытием доступа из внешней сети.

1‑строчный глоссарий

SSH: защищённый протокол удалённого входа; SSH‑ключ: пара приватного и публичного файлов для аутентификации без пароля; raspi-config: текстовый инструмент настройки Raspberry Pi.

Итог

SSH даёт удобный и зашифрованный доступ к вашему Raspberry Pi. Включить его можно через GUI или raspi-config. Обязательны смена пароля и базовая жёсткая конфигурация: отключение root, переход на ключи и настройка файрвола. Перед открытием доступа извне выполните тестовые сценарии и создайте резервные способы доступа.

Важно: перед отключением паролей убедитесь, что ключи работают, иначе вы можете потерять доступ.

Примечание: если вы планируете доступ из интернета, подумайте о VPN или других безопасных каналах доступа вместо прямого проброса порта SSH.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Загрузка и удаление контактов в Facebook
Социальные сети

Загрузка и удаление контактов в Facebook

Как сделать ссылку на другой лист в Excel
Excel

Как сделать ссылку на другой лист в Excel

Как найти серийный номер устройства
Устройства

Как найти серийный номер устройства

Резервирование Downloads, Music и Videos в OneDrive
Инструкции

Резервирование Downloads, Music и Videos в OneDrive

Конвертация MOV в MP4 на iPhone
How-to

Конвертация MOV в MP4 на iPhone

Как увидеть и удалить данные Google
Конфиденциальность

Как увидеть и удалить данные Google