En este manual crearemos redes dentro de una VPC, utilizando el siguiente diagrama.
Basandonos de nuestra VPC 10.124.0.0/20, crearemos dentro de esta 2 redes LAN.
La primera es 192.168.0.0/24
En ella esta: ubuntu-vpc1, ubuntu-vpc2 y ubuntu-vpc3.
En esta red, configuraremos a ubuntu-vpc1 para reenvio de IP, es decir funcionará como puerta de enlace. Será el encargado de enrutar las peticiones
La segunda red será 192.168.1.0/24
En ella estará ubuntu-vpc2, ubuntu-vpc3 y una vpn-server (mikrotik)
En esta red, vpn-server(mk) será el gateway, será el encargado de enrutar las peticiones
Configuracion de Servidor 1 (Ubuntu-VPC1)
1.- Agregar IPs y rutas
Agregaremos la ip de nuestra LAN a usar, para este ejemplo, Ubuntu-VPC1 tendrá la IP: 192.168.0.2 y además agregaremos rutas que apunten a los demas servers.
Datos a agregar:
IP:
192.168.0.2
Rutas:
192.168.0.3 via 10.124.0.3
192.168.0.4 via 10.124.0.4
Para hacerlo editamos el archivo /etc/netplan/50-cloud-init.yaml
sudo nano /etc/netplan/50-cloud-init.yaml
Buscaremos la interfaz donde esta la ip de VPC, en este caso esta en el eth1 y ahi agregaremos la ip y las rutas, con la siguiente sixtaxis, debemos tener algo como esto:
eth1:
addresses:
- 10.124.0.2/20
- 192.168.0.2/24
match:
macaddress: 3e:f0:c5:9e:a7:19
mtu: 1500
nameservers:
addresses:
- 67.207.67.3
- 67.207.67.2
search: []
routes:
- to: 192.168.0.3
via: 10.124.0.3
- to: 192.168.0.4
via: 10.124.0.4
set-name: eth1
Revisamos si no tenemos ningun error con el siguiente comando:
sudo netplan apply --debug
Si no imprime nada en consola, no tenemos ningun error y procedemos a aplicar los cambios con:
2. Activar IP Forwarding
Para que podeamos usar este server como puerta de enlace, es necesario activar el reenvio de IPS. Podemos hacerlo con el siguiente comando:
sysctl -w net.ipv4.ip_forward=1
La reiniciar el server, esta configuración se perderá, para hacerlo persistente editamos /etc/sysctl.conf
sudo nano /etc/sysctl.conf
Y agregamos la siguiente linea al final del archivo
Configuracion de Servidor 2 y 3 (Ubuntu-VPC2 y Ubuntu-VPC3)
1.- Agregar IPs y rutas
Agregaremos la ip de nuestra LAN a usar, para este ejemplo, Ubuntu-VPC2 tendrá las IP: (192.168.0.3, 192.168.1.3) y Ubuntu-VPC3 las IP: (192.168.0.4, 192.168.1.4) y además agregaremos rutas que apunten al gateway(Ubuntu-VPC1)
Datos a agregar:
Ubuntu-VPC2
IP:
192.168.0.3
192.168.1.3
Rutas:
192.168.0.0/24 via 10.124.0.2
192.168.1.0/24 via 10.124.0.5
Ubuntu-VPC3
IP:
192.168.0.4
192.168.1.4
Rutas:
192.168.0.0/24 via 10.124.0.2
192.168.1.0/24 via 10.124.0.5
Para hacerlo editamos el archivo /etc/netplan/50-cloud-init.yaml
sudo nano /etc/netplan/50-cloud-init.yaml
Buscaremos la interfaz donde esta la ip de VPC, en este caso esta en el eth1 y ahi agregaremos la ip y las rutas, con la siguiente sixtaxis, debemos tener algo como esto:
eth1:
addresses:
- 10.124.0.3/20
- 192.168.0.3/24
- 192.168.1.3/24
match:
macaddress: 3e:f0:c5:9e:a7:19
mtu: 1500
nameservers:
addresses:
- 67.207.67.3
- 67.207.67.2
search: []
routes:
- to: 192.168.0.0/24
via: 10.124.0.2
- to: 192.168.1.0/24
via: 10.124.0.5
set-name: eth1
Revisamos si no tenemos ningun error con el siguiente comando:
sudo netplan apply --debug
Si no imprime nada en consola, no tenemos ningun error y procedemos a aplicar los cambios con:
2.- Quitar rutas default de las ips que agregamos
Al agregar las IP: 192.168.0.3, 192.168.1.3, 192.168.0.4 ó 192.168.1.4 se agregan las rutas::
192.168.0.0 0.0.0.0 eth1
192.168.1.0 0.0.0.0 eth1
Es necesario quitar estas ruta para que no interfiera con las rutas que creamos, Lo quitamos con este comando:
route del -net 192.168.0.0 netmask 255.255.255.0 gw 0.0.0.0
route del -net 192.168.1.0 netmask 255.255.255.0 gw 0.0.0.0
Sin embargo al reiniciar el server, estas rutas se volerán a agregar, para solucionarlo, haremos uso de rc.local. Editaremos el siguiente archivo /etc/rc.local
Agrega lo siguiente:
| #!/bin/sh
/sbin/ip route del 192.168.0.0/24 via 0.0.0.0
/sbin/ip route del 192.168.1.0/24 via 0.0.0.0
|
Convertimos /etc/rc.local en un archivo ejecutable
sudo chmod +x /etc/rc.local
Habilitamos el servicio:
sudo systemctl enable rc-local.service
Revisamos si no hay ningun error:
sudo systemctl status rc-local.service
A partir de ahora podemos hacer ping a cualquier equipo desde la red 192.168.0.0 en los primeros 3 servers.
Configuracion de Servidor 4 (VPN-Server Mikrotik)
1.- Agregar IPS
Este es un droplet de Digital Ocean tambien, con ubuntu 18.04, se instala una imagen de RouterOS.
Una vez instalado iniciamos sesion con winbox o por navegador web. Nos vamos a
IP > Addresses
Ahi agregamos la ip de la VPC(10.124.0.5) y la IP de la LAN(192.168.1.5), a la ether2, de tal manera que nos quede esto:
- Address 10.124.0.5/20, Network: 10.124.0.0, Interface: ether2
- Address 192.168.1.5/24, Network: 192.168.1.0, Interface: ether2
2.- Agregar Rutas
A continuacion agregaremos rutas en:
IP > Addresses
Agregamos las rutas hacia nuestros servers:
Rutas:
- Dst Address: 192.168.1.3 Gateway: 10.124.0.3
- Dst Address: 192.168.1.4 Gateway: 10.124.0.4
Listo, podemos hacer ping entre miendras de la red 192.168.1.0/24!!