Aceda ao seu Raspberry PI a partir de qualquer lugar
Segundo dados divulgados recentemente no site raspberrypi.org, 1,75 milhões é o numero de mini Raspberry Pi vendidos em todo o mundo. Este é um numero muito interessante que traduz o sucesso deste projecto. Este mini equipamento, do tamanho de um cartão de crédito é capaz de reproduzir vídeo com qualidade Blu-ray e renderizar gráficos 3D, entre outras tarefas.
No seguimento da nossa parceria, hoje vamos ensinar como aceder ao seu Raspberry PI a partir de qualquer ponto da Internet.
Todos os utilizadores que têm um Raspberry Pi certamente já tiveram a necessidade de aceder ao equipamento fora da sua rede local (a rede lá de casa ou do trabalho)… ou porque o PI aloja um conjunto de sites, ou porque tem um serviço de FTP ou SSH, ou porque tem uma camara de vigilância..tudo poderá ser motivo para que este esteja alcançável a partir do exterior.
Hoje ensinamos como podemos facilmente configurar a nossa infra-estrutura e PI para que este esteja disponível a partir do exterior. Para isso devem seguir os seguintes passos:
Passo 1) Criar um conta no serviço no-ip
Com o serviço no-ip o utilizador passa a identificar o PI por um nome, a partir de qualquer ligar. Tal configuração permite-lhe que use sempre o mesmo nome para identificar o PI, independentemente se o endereço IP publico (que identifica a nossa ligação na Internet) mudou. O serviço no-ip disponibiliza agentes, que são instalados do lado do cliente, que vão informando e actualizando a informação relativamente ao endereço IP público.
Mas como funciona este serviço?
Vamos considerar que o seu PI tem o endereço privado 192.168.1.10 estando assim só alcançável na rede privada. No entanto, como gateway ele tem associado o endereço privado do router (ex. 192.168.1.254) que o permite “sair” para a Internet através do endereço publico que está também associado ao router. É este endereço publico que vamos usar para alcançar o nosso equipamento a partir do exterior.
No entanto, como esse endereço publico pode mudar de X em X tempo, dependendo do operador, passamos a considerar um nome que estará relacionado com o endereço publico (este serviço de associação do nome ao endereço, neste caso, será mantido pelo no-ip.org). Do lado da rede interna é instalado um pequeno software (designado de agente) que informa o serviço no-ip.org sempre que hajam alterações ao nível do endereço público. Para saber mais sobre endereços públicos e privados aconselharmos a leres este post:
Para criar um mapeamento (IP vs nome) basta criar uma conta gratuita no serviço no-ip e criar um registo do tipo A (que permite associar um endereço IP a um nome). O serviço detecta automaticamente qual o endereço público da nossa ligação, colocando essa informação no campo IP Address e o utilizador só tem de escolher um Hostname (ex. pplwarepi.no-ip.org)
Passo 2 – Configuração no Router
Depois da configuração no serviço no-IP, é necessário que o nosso router redireccione os pedidos do exterior para o nosso PI. Para este cenário poderíamos simplesmente configurar a opção Atribuir o endereço IP público de uma ligação a um dispositivo ou então recorrer ao mecanismo de Port Forwarding (redireccionamento de portas).
Para este exemplo usamos o mecanismo de Port Forwarding, redireccionando todos os pedidos que chegam ao router para a porta 80 (HTTP) para o nosso raspberrypi (o router pode apresentar o endereço MAC do dispositivo ou o nome…caso o utilizador não saiba qual é, basta que indique o endereço IP).
Esta configuração é realizada em Ferramentas –> Partilha de jogos e aplicações e em seguida escolhemos Atribuir jogo ou aplicação a um dispositivo de rede local.
Em seguida no campo Jogo ou Aplicação devem escolher HTTP Server (World Wide Web) e no Dispositivo devem indicar qual o máquina local que tem esse serviço a correr. Para finalizar carreguem em Adicionar.
Passo 3 – Configuração do agente
Como referido, para manter a informação sobre o endereço público sempre actualizada no serviço no-ip é necessário instalar um agente do lado do pi que vá enviando essa informação. Para instalar o agente no PI basta seguir os seguintes passos:
3.1) Obter o agente
wget http://www.no-ip.com/client/linux/noip-duc-linux.tar.gz |
3.2) Descompactar
tar xzf noip-duc-linux.tar.gz |
3.3) Entrar no directório, compilar e instalar
cd noip-2.1.9-1 make make install |
Para executarem o agente basta usar o comando
sudo noip2 |
Depois de executado, serão solicitadas algumas informações, entre as coisas os dados da conta do serviço no-ip.org.
Depois de realizados os passos anteriores com sucesso…está feito! Como viram toda a configuração é simples e certamente que será útil para os mais diversos cenários.
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
Isto está correcto?
“basta criar uma conta gratuita no serviço no-ip”
O serviços não é o noip.com? Em nenhum sítio encontro o no-ip.org.
Se sempre se confirmar que o serviço é o do noip.com tenho uma questão: apesar do registo ser gratuito ele será sempre gratuito ou ao fim de certo tempo passará a ser pago e o nosso endereço público deixa de o ser, excepto se passarmos a pagá-lo.
Obrigado e peço desculpa se tiver cometido algum erro.
Cumprimentos.
O serviço é este: http://www.noip.com/ (normalmente chamado no-ip.org, por ser um dos dominimos que disponibiliza)
Não é necessário usar o programa do no ip, basta adicionar o link + password + username nas configurações do router –> DNS dinâmico.
exactamente. é assim que eu tenho, acho que até se torna mais simples 🙂
é menos um programa no raspberry pi
Olá!Por favor amigo se possível preciso de seu auxílio. No meu router já configurei no DDNS conta préviamente criada no site noip.org. conta salva no router com sucesso.
Agora preciso abrir a porta 80 apontando a solicitaçâo para o ip do raspberry?
Sou do Brasil.
Desde já muito obrigado.
Ja utilizo há bastantes anos e sempre foi gratuito e funcionou bem.
boas…
O pedro tem razão…noip.org, porque o noip.com é pago…
No noip.com ao criarem uma conta FREE vão ficar com dominio…noip.org..
Para quando a part2 do servidor VNC? queria acabar esse projecto.
Outra coisa, no outro dia vi que “receberam”(o pplware) publicidade da pagina de facebook do proprio raspberry pi, muitos parabes 😀
Boas Paulo, ai sim? tens um screen? Eu estive a conversa com um dos responsáveis..
Aqui tens: http://gyazo.com/faed9e7435b7da5e9e8dab54c1b64780
Se quisers o print de outra forma é so avisar.
pplware a ficar mundialmente famoso!
Parabéns!!! 🙂
Bom dia,
Sera que me conseguem ajudar? Onde posso adquirir o Raspberry PI??
Obrigado.
Manda-me um mail para ppinto AT pplware.com
http://inmotion.pt/store/
No inicio do artigo …
Os announces de ip podem ser feitos pelo router (Ferramentas > DNS dinâmico ). Eu tive vários problemas com o client, que mesmo fazendo o teste e que dizia que estava tudo bem, quando o ip mudava, ao fim de alguns dias, deixava de redireccionar.
A unica desvantagem que vejo é se mudarem com frequencia o RPi de router em router. Mas ainda assim precisam de configurar as portas em cada novo router pra continuar a redireccionar pra serviços que tenham no RPi.
Para evitar mexer nas portas do router, uma configuração utilizando o serviço de VPN Hamachi do Logmein é mais prática e segura..
Tenho assim configurado e acedo tanto por VNC a um desktop virtual como à linha de comandos, conforme o que seja necessário.
E depois pode-se usar o Putty para SSH remotamente?
Claro, e se tiveres um Android basta instalares a app “Terminal Emulator” e em qualquer sitio com ligação à net consegues aceder ao RPI através de SSH.
Eu já tinha isto no meu RPI e às vezes até faço um simples ping para saber se o gajo ainda está vivo. 😀
Bom Dia,
Volto a perguntar neste artigo (já pus a questão no forum), usar o raspberry pi como descodificador TDT é possível? Seria interessante 😉
Já tinha pensado nisso, mas também não te sei responder …
Ainda melhor era usar o Raspberry Pi como uma Box de um dos serviços de TV 😛
Sem mais nada, não. O descodificador TDT tem um módulo de sintonia de TV. O Raspi não.
Bom dia,
Seria possível partilhar as configurações do router para o equipamento da zon? não estou a conseguir.
-Serviços.
-Firewall.
-Encaminhamento de Portas.
-Nova entrada.
-Anfitrião local >> Definido pelo utilizador
-Tipo de objeto de rede >> Endereço IP >> Introduzir aqui o IP do Raspberry Pi.
-Protocolo >> Definido pelo utilizador.
-Novas Portas de servidor.
-Protocolo >> TCP
-Portas de origem >> Qualquer
-Portas de destino >> Único – 80
Ok, em todas as janelas para gravar.
Apaxe obrigado pela resposta, apenas tive oportunidade de testar agora e não estou a conseguir… coloquei as opções que referis-te e nada… mais tarde alterei a Firewall para segurança mínima e nada… alterei também o Anfitrião DMZ para o IP do pi e também nada… No pi desactivei o iptables e não tenho nada nos logs. Será que me falta alguma coisa?
Bom dia.
Bom tutorial como sempre.
Mas visto que o modem tem o cliente de no-ip, este podia correr no router. Para aceder ao Pi bastaria redireccionar as portas que se queria…
concordo, no router fica melhor, ate pq assim e menos um serviço no rasp, o que e melhor para o seu desempenho 😉
não concordam?
Sem duvida, concordo pois 🙂
Gostei do tutorial, porém há algo que não compreendo, caso queiramos aceder por SSH ao raspi temos de fazer igualmente o port forwarding dos portos do SSH ? e caso queiramos aceder a um serviço VNC ?
Para aceder por SSH é necessário configurar o port forwarding, caso contrário o router não “sabe” a quem reencaminhar o serviço.
Depois de algumas horas de volta disto lá consegui aceder ao Raspberry, acedi (através de outro computador) a uma VPN para ter um IP publico diferente do IP (publico) do Raspberry.
No router que possuo tenho uma firmware OpenWRT instalada, abri a porta 80 mas sem sucesso, assim que abri a porta 22 já consegui ter acesso ao Raspberry.
O problema poderia ser de não ter a porta 80 aberta no Raspberry?
Cumps
Esqueci-me de mencionar, não é necessário inserir as credenciais/informação (DNS no-ip do Raspberry) no serviço DNS (Dynamic DNS) no router.
Cumps
Recomendo:
Não abram muitas portas;
Para limitar o numero de tentativas de login por ssh utilizem fail2ban ou similar;
Utilizem técnicas de tunneling com o putty;
Como é que conseguem fazer o port forwarding do serviço de FTP no router do MEO?
Não consigo fazer, diz-me sempre que a porta já está a ser usada e acedendo por telnet consigo ver que está lá mesmo mapeada, mas não consigo tirar para meter a minha configuração.
Provavelmente já está a ser utilizada porque os routers da meo já têm ftp (os que costumam ter a porta usb) e então já está a ser utilizado para esse efeito mas basta alterar ou desativar essa funcionalidade.
Offtopic
A publicação da confuguração para camera de vigilância com o Raspberry está para breve?
bem visto, um tutorial a que era bem vindo 😛
Eu queria fazer tipo uma camera de video-vigilância 🙂 e que conseguisse ver em directo através de alguma pagina da net ou algum server a camera do pi 🙂
Este tutorial também dá para uma máquina ubuntu certo? Já que o raspberry é baseado em linux.
Viva,
segui à justa todo o tutorial, tenho o noip2 a correr na raspberry, mas quando tento aceder por ssh ou ftp, a partir de rede, usando o host criado não funciona. Alguém conseguiu por isto a correr? Como fizeram? obrigado!
Mas tas a tentar isso na rede local?
sim, tentei na rede local e depois a partir da rede do trabalho, ainda não consegui.
ok já está a dar, tinha de configurar melhor o router. Obg pela ajuda.
jgoncalves, como fizeste? É que eu apenas consigo aceder pela rede local.
Se tentar aceder através de uma rede externa, não dá.
Podes ajudar por favor? (Tenho router MEO)
Boa tarde!!
Na consegui terminar a instalação no Rpi… deu um erro do tipo:
logo para terminar o comando
make install…
pi@Gbbrown ~ $ make install
make: *** Sem regra para processar o alvo `install’. Pare.
pi@Gb ~ $ cd noip-2.1.9-1
pi@Gb ~/noip-2.1.9-1 $ make
make: `noip2′ está atualizado.
pi@Gb ~/noip-2.1.9-1 $ make install
if [ ! -d /usr/local/bin ]; then mkdir -p /usr/local/bin;fi
if [ ! -d /usr/local/etc ]; then mkdir -p /usr/local/etc;fi
cp noip2 /usr/local/bin/noip2
cp: não foi possível criar arquivo comum “/usr/local/bin/noip2”: Permissão negada
make: ** [install] Erro 1
pi@Gb ~/noip-2.1.9-1 $
e me se possivel me passem tbm a configuracao correta do router tp-link
att
Excelente tutorial! Sou do Brasil
Tenho duas dúvidas:
No noip a conta gratuita menciona que a necessidade de renovar dominio a cada 30 dias está correto?
Meu router é um tp link 1043 comporta usb e uso a porta usb para alimentar minha raspberry, confihurando o DDNS com a conta do noip gratuita vou ter ye a cda 30 dias trocar o dominio?
Site noip:Utilize o nosso dinâmico gratuito DNS para mapear um endereço IP dinâmico, ou de longa URL para um fácil de lembrar o nome do host.
Escolhas Domínio Limitado
Até 3 Hostnames
Dinâmica Atualizações DNS
Hostnames Expire A Cada 30 Dias
URL E Porta 80 Redirecionamentos
E-Mail De Suporte
Desculpem desenterrar esta publicação, mas como faço para que o programa noip2 reinicie todos os dias, ou para que inicie automaticamente sempre que o Rpi for reiniciado?
Na consegui terminar a instalação no Rpi… deu um erro do tipo:
logo para terminar o comando
make install…
pi@Gbbrown ~ $ make install
make: *** Sem regra para processar o alvo `install’. Pare.
pi@Gb ~ $ cd noip-2.1.9-1
pi@Gb ~/noip-2.1.9-1 $ make
make: `noip2′ está atualizado.
pi@Gb ~/noip-2.1.9-1 $ make install
if [ ! -d /usr/local/bin ]; then mkdir -p /usr/local/bin;fi
if [ ! -d /usr/local/etc ]; then mkdir -p /usr/local/etc;fi
cp noip2 /usr/local/bin/noip2
cp: não foi possível criar arquivo comum “/usr/local/bin/noip2″: Permissão negada
make: ** [install] Erro 1
pi@Gb ~/noip-2.1.9-1 $
att
Boas,
Tenta assim:
Sudo make install
FIz examente como no tutorial e não deu, da-me o seguinte erro:
“HTTP status 502”
Eu consegui fazer mas alguém tem alguma ideia como eu me conecto no putty ou algo similar como mobile ssh?
No putty, eu jogo qual ip?
Bom dia Fábio,
eu por exemplo não uso o Putty, mas sim o Serverauditor e coloco o nome que criei no Noip e acedo sem qualquer problema.
Boa tarde
Precisava de ajuda na configuração do novo router da Meo gigabit para ter acesso remoto no smartphone a imagens da videovigilância, gravadas num disco externo. Tenho conta No-Ip já configurada no DNS dinâmico do router. Terei de fazer qualquer coisa tipo encaminhamento de portas, mas não sei como fazer. Podem ajudar?
Obrigado
Olá, gostaria de saber se é possivel controlar dois raspberry de fora da minha rede e como seria possivel. abraços