Configurar e instalar chaves ssh no firmware

Fonte: wirelesspt.net

Esta página descreve os procedimentos a adotar para proceder à criação e instalação de chaves de autenticação no firmware openwrt. Este método foi experimentado nos routers linksys wrt54gs (equipamentos usados na rede mesh).

Após a instalação do firmware openwrt, para se poder aceder ao sistema openwrt, deve-se ligar um cabo ethernet a uma das portas lan do router, e aceder ao sistema através do protocolo ssh ou telnet. O IP de acesso é neste exemplo é 192.168.1.1 e deve ser acedido da seguinte forma, seguido de enter:

Via telnet:

telnet 192.168.1.1

Via ssh:

ssh root@192.168.1.1

A página de entrada é semelhante à página ilustrada na Figura 25. Seguidamente deve-se mudar a password/senha. Por um lado, para evitar o acesso de desconhecidos ao sistema, assim como para permitir a utilização do protocolo SSH, uma vez que para fazer a autenticação, será necessário uma password/senha, usado este protocolo. Para definir a password/senha deve-se executar o seguinte comando e repetir a password/senha escolhida:

passwd XXXXXXX

Para evitar que seja sempre pedida a password/senha foi usado um sistema de chaves de autenticação. Foi criado um par de chaves de autenticação, uma privada e outra pública. A chave privada fica em poder do administrador da rede, enquanto a chave pública é copiada para cada router. Para a criação das chaves, abre-se outra janela de terminal, e executa-se o seguinte comando, seguido de enter (esta acção foi realizada num computador pessoal, com um instalação linux Ubuntu 11.04):

ssh-keygen -t dsa

Exemplo para uma chave rsa de 4096 bits (recomendado)

ssh-keygen -t rsa -b 4096 -f <nome_da_chave_ssh>

Copia-se a chave pública para a ram de cada router utilizando o ip do router em questão (aqui irá ser pedida a password/senha definida anteriormente):

scp /home/pedro/.ssh/id_dsa.pub root@192.168.1.1:/tmp

O próximo conjunto de operações é feito no router, voltando ao terminal ligado através de ssh (recomendado) ou em último caso telnet:

cd /etc/dropbear
cat /tmp/id_*.pub >> authorized_keys chmod 0600 authorized_keys

(cada linha descrita corresponde a comando que deve ser executado com enter).

Assim fica habilitado o acesso directo, ou seja, sempre que o administrador pretenda trabalhar algo dentro do firmware, já não necessita de fazer a autenticação. Caso exista mais do que um administrador poderá ser criada uma nova chave privada, que poderá ser habilitada com os mesmos procedimentos, podendo a administração dos routers ser feita por mais do que uma pessoa.

Este procedimento deve ser replicado para cada batman-adv.

Ver ainda

Autoria

Pedro Rodrigues

Editor

Cmsv