Ubuntu下iptables使用记录
来源:互联网 发布:制作app软件 编辑:程序博客网 时间:2024/05/16 12:59
由于iptables的命令偏长,所以记录一下我用到的命令,先记录一点,以后边学边记~
这里参考了百度百科还有Ubuntu论坛
1.查看iptables表项
sudo iptables -L -v默认情况下,ubuntu下的iptables是允许任意流量进入的。所以刚开始时会看到如下的表项。
2.允许ssh协议通过eth0网卡的ssh端口(默认为22)进入服务器
sudo iptables -A INPUT -p tcp -i eth0 --dport ssh -j ACCEPT
根据我的理解解释一下命令:
(1)-A应该是append的意思,即在iptables的过滤表项中的末尾添加表项;
(2)INPUT是指的是进入服务器的流量;
(3)-p代表的是protocol,即协议;
(4)-i指定规则应用的网卡;
(5)--dport指定规则应用的端口;
(6)-j代表目标跳转
ACCEPT 表示让这个包通过。DROP表示将这个包丢弃。QUEUE表示把这个包传递到用户空间。RETURN表示停止这条链的匹配,到前一个链的规则重新开始。如果到达了一个内建的链(的末端),或者遇到内建链的规则是RETURN,包的命运将由链准则指定的目标决定。
sudo iptables -A INPUT -p tcp -i eth0 --dport 80 -j ACCEPT4.允许lo协议进行回环
sudo iptables -A INPUT -i lo -j ACCEPT
5.阻断其他流量
sudo iptables -A INPUT -i eth0 -j DROP这里把除上述规则以外经过eth0进入服务器的IP包都丢弃了。
这时可查看我们的iptables列表如下所示,其中packets表示收到的IP包数量,bytes是字节数。
6.向iptables中插入规则
iptables是从前往后进行规则匹配的,如果有一条规则匹配则不会匹配后面的规则。所以如果我们在添加drop规则后,发现还要accept新的规则,则需要使用插入。
允许https协议的规则插入如下所示,它允许IP包经过eth0网卡和443端口,进入服务器
sudo iptables -I INPUT 3 -p tcp -i eth0 --dport 443 -j ACCEPT7.插入icmp协议通过规则,即允许ping该主机
sudo iptables -I INPUT 3 -p icmp -i eth0 -j ACCEPT8.使用如下的命令可以保存iptables的配置
机器重启的时候会将配置好的iptables表项清空,所以要做保存,否则下次不好恢复,可使用如下的命令进行保存操作。
sudo iptables-save > ~/iptables.up.rules用vi查看该文件如下所示:
然后再修改/etc/network/interfaces文件,添加最后一行代码即可
auto eth0iface eth0 inet dhcppre-up iptables-restore < ~/iptables.up.rules
9.删除一个iptables规则
可通过如下的命令来查看目前iptables的规则,如下所示,多了一行num,一会儿可通过num来指定要删除的规则。
sudo iptables -L -v --line-number
然后使用如下命令删除你想要删除的那一条规则,这里我删除的是第一条规则
sudo iptables -D INPUT 1
10.允许DNS请求
使用如下的命令可允许DNS查询请求和结果通过iptables过滤规则。
sudo iptables -I INPUT 1 -p udp -i eth0 --sport 53 -j ACCEPTsudo iptables -I INPUT 1 -p udp -i eth0 --dport 53 -j ACCEPT
DNS有时候也会使用tcp因此可再加如下两条命令
sudo iptables -I INPUT 1 -p tcp -i eth0 --sport 53 -j ACCEPTsudo iptables -I INPUT 1 -p tcp -i eth0 --dport 53 -j ACCEPT
11.允许本机访问HTTP/HTTPS/SSH
sudo iptables -I INPUT 7 -i eth0 -p tcp -m multiport --sports 22,80,443 -j ACCEPT这条语句的意思是允许远程主机端口号为22,80和443的请求通过过滤规则。
- Ubuntu下iptables使用记录
- 关于ubuntu下怎么使用iptables防火墙
- Ubuntu下使用记录
- ubuntu下配置iptables
- 在Ubuntu下使用记录
- Ubuntu下使用SVN记录
- centos下Iptables学习记录
- Ubuntu下iptables的保存
- ubuntu下,iptables:unrecognized service
- ubuntu下iptables的配置
- Linux下使用iptables
- CentOS7下使用iptables
- ubuntu下vim的简单使用记录
- linux 下iptables配置使用
- ubuntu 14下iptables 简易教程 2016.2
- ubuntu下的iptables正确用法
- 使用iptables记录谁访问了HDFS
- iptables记录
- PHP——底层运行机制与原理
- C++头文件与实现文件分别写什么
- 如何优化ListView
- Python代码追踪(类似于bash -x的效果)
- Regex 手机号 座机 正则表达式
- Ubuntu下iptables使用记录
- const变量
- Codeforces Round #313 (Div. 2) C. Geralds Hexagon(补大三角.cpp
- JQuery 效果之隐藏与显示、淡入淡出、滑动、回调
- 【JavaSE】day01_ API文档 、 字符串基本操作
- poj 1847 Tram
- 【机房收费系统】——上下机
- MyBatis执行动态sql及存储过程
- 8-20