免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 极品忧郁猫
打印 上一主题 下一主题

[网络管理] 请教iptables如何只让给定的ip和mac上网? [复制链接]

论坛徽章:
0
11 [报告]
发表于 2004-12-26 21:23 |只看该作者

请教iptables如何只让给定的ip和mac上网?

哈哈,双眼皮的猪是随州人啊?老乡啊!那你能不能告诉我我们头头的这个要求能不能实现啊?

论坛徽章:
0
12 [报告]
发表于 2004-12-26 22:15 |只看该作者

请教iptables如何只让给定的ip和mac上网?

[quote]原帖由 "双眼皮的猪"]访问服务器只跟INPUT链和OUTPUT链有关系,跟forward没关系...[/quote 发表:


访问服务器和INPUT和OUTPUT链无关吧,网关只是进行forward

论坛徽章:
0
13 [报告]
发表于 2004-12-27 08:38 |只看该作者

请教iptables如何只让给定的ip和mac上网?

to anttna:
访问网关(服务器)....这下没错吧....
我没说清楚...

to 猫:
当然可以实现....

论坛徽章:
0
14 [报告]
发表于 2004-12-27 09:46 |只看该作者

请教iptables如何只让给定的ip和mac上网?

双眼皮的猪,能不能告诉我比较详细的做法,最好是最简单的语法实现,我的Linux属于monkey级别,只能理解比较初级的指令。

论坛徽章:
0
15 [报告]
发表于 2004-12-27 10:36 |只看该作者

请教iptables如何只让给定的ip和mac上网?

1。访问外网的机器走FORWARD链,设定FORWARD链规则如下:
iptables -P FORWARD DROP (设定FORWARD链策略为DROP)
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT(允许状态为ESTABLISHED和RELATED的包通过,这条规则可以使response包通过防火墙)
iptables -A FORWARD -s 192.168.0.2 -m -mac --mac-source xxxxxxx -j ACCEPT (绑定IP地址和MAC,允许指定主机访问外网的request包通过)

2。内网中的机器访问服务器request包走INPUT链,response包走OUTPUT链,可以设置规则如下:
iptables -P INPUT -s 192.168.0.0/24 -j ACCEPT
iptables -P OUTPUT -j ACCEPT

论坛徽章:
0
16 [报告]
发表于 2004-12-27 10:51 |只看该作者

请教iptables如何只让给定的ip和mac上网?

命令?
恩...
基本上可以按楼上这位大哥的方法是设置,但是楼上这位大哥直接使用的话,可能module还没载进内核...
先要
modprobe ipt_mac
modprobe ipt_state
然后按楼上那位大哥的做就行了...
我记得我写过一个小东东,检查iptmac的,因为一般默认没编译进内核,所以可以用来检查系统中是否有该模块,和载进内核...
  1. #!/bin/sh
  2. KVERSION=`uname -r`
  3. lsmod | grep -q "ipt_mac"
  4. if [ $? = "0" ];then
  5.         echo "there exist ipt_mod in the kernel,U have insert it to the kernel"
  6. else
  7.         echo "there isn't a ipt_mod in the kernel"
  8.         echo "-----=====looking for the ipt_mac kernel=====-----"
  9.         cd /lib/modules/$KVERSION
  10.         cat modules.dep | grep -q "ipt_mac"
  11.         if [ $? = "0" ];then
  12.                 echo "ok ,got it..."
  13.                 modprobe ipt_mac
  14.                 if [ $? = "0" ];then
  15.                         echo "-----=====Load ipt_mac modules success=====-----"
  16.                 else
  17.                         echo "-----=====Load ipt_mac modules failed=====-----"   
  18.                 fi
  19.         else
  20.                 echo "there isn't ipt_mac modules.Please compile the kernel and make the ipt_mac in the kernel or make it  module"
  21.         fi
  22. fi

复制代码

论坛徽章:
0
17 [报告]
发表于 2004-12-27 12:57 |只看该作者

请教iptables如何只让给定的ip和mac上网?

你原来的教本中间插一句

/sbin/iptables -P FORWARD DROP
/sbin/iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A FORWARD -s 192.168.0.169 -j ACCEPT

论坛徽章:
0
18 [报告]
发表于 2004-12-27 14:49 |只看该作者

请教iptables如何只让给定的ip和mac上网?

命令?
恩...
基本上可以按楼上这位大哥的方法是设置,但是楼上这位大哥直接使用的话,可能module还没载进内核...
先要
modprobe ipt_mac
modprobe ipt_state
然后按楼上那位大哥的做就行了...


netfilter/iptables有两种编译方式,一种是直接编译到内核里面,一种是编译成模块的方式,在需要的时候将模块链接到内核中。iptables通常用的是后者。
在使用iptables的过程中,发现iptables在插入规则时通常会对所需要的模块进行检查,如果内核中没有所需要的模块就自动把模块链接到内核中。我没有对每个模块一一进行测试,但发现常用的模块iptables都可以自动加载。当然,在添加规则前用modprobe手动把模块链接到内核是一个好习惯,这样可以更好的减小出错的可能。
多谢你的提醒,也感谢CU给大家提供了一个交流的地方。顺便说一句,咱们都是湖北老乡,我是孝感的,目前在北京,呵呵。以后有机会大家多探讨一下

论坛徽章:
0
19 [报告]
发表于 2004-12-27 15:13 |只看该作者

请教iptables如何只让给定的ip和mac上网?

咱们都是湖北老乡,我是孝感的,目前在北京,呵呵。
============================
俺也是湖北的呦

论坛徽章:
0
20 [报告]
发表于 2004-12-27 15:59 |只看该作者

请教iptables如何只让给定的ip和mac上网?

靠,孝感哪里的?

俺在杭州....去北京呆了几天....天气不好啊...还是杭州好列...


老乡还是蛮多的嘛,嘿嘿....
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP