编写iptables脚本实现IP地址、端口过滤
实验案例:公司使用一台运行RHEL5系统的服务器作为网关,分别连接三个网络,其中LAN1为普通员工电脑所在的局域网,LAN2为DNS缓存服务器所在的局域网。eth0通过10M光纤接入Internet。为了有效的管理网络环境及增强内部网络的安全性,需要配置iptables防火墙规则实现IP地址和端口的过滤控制。网络拓扑如下:
需求描述:
入站控制:
1.允许Internet上的主机访问网关服务器的21、25、80、110、143端口。
2.允许IP地址为201.12.13.14的远程主机访问网关22端口,并记录访问日志(每15分钟记录一次)。
3.允许IP地址为192.168.1.5、MAC地址为00:0C:27:30:4E:5D的主机访问网关的22端口。
4.仅允许局域网主机(LAN1:192.168.1.0/24)访问3128端口的代理服务。
转发控制:允许LAN1的主机通过网关访问位于LAN2的DNS的服务器(192.168.2.2)。
其它任何非明确许可的数据包入站访问均予以丢弃;数据包出站访问均允许。
编写的iptables脚本如下:
- #!/bin/bash
- #This is the firewall configuration
- iptables -t nat -F
- iptables -F
- iptables -P INPUT DROP
- iptables -P FORWARD DROP
- iptables -A INPUT -p tcp -m multiport --dport 21,25,80,110,143 -j ACCEPT
- iptables -A INPUT -p tcp --dport 22 -s 201.12.13.14 -j ACCEPT
- iptables -A INPUT -p tcp --dport 22 -m limit --limit 4/hour -j LOG
- iptables -A INPUT -p tcp --dport 22 -s 192.168.1.5 -m mac --mac-source 00:0C:27:30:4E:5D -j ACCEPT
- iptables -A INPUT -p tcp --dport 3128 -s 192.168.1.0/24 -j ACCEPT
- iptables -A FORWARD -p udp --dport 53 -s 192.168.1.0/24 -j ACCEPT
- iptables -A FORWARD -p udp --sport 53 -d 192.168.1.0/24 -j ACCEPT
最后还要开启Linux网关服务器的路由转发功能:
# vi /etc/sysctl.conf
net . ipv4 .ip_forward = 1
编写iptables脚本实现IP地址、端口过滤相关推荐
- 常用IP地址端口对照表
Tag: 常用IP地址端口对照表 常用IP地址端口对照表 端口:0 服务:Reserved 说明:通常用于分析操作系统.这一方法能够工作是因为在一些系统中"0"是无效端口,当你试图 ...
- day31 网络通信udp,ip地址,端口port
网络通信概述 1. 什么是网络 说明 网络就是一种辅助双方或者多方能够连接在一起的工具 如果没有网络可想单机的世界是多么的孤单 单机游戏(不能和远在他乡的朋友一起玩) 2. 使用网络的目的 就是为了联 ...
- iptables限制Docker IP和端口访问
等保整改安全加固时,使用iptabels限制docker端口不生效,限制非docker容器端口可生效.经查阅大量资料,发现Docker容器创建时会自动创建iptables策略,Docker使用的i规则 ...
- Linux上使用telnet连接本机IP地址端口
场景 Linux开启了iptables!!! 开启本机TCP80端口服务.Linux本机IP地址是192.168.204.129.本机telnet连接本机的TCP80端口. 目的 telnet 192 ...
- MAC地址IP地址 端口
网络结构: 服务器-客户机(C/S)Client-Server结构,如QQ,LOL都拥有客户端 优点:响应速度快,形式多样,安全新较高 缺点:安装软件和维护,不能跨平台LINUX/windows/MA ...
- 腾讯QQ登录服务器域名IP地址端口列表
UDP服务器: sz.tencent.com 端口:8000 IP地址:219.133.49.171 =in<[REp UDP服务器:sz2.tencent.com 端口:8000 IP地址 ...
- 用java程序编写ip仿真器_用java 编写一个可以实现IP地址查询功能的课程设计
展开全部 下面是获得本机IP地址的方法,跟你的程序捆绑起来,互相发送消息的时候直接将IP发送过去 private static String[] getAllLocalHostIP(){ 323131 ...
- linux脚本显示ip地址,Linux中显示ip地址的命令【显哥出品,必为精品】
在Linux中有三种查看ip地址的方法,下面我分别来介绍 1.ip address命令 使用ip address命令可以查看具体是ip信息 [root@lixian ~]#ip address 1: ...
- 如何用脚本修改dns服务器地址,.bat脚本修改IP地址和DNS服务器地址
静态修改 @echo off cls color 0A Echo ******************************************************************* ...
最新文章
- 计算机硬件带软件怎么入账,小企业购置计算机硬件所附带的、未单独计价的软件,通过( )科目核算。A.无形资产B.固定资产C.在 - 赏学吧...
- Rxjava使用四部曲 + 相应衍生
- 20十年后的计算机作文600字,20年后的学校作文600字
- java常见的算法_Java常用算法总结(转)
- oracle带输出参数存储,oracle带输入输出参数存储过程(包括sql分页功能)
- 程序员被公司辞退12天,前领导要求回公司讲清楚代码,你们知道什么结果吗?
- Spring Boot 实现登录拦截器,这才是正确的姿势!!
- LeetBook《程序员的算法趣题》Q18---水果酥饼日
- pythondd_windows7下安装python环境和django
- Python批量提取Excel文件中的图片
- javascript的list循环
- php鼠标 显示图片,鼠标放在图片上显示大图的JS代码
- Prometheus监控(二)
- excel做ns流程图_NS流程图是什么图?用这款软件轻松画NS流程图
- 第三方rom 6.0刷机后,网络连接叹号处理方法
- Python网络爬虫中图片下载简单实现
- 3个月红酒上千万的营业额:新模式下的营销奥秘
- 大数据分析和大数据开发哪个好就业啊?
- 微信小程序访问后端服务器
- 调查结果:您使用什么.NET Framework功能?