DEV Community

Cover image for Banana Pi — Como Habilitar o SSH no Raspbian
Henrique Otogami
Henrique Otogami

Posted on

Banana Pi — Como Habilitar o SSH no Raspbian

Introdução

Neste artigo vou mostrar como habilitar o SSH na Banana Pi, rodando o Raspbian.

Versão do Raspbian: 4.4.55-BPI-M22-Kernel — Banana Pi Zero M2

O que é o SSH ?

O SSH, ou Secure Shell, é um protocolo de rede que permite a comunicação e administração remota de computadores de forma segura, utilizando criptografia para proteger os dados.

Ele permite fazer login, executar comandos e transferir arquivos em servidores remotos através de uma conexão segura, substituindo métodos menos seguros como o Telnet.

Opção 1 — raspi-config

O raspi-config é um utilitário de configuração de linha de comando pré-instalado no Raspberry Pi OS que permite ajustar facilmente várias configurações do sistema.

Ele oferece uma interface de menu para modificar definições comuns como a localidade, o nome do host, a resolução de tela, o comportamento de inicialização (como iniciar na área de trabalho gráfica) e habilitar/desabilitar serviços como SSH ou VNC.

Para realizar essa configuração, é necessário que a Banana Pi esteja conectada a um monitor externo via HDMI.

  1. No Terminal do Raspbian, insira o seguinte comando: sudo raspi-config
  2. A tela “Raspberry Pi Software Configuration Tool (raspi-config)” será aberta no Terminal
  3. Navegue até “Interfacing Options” e selecione Enter
  4. A tela de configuração dos periféricos será aberta
  5. Navegue até “SSH” e selecione Enter
  6. A tela de confirmação de habilitação será aberta
  7. Navegue até “Yes” e selecione Enter
  8. A tela de confirmação vai mostrar que o SSH foi habilitado

raspi-config - Menu Inicial

raspi-config - Interfacing Options

raspi-config - Habilitar SSH

raspi-config - Confirmação de Habilitação

raspi-config - Resultado da Habilitação

Opção 2 — systemctl

O systemctl é um comando de linha de comando no Linux usado para gerenciar o systemd, que é o sistema de inicialização e gerenciador de serviços padrão em muitas distribuições modernas.

Ele permite iniciar, parar, reiniciar, habilitar ou desabilitar serviços, verificar seus status, e gerenciar “unidades”, que podem ser serviços, dispositivos ou pontos de montagem.

Para realizar essa configuração, é necessário que a Banana Pi esteja conectada a um monitor externo via HDMI.

No Terminal do Raspbian, insira os seguintes comandos:

# Verificar status do SSH
sudo systemctl status ssh

# Habilitar o serviço SSH
sudo systemctl enable ssh

# Iniciar o serviço SSH
sudo systemctl start ssh

# Verificar se está rodando
sudo systemctl status ssh
Enter fullscreen mode Exit fullscreen mode

systemctl - Habilitando SSH

Opção 3 — Habilitação Manual via Arquivo

Os arquivos SSH são usados para gerenciar autenticação e permissões, sendo os mais comuns as chaves SSH (pares de chave pública e privada) e os arquivos de configuração SSH.

Criar arquivo ssh na partição boot:

# No diretório /boot (partição boot do cartão SD)
sudo touch /boot/ssh
Enter fullscreen mode Exit fullscreen mode

Ou editar configuração SSH:

# Editar arquivo de configuração SSH
sudo nano /etc/ssh/sshd_config
# Verificar se a linha está assim:
# Port 22
# PermitRootLogin no (recomendado)
# PasswordAuthentication yes
Enter fullscreen mode Exit fullscreen mode

Opção 4 — Usando arquivo ssh.txt

Se a inicialização é a primeira vez, é possível criar um arquivo ssh (sem extensão) na partição boot do cartão SD antes de ligar o dispositivo.

  1. Descobrir o IP da Banana Pi
# Na Banana Pi
ifconfig

# Ou mais específico para WiFi
ifconfig wlan0
Enter fullscreen mode Exit fullscreen mode
  1. Testar conexão SSH
# Em um computador secundário:
ssh pi@banana.local

# Ou usando IP específico (exemplo baseado nos logs do projeto)
ssh pi@192.168.100.27
Enter fullscreen mode Exit fullscreen mode
  1. Verificar se SSH está rodando
# Na Banana Pi
sudo netstat -tlnp | grep :22

# Ou
sudo ss -tlnp | grep :22
Enter fullscreen mode Exit fullscreen mode

Configurações de Segurança

Pensando em aumentar a segurança, é possível alterar a porta padrão da comunicação via SSH. Isso é uma configuração opcional, considerando que bots sabem da existência dessa porta padrão e podem realizar ataques automatizados.

Alterar porta SSH padrão:

sudo nano /etc/ssh/sshd_config
# Alterar a linha:
# Port 22
# Para:
# Port 2222
# Reiniciar SSH
sudo systemctl restart ssh
Enter fullscreen mode Exit fullscreen mode

Desabilitar login root via SSH:

sudo nano /etc/ssh/sshd_config
# Certificar que está:
# PermitRootLogin no
Enter fullscreen mode Exit fullscreen mode

Problemas comuns

Problema 01: SSH não conecta

  1. Verificar se SSH está rodando:
sudo systemctl status ssh
Enter fullscreen mode Exit fullscreen mode
  1. Verificar firewall:
sudo ufw status
sudo ufw allow ssh
Enter fullscreen mode Exit fullscreen mode
  1. Verificar conectividade de rede:
ping google.com
Enter fullscreen mode Exit fullscreen mode

Problema 02: Conexão recusada

  1. Verificar se a porta 22 está aberta:
sudo netstat -tlnp | grep :22
Enter fullscreen mode Exit fullscreen mode
  1. Verificar logs SSH:
sudo journalctl -u ssh -f
Enter fullscreen mode Exit fullscreen mode

Problema 03: Autenticação falha

  1. Resetar senha do usuário pi:
sudo passwd pi
Enter fullscreen mode Exit fullscreen mode
  1. Verificar configuração de autenticação:
Sudo nano /etc/ssh/sshd_config
# Certificar que PasswordAuthentication yes está ativo
Enter fullscreen mode Exit fullscreen mode

Comandos Úteis

Nos projetos demonstrados nos meus artigos, os comandos mais utilizados são os seguintes:

# Conectar via SSH
ssh pi@banana.local

# Enviar arquivos via SCP (como no projeto)
scp /caminho/local/arquivo.py pi@bananapi-zero.local:

# Executar comandos remotamente
ssh pi@banana.local 'comando_aqui'
Enter fullscreen mode Exit fullscreen mode

Notas Importantes

  1. Segurança: Sempre altere a senha padrão do usuário pi
  2. Rede: Certifique-se de que a Banana Pi está na mesma rede
  3. Firewall: Alguns roteadores podem bloquear conexões SSH
  4. Backup: Faça backup das configurações antes de alterar

https://ko-fi.com/henriqueotogami

Ficou alguma dúvida ou tem sugestões?
Comente aqui embaixo ou me chame em alguma das minhas redes.
Valeu! ✌🏻

Top comments (0)