下列规则将会阻止来自某一特定IP范围内的数据包,因为该IP地址范围被管理员怀疑有大量恶意攻击者在活动: 
# iptables -t filter -A INPUT -s 123.456.789.0/24 -j DROP 
也可以很轻易地阻止所有流向攻击者IP地址的数据包,该命令稍有不同:
 # iptables -t filter -A OUTPUT -d 123.456.789.0/24 -j DROP 
 
注意这里的A选项,使用它说明是给现有的链添加规则
基于TCP协议的原理,为了彻底阻断攻击IP的连接,所以需要把流入流出到该IP的数据包都DROP掉
 
 
最后补充一下,如果想针对某IP进行单独开放端口可以如下配置:
 
如果我需要对内网某机器单独开放mysql端口,应该如下配置:   
iptables -A INPUT -s 192.168.2.6 -p tcp -m tcp --dport 3306 -j ACCEPT   
iptables -A OUTPUT -s 192.168.2.6 -p tcp -m tcp --sport 3306 -j ACCEPT  
 
 
彻底禁止某IP访问:
 
#屏蔽单个IP的命令是   
iptables -I INPUT -s 123.45.6.7 -j DROP   
#封整个段即从123.0.0.1到123.255.255.254的命令   
iptables -I INPUT -s 123.0.0.0/8 -j DROP   
#封IP段即从123.45.0.1到123.45.255.254的命令   
iptables -I INPUT -s 124.45.0.0/16 -j DROP   
#封IP段即从123.45.6.1到123.45.6.254的命令是   
iptables -I INPUT -s 123.45.6.0/24 -j DROP   
指令I是insert指令 但是该指令会insert在正确位置并不像A指令看你自己的排序位置,因此用屏蔽因为必须在一开始就要加载屏蔽IP,所以必须使用I命令加载,然后注意执行/etc/rc.d/init.d/iptables save进行保存后重启服务即可  
 
 
屏蔽或开启常见端口
 
屏蔽或开启常用的TCP、UDP端口:
 
#可以使用DROP替换ACCEPT,实现端口屏蔽。  
#打开22端口(SSH)  
# iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT  
# iptables -A INPUT -p tcp -s 192.168.1.0/24 -m state --state NEW --dport 22 -j ACCEPT  
#打开TCP/UDP631端口(打印服务)  
# iptables -A INPUT -p udp -s 192.168.1.0/24 -m udp --dport 631 -j ACCEPT  
# iptables -A INPUT -p tcp -s 192.168.1.0/24 -m tcp --dport 631 -j ACCEPT  
# 打开123端口,允许局域网用户进行NTP时间同步  
# iptables -A INPUT -p udp -s 192.168.1.0/24 -m state --state NEW --dport 123 -j ACCEPT  
#打开25端口(SMTP)  
# iptables -A INPUT -p tcp -m state --state NEW --dport 25 -j ACCEPT  
# 打开DNS端口  
# iptables -A INPUT -p udp -m state --state NEW --dport 53 -j ACCEPT  
# iptables -A INPUT -p tcp -m state --state NEW --dport 53 -j ACCEPT  
#打开http/https端口  
# iptables -A INPUT -p tcp -m state --state NEW --dport 80 -j ACCEPT  
# iptables -A INPUT -p tcp -m state --state NEW --dport 443 -j ACCEPT  
#打开TCP110端口(POP3)  
# iptables -A INPUT -p tcp -m state --state NEW --dport 110 -j ACCEPT  
#打开TCP143端口  
# iptables -A INPUT -p tcp -m state --state NEW --dport 143 -j ACCEPT  
#为局域网用户开启Samba访问  
# iptables -A INPUT -p tcp -s 192.168.1.0/24 -m state --state NEW --dport 137 -j ACCEPT  
# iptables -A INPUT -p tcp -s 192.168.1.0/24 -m state --state NEW --dport 138 -j ACCEPT  
# iptables -A INPUT -p tcp -s 192.168.1.0/24 -m state --state NEW --dport 139 -j ACCEPT  
# iptables -A INPUT -p tcp -s 192.168.1.0/24 -m state --state NEW --dport 445 -j ACCEPT  
#为局域网用户开启代理服务器访问  
# iptables -A INPUT -p tcp -s 192.168.1.0/24 -m state --state NEW --dport 3128 -j ACCEPT  
#为局域网用户开启MySQL访问  
# iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

iptables阻止服务器被攻击的更多相关文章

  1. 这两周服务器被攻击,封锁了600多个IP地址段后今天服务器安静多了

    这两周服务器被攻击,封锁了600多个IP地址段后今天服务器安静多了 建议大家在自己的服务器上也封杀这些瘪三的地址 iptables -I INPUT -s 123.44.55.0/24 -j DROP ...

  2. 服务器被攻击后当作矿机,高WIO

    __ 矿机特点:    操作系统反应慢. wio 非常高,一般轻松达到50%,甚至达到100%. 在/root/ 下存在 .ddg 隐藏路径.路径中有nnnn.db 二进制文件. /tmp ./usr ...

  3. .cn根服务器被攻击之后

    如果是互联网行业的人员应该知道,8月25日凌晨,大批的“.cn”域名的网站都无法访问,当然包括weibo.cn等大型网站.个人比较奇怪的一件事情是,微博PC网页版是:www.weibo.com,而mo ...

  4. iptables配置服务器端口转发

    环境: CentOS6.5,192.168.1.10,外网双向通信,绑定域名zlzkj.org: WinServer2008,192.168.1.11,外网不能直接访问到该机器,但ftp.远程桌面.M ...

  5. linux服务器被攻击处理过程

    开始排查 首先检查日志,以前做过安全运维,所以写过类似于检查命令和工具,开始一一排查. #查看是否为管理员增加或者修改 find / -type f -perm #显示文件中查看是否存在系统以外的文件 ...

  6. 一次处理CentOS服务器被攻击往外发广播包

    情况是这样:我们在某地托管的一台linux服务器,突然接到机房电话说是我们机器将整个IDC网络搞瘫了.外部机器没法访问IDC.  挂掉电话后:我就开始考虑,托管机器的机房是有硬防的,我本身一台机器怎么 ...

  7. 服务器安全之iptables

    服务器安全之iptables iptables防火墙简介 Netfilter/Iptables(以下简称Iptables)是unix/linux自带的一款优秀且开放源代码的安全自由的基于包过滤的防火墙 ...

  8. Fail2ban 防止暴力破解centos服务器的SSH或者FTP账户

    次尝试登陆root账户失败的情况.[说明服务器被攻击了]   logtarget = SYSLOG  #我们需要做的就是把这行改成/var/log/fail2ban.log,方便用来记录日志信息 so ...

  9. 如何检查CentOS服务器受到DDOS攻击

    登录到你的服务器以root用户执行下面的命令,使用它你可以检查你的服务器是在DDOS攻击与否: netstat -anp |grep 'tcp\|udp' | awk '{print $5}' | c ...

随机推荐

  1. 构建高可用web站点(五)

    数据库是web站点中重要的应用,放在第四篇是因为之前来不及总结的原因,在之前的文章我看到了无论是Mysql或者是nosql的一些缓存和分布式一些比较扩展性的功能.但是对于单个数据库来说,它的优化也是我 ...

  2. ExtJS5_自定义菜单1

    顶部和底部区域已经作好,在顶部区域有一个菜单的按钮,这一节我们设计一个菜单的数据结构,使其可以展示出不同样式的菜单.由于准备搭建的是一个系统模块自定义的系统,因此菜单也是自定义的,在操作员系统登录的时 ...

  3. 玩玩SPARK

    没有SCALA的东东,玩不起哈. ./spark-shell 从文件生成一个DRIVER? val logFile = sc.textFile("hdfs://192.168.14.51:9 ...

  4. PYTHON--定期监测服务器端口,并将结果写入MYSQL

    定时监测服务器端口,然后将结果入写数据库. 监测用NC命令,入库就用PYTHON的MYSQL模块 再调一个基于函数的多线程... 妥妥的.. 是网上两个功能的合成.. 俺不生产代码,俺只是BAIDU的 ...

  5. 跨站脚本(XSS)

    跨站脚本: cross-site scripting或者XSS, 即攻击者向目标Web站点注入HTML标签或者脚本 如果网站没有通过移除任何嵌入的HTML标签来消毒,那么web页面很容易受到跨站脚本攻 ...

  6. Android新浪微博客户端(五)——主界面的TabHost和WeiboUtil

    原文出自:方杰|http://fangjie.info/?p=183转载请注明出处 最终效果演示:http://fangjie.info/?page_id=54 该项目代码已经放到github:htt ...

  7. fstream的用法

    本文转载自 http://www.newxing.com/Tech/Program/Cpp/577.html   C++文件流:fstream // 文件流ifstream  // 输入文件流ofst ...

  8. MD5方法代码(生成小写的md5) C#版本

    public string GetMD5Str(string input) { // Use input string to calculate MD5 hash MD5 md5 = System.S ...

  9. C++ —— 笔记汇总

    导读 本文仅用于记录在个人在使用C++过程中的遇到一些的疑问和概念. 目录 语法和概念基础 常用函数 编程注意 编译问题 拓展链接 1.语法和概念基础 1.块域     2.static 作用域    ...

  10. DB2 递归

    公司一直用递归来生成组织机构的树状图.看了上面的文档,应该立马就能写了. 不过前几天,有个功能涉及到下面的状况: 需要组织机构等级为1级的下面所有子机构.且按照一级组织机构分组.大家都觉得很难,哥就一 ...