Use un nombre de dominio con la Raspberry Pi para que sea accesible desde Internet.
Comentariosⓘ Cet article peut avoir été partiellement ou totalement traduit à l'aide d'outils automatiques. Nous nous excusons des erreurs que cela pourrait engendrer.
La Raspberry Pi a menudo se recomienda para el autohospedaje de varios y variados servicios, blogs, correos electrónicos y servidores. ¡Pero quién dice alojamiento web también dice nombre de dominio!
En este tutorial, por lo tanto, veremos cómo comprar un nombre de dominio y cómo apuntarlo a nuestra Raspberry Pi para que sea fácilmente accesible desde Internet.
Qué necesitamos ?
Para este tutorial vamos a necesitar un poco:
- Una Raspberry Pi funcional conectada a Internet con Raspbian instalado.
- Un presupuesto de unos euros anuales para comprar un nombre de dominio (veremos cómo un poco más adelante).
Tenga cuidado, antes de continuar, tenga en cuenta que este tutorial hará que su Raspberry Pi sea accesible desde CUALQUIER Int
ernet.Si ha dejado contraseñas predeterminadas, aplicaciones no seguras, etc., corre el riesgo de ser pirateado. Asegúrese de haber tomado todas las precauciones necesarias.
¿Qué es un nombre de dominio y por qué lo necesitamos?
Ya sabes, en Raspberry Pi FR no estamos aquí para darte una receta simple a seguir, sino para explicarte cómo funcionan las cosas. Antes de entrar en la técnica pura y dura, echemos un vistazo a qué es un nombre de dominio y por qué nos es útil. Si ya sabe todo esto, pase a la siguiente parte.
Si sabe un poco sobre Internet, sabrá que cada máquina tiene lo que se llama una dirección IP. Esta dirección IP es única y permite distinguir cada máquina de las demás y, por tanto, comunicarse con esta única máquina.
También hay dos tipos de IP, pública y local. El primero te identifica en internet, es el de tu caja. El segundo identifica su computadora dentro de su red local.
El problema con las direcciones IP es que son conjuntos de cifrado. Es fácil de procesar para las computadoras, ¡pero es difícil de recordar para los humanos!
La solución que se encontró se llama DNS, por Domain Name System. El objetivo, proporcionar una notación legible para humanos: el nombre de dominio.
Al final, es un nombre de dominio, una forma legible para que los humanos identifiquen una dirección IP y, por lo tanto, una máquina.
Como puede ver, si es técnicamente posible prescindir de un nombre de dominio y solo usar una dirección IP, realmente no es práctico. Incluso veremos un poco más adelante que esto puede ser absolutamente imposible en algunos casos.
Ahora que sabemos qué es un nombre de dominio y para qué sirve, ¡veamos cómo podemos conseguir uno!
¿Cómo obtener un nombre de dominio para tu Raspberry Pi?
Este artículo no está patrocinado por ningún registrador, ¡no voy a tocar nada para decirte lo siguiente!
El primer paso para poder utilizar un nombre de dominio con tu Raspberry Pi, será lógicamente comprar un nombre de dominio. Porque sí, un nombre de dominio no es gratis, se puede vender y se puede comprar.
Tenga la seguridad de que en realidad no es tan caro. El precio de los nombres de dominio varía principalmente según lo que se llama la extensión, es decir lo que sigue al último .
en el nombre.
Hay extensiones más o menos conocidas, más o menos connotadas y que inspiran más o menos confianza. Y al contrario de lo que se podría pensar, ¡las mejores extensiones no son necesariamente las más caras!
En general, para un nombre de dominio clásico, cuente 10 € por año como máximo.
Si no está seguro de qué extensión elegir, manténgalo simple: .fr
, .com
, .info
o .org
.
Ahora que el tema del precio está resuelto, queda por ver dónde comprar nuestro nombre de dominio. Bueno, un nombre de dominio se compra a lo que se llama un "registrador" o "Registraire de nom de domaine" en buen francés.
Hay muchos registradores en Francia o en todo el mundo y los precios son muy similares. Lo que realmente marcará la diferencia es la calidad del servicio y la simplicidad de la gestión.
Para mí no hay comparación, elija OVH. La empresa es francesa y, por lo tanto, le ofrecerá una interfaz y soporte en un francés impecable, OVH es uno de los mayores actores europeos o incluso mundiales y su interfaz de gestión es simple.
Además, durante el resto de este tutorial todos los pasos a realizar en el registrador se realizarán en OVH, simplemente porque es el que utilizo a diario, incluso para este sitio. Por lo tanto, elegir su nombre de dominio con OVH le simplificará la vida.
Compra el nombre de dominio.
Para comprar su nombre de dominio, vaya al sitio https://www.ovh.com/fr/domaines/ e ingrese el nombre de dominio que le interesa en el formulario de búsqueda.
Llegará a una página que le permitirá comprobar la disponibilidad del nombre de dominio elegido. Si está disponible, agréguelo a su cesta, de lo contrario tendrá que buscar otro nombre.
La siguiente página le dará diferentes opciones para ofertas adicionales y similares. Desmarque la casilla "Anycast DNS", que sería inútil, pero marque la casilla "DNSSEC" en su lugar. Elija el nivel de servicio ya incluido en la oferta y continúe.
La siguiente página le ofrecerá alojamiento web para completar su oferta de nombre de dominio. Como alojaremos directamente en nuestra Raspberry Pi, no nos interesa esto, así que indique que no necesita alojamiento web y continúe.
Llega a la página de resumen de su pedido, comprueba que todo está en orden y sigue adelante. Si ya dispone de una cuenta OVH, deberá iniciar sesión o crear una.
Después de tu registro llegarás a la página de configuración que te permitirá definir los contactos para las distintas operaciones relacionadas con el nombre de dominio (te dejo poner el tuyo propio), pero sobre todo configurar el servidor DNS a utilizar. Elija utilizar el "Servidor DNS predeterminado", que tendrá el efecto de utilizar los servidores DNS de OVH.
Proceder, validar los contratos y proceder al pago.
Ahora tienes que esperar a que se cree el nombre de dominio, lo que normalmente tarda unos minutos. Puede ver fácilmente si el nombre de dominio se ha creado escribiéndolo en su navegador y actualizando la página con regularidad. Una vez que se valide el nombre, debe aterrizar en el "¡Felicitaciones!" por OVH.
Configure una IP fija en la Raspberry Pi y hágala accesible desde Internet.
Mientras esperamos que nuestro nombre de dominio esté listo, vamos a configurar un poco nuestra Raspberry Pi y nuestro box.
Como vimos en la parte explicativa al inicio del tutorial, existen dos tipos de redes y direcciones IP, públicas y privadas.
Las direcciones públicas son accesibles desde Internet, es decir, cualquier persona conectada a Internet puede enviar una solicitud a esta dirección y esta dirección puede recibirla.
Por otro lado, las direcciones privadas solo son accesibles dentro de la red privada (es decir, la red interna de su caja y los dispositivos conectados a ella). Solo las personas dentro de la red privada pueden enviar una solicitud a otras direcciones en la red privada.
Si hacemos un diagrama, obtenemos algo como esto:
Vemos que nuestra Raspberry Pi forma parte de nuestra red privada, esto quiere decir que no es accesible desde internet.
Como nuestro box es el único dispositivo con una IP pública en nuestra red, es el único que puede recibir solicitudes de Internet. Por tanto, tendremos que configurarlo para que retransmita las solicitudes recibidas a la Raspberry Pi.
Para eso tendremos que hacer dos cosas, darle una IP fija en la red local a nuestra Raspberry Pi (esto permitirá que la caja sepa dónde encontrarla en la red local), y usar lo que se llama port forwarding. para transmitir la solicitud.
Dale una IP fija a la Raspberry Pi.
Para eso es simple, siga nuestro tutorial que explica cómo dar una IP local fija a la Raspberry Pi.
Habilite el reenvío de puertos a Raspberry Pi.
Ahora que tenemos fijada la IP de nuestro Pi, tendremos que configurar el reenvío de puertos (o reenvío de puertos para angloparlantes) para transmitir las solicitudes recibidas por nuestro box a nuestra Raspberry.
De esta forma, cualquier solicitud enviada a través de nuestra IP pública se enviará directamente a nuestra Raspberry Pi.
Vaya a la interfaz de administración de su caja. Para eso debe ir a una página en particular con su navegador, la página depende de su ISP.
Para los 4 grandes ISP franceses, aquí están las direcciones que se utilizan normalmente, pero si esto no funciona consulte directamente el manual de la caja que explica cómo acceder a la parte de configuración / administración. A veces, la dirección se anota junto a la clave de red de la caja.
- Naranja: http://192.168.1.1
- SFR: http://192.168.0.1/
- Gratis: https://subscribe.free.fr/login/, conéctese y vaya a la sección "Mi Freebox" y luego "Configurar mi router Freebox".
- Bouygues: http://192.168.1.254
El resto del procedimiento depende de cada operador porque las interfaces varían de un operador a otro y de un modelo de caja a otro. Pero en general siempre encontrará los siguientes puntos:
- Debes iniciar sesión como administrador.
- Debes ir a la parte de configuración de tu enrutador.
- Por lo general, en entornos avanzados.
- Luego, en la parte de reenvío de puertos o reenvío de puertos.
- Finalmente, agregue un nuevo reenvío de puertos, para puertos
1
a65535
, es decir todos los puertos, tanto enTCP
y enUDP
, a la dirección IP de tu Raspberry Pi que definimos anteriormente.
Aquí hemos abierto todos los puertos por conveniencia, lo ideal es que solo abra los puertos que desea exponer al mundo exterior, para reducir el riesgo de ataques.
Puedes verificar que funciona intentando conectarte a tu Raspberry en SSH desde un dispositivo no conectado a la red (un teléfono 4G por ejemplo) y reemplazando la IP de tu Pi con tu IP pública (ver aquí).
¡Y ahora solo tenemos que hacer coincidir nuestro nombre de dominio con nuestra IP!
Apunte el nombre de dominio a la IP pública de Raspberry Pi con DynDNS.
Ahora que tenemos un nombre de dominio y nuestra Raspberry Pi tiene una IP pública, todo lo que tenemos que hacer es apuntar el primero al segundo.
Para apuntar un nombre de dominio a una dirección IP, agregamos un registro llamado "Tipo A" en lo que se llama la "zona DNS" del nombre de dominio, que es una especie de archivo de configuración que le permite definir el comportamiento de nuestro nombre de dominio. En un servidor "normal" esto es lo que habríamos hecho, pero en nuestro caso las cosas son un poco más complicadas.
A diferencia de los servidores alquilados a un profesional, las conexiones domésticas generalmente tienen IP dinámicas. Para reducir los costos y poder administrar más fácilmente su stock de IP disponibles, los proveedores de acceso a menudo asignan una nueva IP a su caja cada vez que se reinicia.
Consecuencia, si simplemente agregamos un campo a nuestro DNS A
apuntando a nuestra IP pública actual, la próxima vez que reiniciemos / cambiemos la dirección de nuestra caja, nuestro sitio se volverá inaccesible. Así que necesitamos una forma de actualizar el campo con mucha regularidad. A
a la IP pública actual de nuestra caja. Buenas noticias, para eso existe DDNS o DynDNS, para DNS dinámico.
En nuestro caso, tenemos un nombre de dominio en OVH y tenemos un Raspberry. Por tanto, lo más fácil para nosotros será utilizar el servicio OVH DynDNS con un script alojado en pi. Verás, ¡no es muy complicado!
Configure OVH DynDNS.
Para comenzar, conéctese a su perfil de OVH y vaya a la parte web del administrador, en la columna de la izquierda haga clic en "Dominios", luego en su nombre de dominio para acceder a la página de administración.
Ahora vaya a la pestaña "Zona DNS", busque un registro de tipo A
y elimínelo.
Luego, vaya a la pestaña DynHost y haga clic en "Administrar acceso" y luego en "Crear un identificador". Tendrás un formulario con 4 campos para completar:
- Sufijo del nombre de usuario: ingrese lo que desee.
- Subdominio: Ingrese
*
, que validará todos los subdominios posibles, incluida la ausencia de un subdominio. - Contraseña y Confirmación: Elija una contraseña segura, será utilizada por el script para autorizar la modificación de la IP.
Una vez que se ha creado el identificador, haga clic en el botón Atrás y en "Agregar un DynHost". Esta vez deberás completar dos campos:
- Subdominio: déjelo en blanco para usar el nombre de dominio global. Si desea utilizar un subdominio, puede completarlo con la subparte de su elección.
- IP actual: Ingrese su IP pública actual, puede encontrarla aquí.
Ahora que hemos configurado el DynHost en OVH, podremos crear el script que utilizará la Raspberry Pi para actualizar la IP.
Configure la Raspberry Pi para utilizar DynHost OVH.
Hay varias formas de actualizar un DynDNS. En nuestro caso crearemos un script que se ejecutará cada 5 minutos, recuperará nuestra IP pública y enviará una solicitud a OVH para actualizar la IP del nombre de dominio.
Para esto en nuestra Raspberry comenzaremos descargando el script dyndns.sh
en el archivo /usr/local/sbin
y darle los derechos necesarios para que sea legible y ejecutable solo por el administrador:
sudo wget https://raw.githubusercontent.com/RaspbianFrance/dyndnsovh/master/dyndns.sh -O /usr/local/sbin/dyndns.sh
sudo chmod 700 /usr/local/sbin/dyndns.sh
Ahora vamos a modificar el script para completar nuestra propia configuración. Para hacer esto, abra el script como root
con nano
ejecutando el siguiente comando:
sudo nano /usr/local/sbin/dyndns.sh
En el archivo, busque las siguientes líneas:
DYNHOST_ID=''
DYNHOST_PASSWORD=''
DOMAIN_NAME=''
Y para cada una de estas líneas, ingrese entre el '
la siguiente información :
- DYNHOST_ID: el identificador DynHost que creó en OVH (esta es la cadena en el formato
votrenomdedomaine.fr-xxxx
). - DYNHOST_PASSWORD: la contraseña que estableció para la ID de DynHost.
- DOMAIN_NAME: su nombre de dominio (con su subdominio si alguna vez ha definido un subdominio en lugar de usar el dominio global).
Guarde los cambios y verifique que el script esté funcionando bien ejecutando el siguiente comando:
sudo /usr/local/sbin/dyndns.sh
Deberías tener una devolución que parezca nochg 91.130.39.102
o good 91.130.39.102
, con su IP pública en su lugar. Estos dos retornos indican una IP ya actualizada o una actualización exitosa.
Ahora todo lo que tenemos que hacer es asegurarnos de que el script se inicie cada 5 minutos. Nada podría ser más simple, usaremos el crontab
, software que se ejecuta en segundo plano en Linux y puede ejecutar otros scripts de forma regular.
Para hacer esto, ejecute el comando:
sudo crontab -e
Si es la primera vez que lo ejecuta, es posible que deba elegir un editor de texto para usar, elija el que más le convenga (predeterminado nano
).
Vaya al final del archivo y agregue una nueva línea:
*/5 * * * * /usr/local/sbin/dyndns.sh > /dev/null 2>&1
Guarde los cambios y listo, la dirección IP a la que apunta su nombre de dominio se actualizará cada 5 minutos.
Conclusión
Espere unos minutos y vaya a la parte DynHost de su nombre de dominio en OVH. Debería ver que la IP asociada con el dominio coincide con la suya. Si logras cambiar la IP de tu caja (por ejemplo reiniciándola, depende de los ISPs), deberías verla actualizar luego de 5 minutos.
También puede comprobar que todo funciona correctamente intentando acceder a su pi, por ejemplo en SSH, utilizando su nombre de dominio en lugar de su IP.
¡Ahora tiene una Raspberry Pi accesible en Internet a través de su nombre de dominio!