通过防火墙iptables做隔离端口的脚本

vi iptables_fix.sh

#!/bin/bash

#备份旧的规则
iptables-save > “/opt/firewall-“date "+%Y-%m-%d-%H:%M:%S"”.txt”

获取集群内hosts的ip,空格分隔

clusters=cat /etc/hosts | grep -v ::1 | grep -v "^$" | awk '{print $1}'

配置集群外的ip,空格分隔,格式如下

business=“127.0.0.1 172.17.0.1/16”

配置需要隔离的端口,空格分隔,以22为例:

block_ports=“22”

echo “FireWall fix…”

新建chain

iptables -t filter -N BIGDATA_BLOCK_PORTS

添加集群内ip白名单

for block_port in $block_ports;
do
for chost in $clusters;
do
#echo $ahost
iptables -I BIGDATA_BLOCK_PORTS -s $chost -p tcp --dport $block_port -j ACCEPT
iptables -I BIGDATA_BLOCK_PORTS -s $chost -p udp --dport $block_port -j ACCEPT
done
done

添加集群外ip白名单

for block_port in $block_ports;
do
for bhost in $business;
do
#echo $ahost
iptables -I BIGDATA_BLOCK_PORTS -s $bhost -p tcp --dport $block_port -j ACCEPT
iptables -I BIGDATA_BLOCK_PORTS -s $bhost -p udp --dport $block_port -j ACCEPT
done
done

最后隔离端口

for block_port in $block_ports;
do
iptables -A BIGDATA_BLOCK_PORTS -p tcp --dport $block_port -j DROP
iptables -A BIGDATA_BLOCK_PORTS -p udp --dport $block_port -j DROP
done

将BIGDATA_BLOCK_PORTS加入INPUT和FORWARD

iptables -I INPUT -j BIGDATA_BLOCK_PORTS
iptables -I FORWARD -j BIGDATA_BLOCK_PORTS

echo "fix finished

linux通过防火墙iptables做隔离端口的脚本相关推荐

  1. Linux下用iptables做端口映射

    Linux下用iptables做端口映射详细过程 在CentOS5.4上用iptables配置了端口映射,讲述详细的配置过程,供大家参考. [实现功能] server-A eth0      119. ...

  2. linux下防火墙iptables用法规则详解

    linux下防火墙iptables用法规则详解 分享者: du52.com 邮件: wangaibo168@163.com 主页: http://www.du52.com linux下防火墙iptab ...

  3. linux IPtable防火墙 禁止和开放端口

    linux IPtable防火墙 禁止和开放端口 转载自:http://hi.baidu.com/zplllm/item/f910cb26b621db57c38d5983 1.关闭所有的 INPUT ...

  4. Linux在防火墙中开放SVN端口

    原文地址:Linux在防火墙中开放SVN端口作者:王小安 我 svn端口 为3690 有开启3690端口的命令,在终端输入以下命令: 1>iptables -I INPUT -i eth0 -p ...

  5. Linux下防火墙iptables用法规则详及其防火墙配置

    原博主文章更美丽: http://www.cnblogs.com/yi-meng/p/3213925.html iptables规则 规则--顾名思义就是规矩和原则,和现实生活中的事情是一样的,国有国 ...

  6. linux开启80服务器,Linux服务器之IPTABLES开启80端口

    在服务器部署不同的程序时,总会遇到各种各样的问题,其中本文介绍的iptables开放80端口也是在服务器部署常见的问题之一.常见情况有以下两种: 情况一:在linux服务器部署好web运行环境和程序时 ...

  7. linux下用iptables做本机端口转发方法(转载)

    一 :从一台机到另一台机端口转发 启用网卡转发功能 #echo 1 > /proc/sys/net/ipv4/ip_forward 举例:从192.168.0.132:21521(新端口)访问1 ...

  8. Linux关闭防火墙、设置开放端口

    CentOS 6 service方式:1.查看防火墙状态:service iptables status2.开启防火墙:service iptables start3.关闭防火墙:service ip ...

  9. linux无法关闭防火墙设置,Linux关闭防火墙以及设置允许端口

    1) 重启后生效 开启: chkconfig iptables on 关闭: chkconfig iptables off 2) 即时生效,重启后失效 开启: service iptables sta ...

最新文章

  1. IDEA中Maven项目创建单元测试(JUnit4)
  2. C++中的虚函数(virtual function)
  3. 数据库表及字段命名、设计规范
  4. 为什么有些美国人名字仅仅只是两个英文字母(并不是缩写)?
  5. C#中类的override和virtual
  6. 解决 :sudo:/etc/sudoers 可被任何人写
  7. Eclipse 答疑:如何使用 Eclipse 进行断点(Breakpoints)调试?
  8. MINA核心结构和处理消息的逻辑流程
  9. python捕捉线程错误_Pythonrequests多线程抓取出现HTTPConnectionPoolMaxretiresexceeded异常...
  10. Git的安装以及简单使用
  11. 深度学习技术干货免费听,AirPods2任性抽...520有场AI峰会不可错过!
  12. RawData是Bayer转RGB格式代码分析和NEON单元加速方法
  13. 电脑系统常用的10个快捷键,适合电脑新用户看看
  14. 微博上一些有用的话(六)
  15. 听听那冷雨 -- 余光中
  16. promise is not a constructor
  17. 从 git 的历史记录中彻底删除文件或文件夹
  18. 【物联网毕设基础】单片机:RS485 通信与 Modbus 协议
  19. Commerzbank和Sparkasse开始支持Apple Pay
  20. github工具之OA综合利用python

热门文章

  1. 分布式理论 C++11 Kafka
  2. 微信公众平台登陆小程序后,在 开发-开发者工具 下,找不到 腾讯云
  3. jshell(jshell打不了汉字)
  4. Navicat 连接 MySql 报错2059时的解决方法
  5. 你有 10 年经验,为何还是败给只有 1 年经验的? | 程序员有话说
  6. Python for Data Analysis | NumPy
  7. SD Card Driver
  8. 高级搜索-百度和必应
  9. 英国脱欧 欧盟授权代表_英国脱欧可能影响您的虚拟主机的3种方式
  10. iFixit:苹果AirTag拆解,内部结构紧凑