Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1269041
  • 博文数量: 389
  • 博客积分: 2874
  • 博客等级: 少校
  • 技术积分: 3577
  • 用 户 组: 普通用户
  • 注册时间: 2009-10-24 10:34
文章分类

全部博文(389)

文章存档

2020年(2)

2018年(39)

2017年(27)

2016年(3)

2015年(55)

2014年(92)

2013年(54)

2012年(53)

2011年(64)

分类: 虚拟化

2015-10-29 14:01:14

今天看了 libvirt 的 netfilter 配置,不知道是如何实现的,偶然看了ebtables 的nat表,发现了玄机。下面直接使用ebtables 设置vm 网络控制。
在server上查看两台两台虚拟机的网卡名称,我这里是 vnet0 vnet1
两台虚拟机都在一台server上,下面的配置都是在这台server上进行

1、两台VM只允许tcp通信
-------------------------------
ebtables -t nat -A PREROUTING -i vnet0 -p IPv4 --ip-proto ! tcp -j DROP
ebtables -t nat -A PREROUTING -i vnet1 -p IPv4 --ip-proto ! tcp -j DROP
ebtables -t nat -A POSTROUTING -o vnet0 -p IPv4 --ip-proto ! tcp -j DROP
ebtables -t nat -A POSTROUTING -o vnet1 -p IPv4 --ip-proto ! tcp -j DROP

-删除上面的规则
ebtables -t nat -D PREROUTING -i vnet0 -p IPv4 --ip-proto ! tcp -j DROP
ebtables -t nat -D PREROUTING -i vnet1 -p IPv4 --ip-proto ! tcp -j DROP
ebtables -t nat -D POSTROUTING -o vnet0 -p IPv4 --ip-proto ! tcp -j DROP
ebtables -t nat -D POSTROUTING -o vnet1 -p IPv4 --ip-proto ! tcp -j DROP

2、两台VM不允许tcp通信,其他可以
-----------------------------
ebtables -t nat -A PREROUTING -i vnet0 -p IPv4 --ip-proto  tcp -j DROP
ebtables -t nat -A PREROUTING -i vnet1 -p IPv4 --ip-proto  tcp -j DROP
ebtables -t nat -A POSTROUTING -o vnet0 -p IPv4 --ip-proto  tcp -j DROP
ebtables -t nat -A POSTROUTING -o vnet1 -p IPv4 --ip-proto  tcp -j DROP

-删除上面的规则
ebtables -t nat -D PREROUTING -i vnet0 -p IPv4 --ip-proto  tcp -j DROP
ebtables -t nat -D PREROUTING -i vnet1 -p IPv4 --ip-proto  tcp -j DROP
ebtables -t nat -D POSTROUTING -o vnet0 -p IPv4 --ip-proto  tcp -j DROP
ebtables -t nat -D POSTROUTING -o vnet1 -p IPv4 --ip-proto  tcp -j DROP
阅读(1512) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~