VyOS
es un sistema operativo de red de código abierto basado en Debian GNU/Linux
. Proporciona una plataforma de enrutamiento gratuita que compite directamente con otras soluciones disponibles en el mercado de proveedores de red, como Huawei
y Cisco
, entre los más conocidos. Provee, entre otras, las funcionalidades de enrutamiento, cortafuegos, VPN
y VLAN
. Para su gestión, VyOS
provee una interfaz de línea de comandos (CLI
por sus siglas en Inglés), al más puro estilo tradicional de configuración de routers
.
En Cuba la adopción de las tecnologías de virtualización van ganando cada vez más adeptos; al mismo tiempo, va siendo común en las redes cubanas la existencia de conexión por fibra óptica -jaque mate al cobre y las tecnologías de conexión DSL
-; lo que presupone el despliegue de electrónica avanzada de red -routers
y switches L2/L3
-, las cuales en no pocas ocasiones, están subutilizadas.
A los efectos de esta guía, se utilizará un entorno de virtualización basado en Proxmox
, donde se creará una máquina virtual ejecutando un VyOS router
con los siguientes requisitos de hardware
y software
.
-
Hardware
- CPU: 1 core
- RAM: 512 MiB
- HDD: 2 GiB
- Arquitectura: i586 ó amd64
- Adaptador de red: 2 (solo 1, de utilizarse
VLAN
bajo protocolo de etiquetadoIEEE 802.1Q
)
-
Software
- Imagen
ISO
deVyOS
para la arquitectura seleccionada, disponibles en VyOS Downloads.
- Imagen
NOTA: Si se despliega
VLAN
bajo protocolo de etiquetadoIEEE 802.1Q
, debe disponerse de unswitch L2
, donde se crearán las mismasVLANs
que utilizará elVyOS router
.
El proceso de instalación de VyOS
es en extremo sencillo, basta con ejecutar el comando install image
y aceptar (recomendado) o modificar las opciones que nos presenta el asistente; al concluir, reiniciar.
Una vez instalado, VyOS
dispone de dos modos de gestión; el modo operacional y el modo de configuración. En el primero es donde se ejecutan todos los comandos de verificación y monitoreo, y en el segundo, como su propio nombre indica; los comandos de configuración.
Acceder al modo de configuración a través del comando configure
.
NOTA: Si se utiliza versiones igual o inferior a la
1.1.8
, es recomendable ejecutardelete system console device ttyS0
.
-
Parámetros globales
set system host-name 'router' set system name-server 'ns1.etecsa.cu' set system name-server 'ns2.etecsa.cu' set system time-zone 'America/Havana'
NOTA: Si su
ISP
cuenta con un servidor de hora, ejecutarset system ntp server 'IP_O_FQDN_SERVIDOR_NTP'
.- Utilizar el
router
como servidorDNS
para la subredLAN
set service dns forwarding name-server 'ns1.etecsa.cu' set service dns forwarding name-server 'ns2.etecsa.cu' set service dns forwarding listen-on 200.55.143.153 set service dns forwarding allow-from 200.55.143.152/29
- Utilizar el
-
Parámetros de los adaptadores de red
- Sin utilizar protocolo de etiquetado
IEEE 802.1Q
set interfaces ethernet eth0 address '192.168.30.2/30' set interfaces ethernet eth0 description 'WAN' set interfaces ethernet eth1 address '200.55.143.153/29' set interfaces ethernet eth1 description 'LAN'
- Utilizando protocolo de etiquetado
IEEE 802.1Q
set interfaces ethernet eth0 vif '100' address '192.168.30.2/30' set interfaces ethernet eth0 vif '100' description 'WAN' set interfaces ethernet eth0 vif '101' address '200.55.143.153/29' set interfaces ethernet eth0 vif '101' description 'LAN'
- Sin utilizar protocolo de etiquetado
-
Parámetros de enrutamiento
- Para versiones <=1.1.8
set system gateway-address '192.168.30.1'
NOTA: También puede usarse
set protocols static route 0.0.0.0/0 next-hop '192.168.30.1'
.- Para versiones >1.1.8
set protocols static route 0.0.0.0/0 next-hop '192.168.30.1'
-
Parámetros de seguridad
- Reglas de cortafuegos
set firewall all-ping enable set firewall broadcast-ping disable set firewall config-trap disable set firewall name OutSide set firewall name OutSide default-action accept set firewall name OutSide rule 1 action drop set firewall name OutSide rule 1 destination port 'ssh' set firewall name OutSide rule 1 protocol 'tcp' set firewall name OutSide rule 2 action drop set firewall name OutSide rule 2 destination port 'telnet' set firewall name OutSide rule 2 protocol 'tcp'
- Sin utilizar protocolo de etiquetado
IEEE 802.1Q
set interfaces ethernet eth0 firewall local name OutSide
- Utilizando protocolo de etiquetado
IEEE 802.1Q
set interfaces ethernet eth0 vif '100' firewall local name OutSide
NOTA: La aplicación de la política de cortafuegos
OutSide
, evita que elrouter
sea gestionado a través de la interfazWAN
.- Definir un usuario distinto al
vyos
por defecto
set system login user 'username' full-name 'Descripción del usuario' set system login user 'username' authentication plaintext-password 'P@s$w0rd.2019' set system login user 'username' level 'admin'
- Permitir acceso a través del protocolo
SSH
set service ssh listen-address '200.55.143.153' set service ssh port '22'
-
Habilitar monitoreo de tráfico de red
SNMPv2 (Simple Network Management Protocol)
set service snmp listen-address '200.55.143.153' set service snmp community public authorization ro set service snmp community public network 200.55.143.152/29 set service snmp location "CU, Nueva Gerona" set service snmp contact "postmaster@dominio.cu"
NOTA: Para habilitar
SNMPv3
, revisar las referencias.Aplicar la configuración, guardar los cambios -para hacerlos permanentes en cada reinicio-, y salir del modo de configuración.
commit && save exit
-
Mostrar los parámetros de configuración establecidos
show configuration
-
Mostrar los parámetros de los adaptadores de red
show interfaces
-
Mostrar el tráfico de red
monitor interfaces
NOTA: Para listar todos los comandos de configuración ejecutados, utilizar,
show configuration commands
.
-
Obtener versión en ejecución
show system image The system currently has the following image(s) installed: 1: 1.2-rolling-201911061649 (default boot) (running image)
-
Añadir nueva versión
add system image https://downloads.vyos.io/rolling/current/amd64/vyos-rolling-latest.iso Checking MD5 checksums of files on the ISO image...OK. Done! What would you like to name this image? [1.3-rolling-202001160217]: OK. This image will be named: 1.3-rolling-202001160217 Installing "1.3-rolling-202001160217" image. Copying new release files... Would you like to save the current configuration directory and config file? (Yes/No) [Yes]: Copying current configuration... Would you like to save the SSH host keys from your current configuration? (Yes/No) [Yes]: Copying SSH keys... Running post-install script... Setting up grub configuration... Done.
-
Reiniciar el sistema
Contestar afirmativamente a las preguntas que se ofrecen durante el proceso de añadir versión y al concluir, reiniciar el sistema con el comando
reboot
.
NOTA: Se pude volver a verificar las versiones existentes con el comando
show image system
. También es posible añadir la nueva versión desde una imagenISO
previamente descargada y subida al sistema.
La virtualización representa una de las tecnologías más eficientes para reducir los costos de las infraestructuras informáticas y de telecomunicaciones; jugando un papel esencial en Cuba, atendiendo a las limitaciones que enfrenta el país para la adquisición de equipamiento de última generación.
La virtualización puede ser aplicada tanto a servidores como a redes. Además, genera mayor eficiencia, agilidad y autonomía para la empresa cliente de un provedor de servicios de conectividad; con una mínima inversión que no rebase los presupuestos planificados.