ARP攻击绑定 linux/windows 下解决方案

请教: 使用IPTABLES作为网关,实现客户端的IP地址跟MAC地址绑定?

这个你在iptables里的nat里对每个地址作SNAT时指上就OK了,
也可在你的机子上arp -s 网关IP 正确的网关MAC地址
不过怎么做也挡不住别人改地址(改了地址上不了网,但是别人会地址冲突,也上不了)
最好的办法是用一台支持三层交换的交换机做一个绑定(要很多银子)

------------------

也许可以这样过滤
iptables -A FORWORD -s x.x.x.x -m mac --mac-source xx:xx:xx:xx:xx:xx -j ACCEPT
不过你机器多的话过滤条目也会很多
我觉得我这个办法很笨,但又想不出别的办法

SNAT就是你共享宽带让别人出去阿,你没做SNAT客户机怎么出去?路由?
过滤mac地址也可以在POSTROUTING里SNAT时候过滤

是呀,我都找遍了这个论坛里的DHCP相关的贴子,好像没查到,不过现在已解决这个问题。跟兄弟们分享一下,过程如下

vi /etc/ethers //新建一个ethers 文件,我感觉这是arp -s 默认在LINUX下找的文件,如果你执行arp -f 系统会提示你没有那个文件。

然后在ethers里添加记录,一个IP 一个MAC地址如
192.168.1.1 11:11:11:11:11:11
......

:wq

vi /etc/rc.d/rc.loacl
在最后添加
arp -f
:wq

使用arp 命令查看,可以看到标志为CM的添加的记录。

最后测试,用别的机器把IP改成192.168.1.1

这时会发现ping 192.168.1.254 (LINUXIP/ 网关IP) 不通。

实现IP跟MAC地址绑定,防止客户端修改IP。

目前正在使用IPTABLES+SQUID做透明**+DHCP 系统RH9,还有一些安全方面的事情没搞。

-------------------

现在arp病毒太猖狂,局域网里tcpdump一查看好机台机子都在搞arp攻击(有的是故意的,在共享带宽上网的时候,有的是中毒的),路由器又不支持客户机ip和mac地址绑定,深受arp病毒之苦,现将防毒经验奉上,供各位参考。arp病毒的原理不外乎欺骗网关和被攻击机器的mac地址和ip的绑定情况。在没有路由器控制权或者路由器不支持客户机ip和mac绑定的情况下,要正常上网很麻烦。在linux下治标的办法很容易。在本机只要网关mac地址静态绑定,那么网关的mac地址是不会受骗了。但是为了让网关知道你机子的mac地址,需要主动告知网关你的ip地址。

很简单 arping 本机的ip即可。

   只需三步即可完成,假设你的网卡是eth0

   1: 在没有受到病毒攻击时记录下正常的网关的ip地址和mac地址。

   2: arp -s 网关ip  网关正确的mac地址

   #主动通过广播发送本机的mac和ip绑定信息给网关。

   3:  arping  本机eth0网卡的ip  &

   还有一种办法可以上网: 用arpscan或者arping ,tcpdump (arpscan 网关ip即可知道)都很容易找出arp攻击为网关伪装的的mac地址(这个mac地址可能不是真实存在的),把你的网卡的mac地址设置成和这个地址一模 一样即可上网。

  这些方法只可以让你在受到arp攻击时正常上网,但毕竟不是治本的办法,治本的办法只有真人pk掉arp攻击的机器。可以采取其它辅助办法

#取消arp 响应 ifconfig  eth0 -arp 用arptables、iptables防火墙工具只允许本机和网关通讯。
----------------------

Linux网关服务器实现静态IP/MAC捆绑 (2007-02-06 13:03)
分类: Linux学习
/etc目录下创建ether文件,编辑ether(正确的IP/MAC对应),书写格式如下:
  192.168.1.1  00:0E:02:36:F7:E1
  192.168.1.2  00:0E:02:36:F7:E2
  192.168.1.3  00:0E:02:36:F7:E3
然后再编辑/etc/rc.d/rc.local,添加以下代码:
  arp -f

----------------

用linux 机器配置网关且绑定ip和mac地址防止arp攻击(zhuan)  


 
最近一段时间为一个项目做项目实 施,其中涉及到了使用CentOS5.1操作系统假设一台网关服务器的问题,要通过其实现外网计算机访问不到内网的主机,内网中仅指定的主机才可以访问外 网的功能,经过一番测试之后终于能够实现了,现在将实现的过程记录下来,以备今后的不时之需。
    一、所需软件:安装了自带的iptables防火墙的CentOS5.1操作系统
    二、前提准备:
        1.进行网关的相关配置,为了方便起见,使用root用户登录到系统中;
        2.首先对网关服务器的两块网卡进行网络设置,其中内网网卡设置的时候网关的地址空白,设置好之后检查一下网关服务器是否能够上外网,以及与内网是否已经 联通。均联通之后将内网网卡和外网网卡的设备号分别记录下来。(在本例中,内网网卡设备号为eth0、外网网卡设备号为eth1)
        3.要实现内网主机可以通过网关服务器上外网的功能,需要将网关操作系统中的数据包转发功能开启,可以通过sysctl -A命令查看当前内核参数设置,找到其中net.ipv4.ip_forward项查看其对应的参数值(0表示未开启,1表示开启)
        4.如果在上一项中发现的参数值为0,则需要将内核的数据包转发功能开启,具体实现方式为:
            输入vi /etc/sysctl.conf命令打开配置文件,找到其中net.ipv4.ip_forward所在的行,将"="后面的数值由0更改为1,之后将文件保存后退出vi编辑器。
        5.将配置文件修改完成后,可以使用sysctl -p /etc/sysctl.conf命令或将操作系统重新启动,以使参数生效。此时准备工作已经完成,接下来对防火墙的规则进行配置即可。
    三、ipables规则设置:
        1.此例中使用CentOS自带的功能强大的iptables防火墙来实现上述的要求,此时需要对iptables的规则进行设置,运行vi /etc/sysconfig/iptables命令,打开规则配置文件,按照下面给出的配置文件模板进行设置:
Java代码
  1. # Firewall configuration written by system-config-securitylevel   
  2. # Manual customization of this file is not recommended.   
  3. *filter   
  4. :INPUT ACCEPT [0:0]   
  5. :FORWARD ACCEPT [0:0]   
  6. :OUTPUT ACCEPT [0:0]   
  7. :RH-Firewall-1-INPUT - [0:0]   
  8. #new add   
  9. -A INPUT -i eth0 -j ACCEPT     
  10. -A INPUT -j RH-Firewall-1-INPUT   
  11. -A FORWARD -j RH-Firewall-1-INPUT   
  12. -A RH-Firewall-1-INPUT -i lo -j ACCEPT   
  13. #new add   
  14. -A RH-Firewall-1-INPUT -i eth0 -j ACCEPT   
  15. -A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT   
  16. -A RH-Firewall-1-INPUT -p 50 -j ACCEPT   
  17. -A RH-Firewall-1-INPUT -p 51 -j ACCEPT   
  18. -A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT   
  19. -A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT   
  20. -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT   
  21. -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT   
  22. -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT   
  23. -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT   
  24. -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT   
  25. -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited   
  26. COMMIT   
  27. #new add    
  28. *nat   
  29. :PREROUTING ACCEPT [0:0]   
  30. :POSTROUTING ACCEPT [0:0]   
  31. :OUTPUT ACCEPT [0:0]   
  32. #增加到这个表的内网ip才能上网   
  33. -A POSTROUTING -s 10.0.0.102 -o eth1 -j MASQUERADE   
  34. -A POSTROUTING -s 10.0.0.254 -o eth1 -j MASQUERADE   
  35. -A POSTROUTING -s 10.0.0.19 -o eth1 -j MASQUERADE   
  36. -A POSTROUTING -s 10.0.0.233 -o eth1 -j MASQUERADE   
  37. COMMIT   
  38. # Completed  


2.编辑好规则配置文件后,保存并退出vi编辑器。
        3.只有运行service iptables status查看系统当前iptables服务的状态。如果为stop,则使用service iptables start命令将其开启即可;如果为Start,则使用service iptables restart命令将其重新启动以使新的规则设置生效。
        4.此时即可实现网关服务器的设置,可以到那台允许访问外网的主机上访问一下外网以检测设置是否

========================================
防止arp攻击的双向绑定
服务器端:
vi /etc/ethers 增加
192.168.0.60  00-10-ac-9d-35-4d(windows机器的ip及mac地址)
192.168.0.61  00-0a-cb-20-4f-f5
然后用arp -f启动并在/etc/rc.d/rc.local最后添加:arp -f即可



在windows机器上,编辑一个arp.bat放到启动里面,bat文本的内容:
@echo off  
arp -d  
arp -s 192.168.1.2 00-04-61-9A-8D-B2(网关的ip及mac地址)
exit

你可能感兴趣的:(linux,职场,网关,ARP,休闲)