iptables练习题(四)
设有一台Linux服务器,利用iptables作为防火墙,要求新建一条名为MYCHAIN的新链,来实现只允许开放本机的http服务,其余协议和端口均拒绝。
脚本:
[root@miyan ~]# cat newchain.sh
#!/bin/bash
#清除filter表中规则
iptables -F
#删除filter表中自定义的链
iptables -X
#自定义名字为MYCHAIN的链
iptables -N MYCHAIN
#MYCHAIN链中追加一条规则,功能为接收协议为TCP且目标端口为80的数据包
iptables -A MYCHAIN -p tcp --dport -j ACCEPT
#在MYCHAIN链中追加一条规则,返回调用该链出的下一条规则。
iptables -A MYCHAIN -j RETURN #将INPUT链的默认处理策略设置为DROP
iptables -P INPUT DROP
#接收本机环回测试的数据包进入
iptables -A INPUT -i lo -j ACCEPT
#在INPUT链中追加一条规则,功能为跳转到MYCHAIN链中去执行其中的规则
iptables -A INPUT -j MYCHAIN
#在INPUT链中追加一条规则,功能是将访问本机TCP端口22的数据包记录到日志中,并在日志中加入前缀"<--my GO ON-->"
iptables -A INPUT -p tcp --dport -j LOG --log-prefix "<--my GO ON-->"
#设置OUTPUT链的默认处理策略为DROP
iptables -P OUTPUT DROP
#在OUTPUT链中追加一条规则,放行协议为TCP且源端口为80的数据包
iptables -A OUTPUT -p tcp --sport -j ACCEPT
iptables -L
分析:(1)前两条规则清空filter表中所有的规则,并删除了所有自定义的链,设置一个干净的环境。
(2)接下来的四条规则自定了一条链MYCHAIN,此时仅仅是定义了,并未发挥作用。
(3)iptables -A INPUT -i lo -j ACCEPT开放本机环回测试网卡进入的数据包
(4)iptables -A INPUT -j MYCHAIN来调用前面定义的链MYCHAIN,类似于函数调用。
(5)当在MYCHAIN链中执行到“-j RETURN”时流程返回到调用处继续匹配主链的规则,将访问本机22端口的数据包计入到日志中/var/log/messages.
(6)iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT设置了针对本机发出(OUTPUT链)的数据包的限制
iptables练习题(四)的更多相关文章
- Linux对外提供服务 网络操作 端口操作 1.开启服务监听端口 2.设置防火墙,放行访问端口的包 iptables&netfilter 四表五链和通堵策略
主题: Linux服务器上软件提供服务 1.网络操作 2.端口操作 1.网络操作 本机必须能够ping通目标主机(本地虚拟机或者远程主机) 2.端口操作 1.开启服务监听端口 2.设置防火墙,放行访问 ...
- IPtables 之“四表五链”
目录 架构图 IP tables 简介 包过滤防火墙 Iptables如何过滤 "四表" "五链" Iptables流程 架构图 公司架构模式(酒店迎宾比喻) ...
- iptables的四表五链
iptables只是Linux防火墙的管理工具而已,位于/sbin/iptables.真正实现防火墙功能的是netfilter,它是Linux内核中实现包过滤的内部结构. iptables包含4个表, ...
- iptables(四)iptables匹配条件总结之一
经过前文的总结,我们已经能够熟练的管理规则了,但是我们使用过的"匹配条件"少得可怜,之前的示例中,我们只使用过一种匹配条件,就是将"源地址"作为匹配条件. 那么 ...
- python3练习题四
循环 题目: 答案: #!/usr/bin/env python3 #-*- coding:utf-8 -*- L = ['Bart', 'Lisa', 'Adam'] for i in L: pri ...
- iptables详解(2):四表五链
关于iptables中“四表五链”,我们今天来好好唠唠: 1.表的概念: 我们把具有相同功能的规则的集合叫做"表",所以说,不同功能的规则,我们可以放置在不同的表中进行管理,而ip ...
- 第三十四章 Linux常规练习题(一)参考答案
一.练习题一 1.超级用户(管理员用户)提示符是___#_,普通用户提示符是___$_. 2.linux关机重启的命令有哪些 ? 关机命令 重启命令 shutdown -h now shutdown ...
- iptables原理
1.iptables防火墙简介 Iptables也叫netfilter是Linux下自带的一款免费且优秀的基于包过滤的防火墙工具,它的功能十分强大,使用非常灵活,可以对流入.流出.流经服务器的数据包进 ...
- iptables日志探秘
iptables日志探秘 防火墙的主要功能除了其本身能进行有效控制网络访问之外,还有一个很重要的功能就是能清晰地记录网络上的访问,并自动生成日志进行保存.虽然日志格式会因防火墙厂商的不同而形态各异,但 ...
随机推荐
- maven下载、配置和安装
Maven简介 #Apache Maven is a software project management and comprehension tool. Based on the concept ...
- 玩黑客学校CTF
关卡很简单就不细说.不懂的百度 第一关: 源码: 解密得出为JO 第二关: 很明白,表单问题. </script> <div style = "text-align: ce ...
- Unix系统编程(六)write系统调用
write系统调用将数据写入一个打开的文件. ssize_t write(int fd, void *buffer, size_t count); write调用的参数含义与read调用相类似.buf ...
- pycharm 社区版
这个是免费版.到3.1.13 http://pan.baidu.com/s/1bnvPdtt 没用过idea的商业版,不知道为什么它的更新那么蛋疼,不能增量更新,每次都得手动下载完整的压缩包.
- CRM认识的误区
众所周知,CRM,就是平时说的“客户关系管理”,指用CRM来管理 企业与客户之间的关系.纵观整个IT圈子,做CRM的厂商比比皆是,每个厂商都有自己的产品宣言,令人眼花缭乱.但是领很多老板们不解的是,我 ...
- flutter 修改
原来用的是tabviewer来写的,但是有点问题. 点到某一个tab,会导致加载前一个tab的数据,看到别人的文章keep tab的做法,写了 tabbar的控件. 我想了一把,直接换成了pagerv ...
- ThinkPHP 模板 Volist 标签嵌套循环输出多维数组
ThinkPHP 中对 volist 标签嵌套使用可实现多维数组的输出. volist 嵌套使用 一般的二维数组,可以用 volist 标签直接循环输出.对于多维数组,则需要对其中的数组成员再次使用 ...
- python笔记- 发送邮件
依赖: Python代码实现发送邮件,使用的模块是smtplib.MIMEText,实现代码之前需要导入包: import smtplib from email.mime.text import MI ...
- The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Cha
The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Cha ...
- chrome vim设置
chrome vi 插件:Vrome 配置文件如下 set hintkeys=asdfghjkl;" 把默认使用数字来完成提示改为使用键盘上的这几个键map j 10jmap k 10k&q ...