Also known as Mozack!
Olá,
Muitos de vocês já devem conhecer o serviço de DNS da Amazon, o Route 53. Este serviço de DNS é o sítio onde colocam todas as informações do vosso domínio: records A, CNAME, etc…
O serviço, bem barato por sinal (0.50€/domínio), permite milhentas configurações, incluíndo resolução por latência, ou seja, vocês podem configurar o serviço a reencaminhar utilizadores com base na localização geográfica do cliente/servidor. Sem contar que podem ainda contar com tempos de resolução muito satisfatórios.
No entanto, não foi para vos falar do serviço em si que escrevo este post, mas sim informar-vos que este serviço, uma vez que suporta API, pode ser uma excelente solução para pessoas que têm servidor em casa e que o IP residencial altera sempre que a net cai ou a luz falha…
Como já vos tinha falado anteriormente neste post, há a possibilidade de alojarem as vossas aplicações WEB no vosso servidor/computador de casa, MAS, se a vossa net está constantemente a mudar de IP’s, aí torna-se complicado…
Para contornar questões como esta, existem serviços como o NO-IP (gratuito para sub-domínios deles, ou $25/ano para domínios próprios) que fazem bem o trabalho deles, mas aqui, mostro-vos como poupar $24.50/ano utilizando o serviço da Amazon Route 53 com o vosso próprio domínio, como exemplo, omeueu.pt.
Para se registarem no serviço, vão a http://aws.amazon.com/pt/. Sigam todo o processo de registo e coloquem as vossas definições de pagamento, isto vai permitir que o vosso serviço fique logo activo e pronto a usar. Não vou desenvolver um processo de registo que é semelhante a qualquer outro que utilizam na internet, assim, vamos começar com código, API Keys, etc…
Este passo pode parecer um pouco complexo, aqui temos que criar um utilizador e um grupo para o utilizador, posteriormente, dar permissões a esse utilizador para utilizar o Route53.
Agora que temos o nosso grupo criado, precisamos do utilizador, para isso, visitem esta URL: https://console.aws.amazon.com/iam/home#users
Agora já temos o grupo com as permissões e o utilizador criado, no momento, falta-nos associar o utilizador ao grupo, para isso sigam esta URL: https://console.aws.amazon.com/iam/home#users
Neste momento, temos o utilizador e as chaves API, temos o grupo com acesso ao Route53 e temos o utilizador associado ao grupo, agora, vamos continuar…
[alert style=”red”]Requisitos:
1 – Conta AWS (Amazon Web Services) para gerir o Route53
2 – O Host Zone do vosso domínio configurado correctamente, incluíndo os DNS no vosso provedor de domínio
3 – Credenciais API válidas para criação/alteração de dados no Route53.
4 – Servidor + PHP instalado no computador que vai fazer a actualização dos IP’s
[/alert]
Agora que já têm os dados na vossa mão e, presumo eu, já têm o vosso host configurado no Route 53, vão fazer download dos ficheiros:
Coloquem a pasta crons num sítio acessível pelo vosso sistema. Existem mais umas coisas que vamos precisar que se chama Hosted Zone ID. Este ID de zona, pode ser encontrado aqui: https://console.aws.amazon.com/route53/home#hosted-zones:
Na lista (se tiverem mais que um domínio), devem ver qual a zona que pretendem atualizar o IP remotamente, e copiar o Hosted Zone ID dessa zona…
Agora, devem ter percebido que existe lá uma variável chamada $hostname que tem na frente um array(). Então, vou tentar explicar o porquê deste array. Imaginem que no vosso servidor de casa têm múltiplos subdomínios? ex.: blog.omeueu.pt, media.omeueu.pt, etc… Neste caso, todos os IP’s destes sub-domínios terão que ser actualizados no Route53, daí a lista.
Se, no vosso caso só têm apenas um domínio ou sub-domínio para actualizar, basta colocar os dados correspondentes, desta forma:
Agora, que todo o sistema está “construído” e no sítio, teremos que fazer a chamada do script.
Se o vosso sistema é MAC, basta utilizar o crontab para que o script seja executado e que os IP’s sejam actualizados. Para isso, abram o terminal e executem os seguintes comandos:
Dos exemplos acima, basta que utilizem um dos dois. Podem usar Curl ou php basta que configurem as coisas de acordo com o vosso sistema.
No windows temos que fazer algumas pequenas coisas. Sei da existência de algum software que faz e gere crons no windows. Se utilizarem o WampDeveloper Pro ele já tem integrado Curl e Wget, o que simplifica as coisas… Se esse é o vosso caso, façam o seguinte:
Depois baste que usem a agendador de tarefas do windows e façam o seguinte:
Neste momento, se tudo foi feito e sem problemas, se correrem o script directamente no browser, vão poder ver um output dos records actualizados. Assim, conseguem confirmar se o script se está a ligar bem ao Route53 e se está acessível internamente.
Os crons, devem ser configurados com IP’s locais isso porque, se o IP alterou, no AWS não estará actualizado…
No final deste pequeno tutorial, conseguiram um colocar um domínio próprio a funcionar num IP dinâmico, sem recorrer aos serviços caros que oferecem estas funcionalidades. Fora isso tudo, o Route53 tem uma extraordinária latência pelo que a resolução de DNS não atrasa tanto a ligação…
Espero que tenham gostado. Para dúvidas relacionadas com o tópico, comentem…
Plex- Acesso remoto pela web | :: Izak.pt :: • 9 anos ago
[…] IP Dinâmico da NOS configurado com Amazon Route53, conforme explicado neste post […]
reply