Servidor TFTP no Raspberry Pi para actualizar firmware
…de routers, switchs, telefones VoIP, etc
O pequeno Raspberry Pi foi um dos equipamentos que mais sucesso fez em 2013. Os últimos números apontavam para mais de 2 milhões de equipamentos vendidos…um autêntico caso de sucesso.
No Ppplware são vários os tutoriais que temos disponíveis para o Raspberry Pi e hoje, a pedido de muitos leitores, vamos ensinar como poderão transformar um Raspberry Pi num Servidor TFTP.
Quem trabalha na área das rede sabe certamente que existe um bom número de protocolos que dão suporte aos mais diversos serviços. Uns mais elaborados e robustos, outros mais simplistas…mas todos desempenham normalmente bem o seu papel.
O protocolo/serviço que vos apresentamos hoje é o TFTP (Trivial File Transfer Protocol), um protocolo simples para transferência de ficheiros, semelhante ao popular FTP, mas muito mais simples. Para simplificar a apresentação do TFTP, vamos aprender como instalar um servidor TFTP no Linux. “Let’s GO”!
Como referido, o TFTP é um protocolo de transferência de pequenos ficheiros entre máquinas, que foi criado em 1980. Atualmente, com a popularidade do VoIP, o TFTP tornou-se um protocolo bastante requisitado uma vez que permite de uma forma muitos simples aprovisionar telefones VoIP (ou seja, enviar a configuração automaticamente para os terminais VoIP). Além disso, este é também um protocolo bastante utilizador para actualização de firmware em equipamentos ou utilizado em máquinas diskless.
Este protocolo usa a porta 69, é baseado em UDP e não tem suporte nativo para mecanismos de autenticação e encriptação de dados. Suporte vários modos de transferência de dados como por exemplo o netascii (corresponde ao modo ascii do ftp), octet (corresponde ao binary do ftp).
Como instalar um servidor TFTP no Raspberry PI?
Existem vários pacotes que permitem transformar o Raspberry PI num servidor TFTP. Para este tutorial vamos usar o tftpd-hpa (um servidor TFTP multithread que ocupa cerca de 500 KB).
Instalação
Para instalarem o tftpd-hpa basta que usem o seguinte comando:
sudo apt-get install tftpd-hpa |
Configuração
Para configurarem o tftpd-hpa basta que abram o ficheiro de configuração /etc/default/tftpd-hpa e insiram a seguinte informação:
TFTP_USERNAME="tftp" TFTP_DIRECTORY="/srv/tftp" TFTP_ADDRESS="0.0.0.0:69" TFTP_OPTIONS="--secure" |
Na prática, as configurações acima indicam que o nosso directório tftp encontra-se em /srv/tftp, e que o serviço está a escuta na porta 69.
Por fim basta que criem o directório /srv/tftp e que definam as permissões necessárias
sudo mkdir –p /srv/tftp sudo chmod -R 777 /srv/tftp |
Depois de tudo configurado, basta que reiniciem o serviço usando o comando
sudo service tftpd-hpa restart |
Para verificarem se o serviço está operacional e a escuta na porta 69, basta que executem o comando:
netstat -a | grep tftp |
O output será algo do tipo
Agora basta que nas configurações do equipamento a actualizar (equipamento esse que deve estar na mesma rede do PI), dêem a indicação que o vosso PI é o servidor FTP. Por exemplo, se têm routers/switchs Cisco podem facilmente actualizar o iOS recorrendo a um servidor TFTP
Por hoje ficamos por aqui. O próximo tutorial, como sempre, será surpresa, por isso estejam atentos. Entretanto estamos receptivos a apresentar os vossos tutoriais com este mini PC. Enviem-nos um e-mail com a informação que nós publicamos.
Este artigo tem mais de um ano
O que é que me recomendam para fazer um servidor NAS com um Raspberry? Estava a pensar em Ubuntu Server + Openstack, mas já me disseram que não corre no Raspberry.
Eu no verão andei a brincar para fazer um nas com o Raspberry para aproveitar uns discos externos que tenho aqui em casa, e tens que em conta uma coisa, que para mim foi factor decisivo entre manter ou não o NAS, é que a taxa de transferência de ficheiros entre pcs é muito baixa, pois fica condicionada ao USB 2.0
Tive o prazer de conhecer hoje um dos fundadores da Inmotion.
Só pela simpatia e disponibilidade, recomendaria esta loja.
Comprei um conversor HDMI to VGA para ligar o RPI ao monitor e ainda não consegui descobrir a configuração certa para conseguir ter imagem. Estou a fazer alterações ao ficheiro config.txt no raspbian. Agradeço qq sugestão!