13.3.2. Aislar las máquinas virtuales entre sí mediante la interfaz de línea de comandos
Para evitar que una máquina virtual (VM) se comunique con otras VMs en su host, por ejemplo para evitar compartir datos o para aumentar la seguridad del sistema, puede aislar completamente la VM del tráfico de red del lado del host.
Por defecto, una VM recién creada se conecta a una red de tipo NAT que utiliza virbr0
, el puente virtual por defecto en el host. Esto asegura que la VM pueda utilizar la NIC del host para conectarse a redes externas, así como a otras VMs en el host. Esta es una conexión generalmente segura, pero en algunos casos, la conectividad con las otras VMs puede ser un peligro para la seguridad o la privacidad de los datos. En tales situaciones, se puede aislar la VM utilizando la conexión directa macvtap
en modo privado en lugar de la red por defecto.
En el modo privado, la VM es visible para los sistemas externos y puede recibir una IP pública en la subred del host, pero la VM y el host no pueden acceder el uno al otro, y la VM tampoco es visible para otras VMs en el host.
Para obtener instrucciones para configurar el modo privado macvtap
en su VM utilizando la CLI, consulte a continuación.
Requisitos previos
- Una VM existente con la configuración NAT por defecto.
El nombre de la interfaz del host que desea utilizar para la conexión
macvtap
. La interfaz que debes seleccionar variará dependiendo de tu caso de uso y de la configuración de red de tu host. Como ejemplo, este procedimiento utiliza la interfaz ethernet física del host.Para obtener el nombre de la interfaz de destino:
$ ip addr [...] 2: enp0s31f6: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000 link/ether 54:e1:ad:42:70:45 brd ff:ff:ff:ff:ff:ff [...]
Procedimiento
Utilice la interfaz seleccionada para configurar el modo privado
macvtap
en la VM seleccionada. El siguiente ejemplo configuramacvtap
en modo privado en la interfazenp0s31f6
para la VM llamada panic-room.# virt-xml panic-room --edit --network type=direct,source=enp0s31f6,source.mode=private Domain panic-room XML defined successfully
Verificación
Inicie la VM actualizada.
# virsh start panic-room Domain panic-room started
Enumerar las estadísticas de la interfaz para la VM.
# virsh domstats panic-room --interface Domain: 'panic-room' net.count=1 net.0.name=macvtap0 net.0.rx.bytes=0 net.0.rx.pkts=0 net.0.rx.errs=0 net.0.rx.drop=0 net.0.tx.bytes=0 net.0.tx.pkts=0 net.0.tx.errs=0 net.0.tx.drop=0
Si el comando muestra una salida similar, la VM ha sido aislada con éxito.
Recursos adicionales
- Para obtener instrucciones sobre cómo aislar una máquina virtual mediante la consola web, consulte Sección 13.4.2, “Aislar las máquinas virtuales entre sí mediante la consola web”.
-
Para obtener más información sobre el modo privado de
macvtap
, consulte Sección 13.5.6, “Fijación directa del dispositivo de red virtual”. - Para conocer las medidas de seguridad adicionales que puede establecer en una VM, consulte Capítulo 15, Asegurar las máquinas virtuales.