- 浏览: 45709 次
最新评论
-
masuweng:
恩配置过java的,没配置过php的。 #system ser ...
Ubuntu14 更改网站默认目录注意事项 -
zzsj123:
http://blog.csdn.net/fox123871/ ...
所有博客地址
iptables规则的查看、添加、删除和修改
http://www.cszhi.com/20120717/iptables-sample.html
http://blog.csdn.net/zht666/article/details/17505789
iptables 禁止端口和开放端口
1、关闭所有的 INPUT FORWARD OUTPUT 只对某些端口开放。
下面是命令实现:
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
再用命令 iptables -L -n 查看 是否设置好, 好看到全部 DROP 了
这样的设置好了,我们只是临时的, 重启服务器还是会恢复原来没有设置的状态
还要使用 service iptables save 进行保存
看到信息 firewall rules 防火墙的规则 其实就是保存在 /etc/sysconfig/iptables
可以打开文件查看 vi /etc/sysconfig/iptables
2、
下面我只打开22端口,看我是如何操作的,就是下面2个语句
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
再查看下 iptables -L -n 是否添加上去, 看到添加了
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
Chain FORWARD (policy DROP)
target prot opt source destination
Chain OUTPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp spt:22
现在Linux服务器只打开了22端口,用putty.exe测试一下是否可以链接上去。
可以链接上去了,说明没有问题。
最后别忘记了保存 对防火墙的设置
通过命令:service iptables save 进行保存
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
针对这2条命令进行一些讲解吧
-A 参数就看成是添加一条 INPUT 的规则
-p 指定是什么协议 我们常用的tcp 协议,当然也有udp 例如53端口的DNS
到时我们要配置DNS用到53端口 大家就会发现使用udp协议的
而 --dport 就是目标端口 当数据从外部进入服务器为目标端口
反之 数据从服务器出去 则为数据源端口 使用 --sport
-j 就是指定是 ACCEPT 接收 或者 DROP 不接收
3、禁止某个IP访问
1台Linux服务器,2台windows xp 操作系统进行访问
Linux服务器ip 192.168.1.99
xp1 ip: 192.168.1.2
xp2 ip: 192.168.1.8
下面看看我2台xp 都可以访问的
192.168.1.2 这是 xp1 可以访问的,
192.168.1.8 xp2 也是可以正常访问的。
那么现在我要禁止 192.168.1.2 xp1 访问, xp2 正常访问,
下面看看演示
通过命令 iptables -A INPUT -p tcp -s 192.168.1.2 -j DROP
这里意思就是 -A 就是添加新的规则, 怎样的规则呢? 由于我们访问网站使用tcp的,
我们就用 -p tcp , 如果是 udp 就写udp,这里就用tcp了, -s就是 来源的意思,
ip来源于 192.168.1.2 ,-j 怎么做 我们拒绝它 这里应该是 DROP
好,看看效果。好添加成功。下面进行验证 一下是否生效
一直出现等待状态 最后 该页无法显示 ,这是 192.168.1.2 xp1 的访问被拒绝了。
再看看另外一台 xp 是否可以访问, 是可以正常访问的 192.168.1.8 是可以正常访问的
4、如何删除规则
首先我们要知道 这条规则的编号,每条规则都有一个编号
通过 iptables -L -n --line-number 可以显示规则和相对应的编号
num target prot opt source destination
1 DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:3306
2 DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21
3 DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
多了 num 这一列, 这样我们就可以 看到刚才的规则对应的是 编号2
那么我们就可以进行删除了
iptables -D INPUT 2
删除INPUT链编号为2的规则。
再 iptables -L -n 查看一下 已经被清除了。
5、过滤无效的数据包
假设有人进入了服务器,或者有病毒木马程序,它可以通过22,80端口像服务器外传送数据。
它的这种方式就和我们正常访问22,80端口区别。它发向外发的数据不是我们通过访问网页请求
而回应的数据包。
下面我们要禁止这些没有通过请求回应的数据包,统统把它们堵住掉。
iptables 提供了一个参数 是检查状态的,下面我们来配置下 22 和 80 端口,防止无效的数据包。
iptables -A OUTPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
可以看到和我们以前使用的:
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
多了一个状态判断。
同样80端口也一样, 现在删掉原来的2条规则,
iptables -L -n --line-number 这个是查看规则而且带上编号。我们看到编号就可以
删除对应的规则了。
iptables -D OUTPUT 1 这里的1表示第一条规则。
当你删除了前面的规则, 编号也会随之改变。看到了吧。
好,我们删除了前面2个规则,22端口还可以正常使用,说明没问题了
下面进行保存,别忘记了,不然的话重启就会还原到原来的样子。
service iptables save 进行保存。
Saving firewall rules to /etc/sysconfig/iptables: [ OK ]
其实就是把刚才设置的规则写入到 /etc/sysconfig/iptables 文件中。
6、DNS端口53设置
下面我们来看看如何设置iptables来打开DNS端口,DNS端口对应的是53
大家看到我现在的情况了吧,只开放22和80端口, 我现在看看能不能解析域名。
hostwww.google.com 输入这个命令后,一直等待,说明DNS不通
出现下面提示 :
;; connection timed out; no servers could be reached
ping 一下域名也是不通
[root@localhost ~pingwww.google.com
ping: unknown hostwww.google.com
我这里的原因就是 iptables 限制了53端口。
有些服务器,特别是Web服务器减慢,DNS其实也有关系的,无法发送包到DNS服务器导致的。
下面演示下如何使用 iptables 来设置DNS 53这个端口,如果你不知道 域名服务端口号,你
可以用命令 : grep domain /etc/services
http://www.cszhi.com/20120717/iptables-sample.html
http://blog.csdn.net/zht666/article/details/17505789
iptables 禁止端口和开放端口
1、关闭所有的 INPUT FORWARD OUTPUT 只对某些端口开放。
下面是命令实现:
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
再用命令 iptables -L -n 查看 是否设置好, 好看到全部 DROP 了
这样的设置好了,我们只是临时的, 重启服务器还是会恢复原来没有设置的状态
还要使用 service iptables save 进行保存
看到信息 firewall rules 防火墙的规则 其实就是保存在 /etc/sysconfig/iptables
可以打开文件查看 vi /etc/sysconfig/iptables
2、
下面我只打开22端口,看我是如何操作的,就是下面2个语句
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
再查看下 iptables -L -n 是否添加上去, 看到添加了
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
Chain FORWARD (policy DROP)
target prot opt source destination
Chain OUTPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp spt:22
现在Linux服务器只打开了22端口,用putty.exe测试一下是否可以链接上去。
可以链接上去了,说明没有问题。
最后别忘记了保存 对防火墙的设置
通过命令:service iptables save 进行保存
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
针对这2条命令进行一些讲解吧
-A 参数就看成是添加一条 INPUT 的规则
-p 指定是什么协议 我们常用的tcp 协议,当然也有udp 例如53端口的DNS
到时我们要配置DNS用到53端口 大家就会发现使用udp协议的
而 --dport 就是目标端口 当数据从外部进入服务器为目标端口
反之 数据从服务器出去 则为数据源端口 使用 --sport
-j 就是指定是 ACCEPT 接收 或者 DROP 不接收
3、禁止某个IP访问
1台Linux服务器,2台windows xp 操作系统进行访问
Linux服务器ip 192.168.1.99
xp1 ip: 192.168.1.2
xp2 ip: 192.168.1.8
下面看看我2台xp 都可以访问的
192.168.1.2 这是 xp1 可以访问的,
192.168.1.8 xp2 也是可以正常访问的。
那么现在我要禁止 192.168.1.2 xp1 访问, xp2 正常访问,
下面看看演示
通过命令 iptables -A INPUT -p tcp -s 192.168.1.2 -j DROP
这里意思就是 -A 就是添加新的规则, 怎样的规则呢? 由于我们访问网站使用tcp的,
我们就用 -p tcp , 如果是 udp 就写udp,这里就用tcp了, -s就是 来源的意思,
ip来源于 192.168.1.2 ,-j 怎么做 我们拒绝它 这里应该是 DROP
好,看看效果。好添加成功。下面进行验证 一下是否生效
一直出现等待状态 最后 该页无法显示 ,这是 192.168.1.2 xp1 的访问被拒绝了。
再看看另外一台 xp 是否可以访问, 是可以正常访问的 192.168.1.8 是可以正常访问的
4、如何删除规则
首先我们要知道 这条规则的编号,每条规则都有一个编号
通过 iptables -L -n --line-number 可以显示规则和相对应的编号
num target prot opt source destination
1 DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:3306
2 DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21
3 DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
多了 num 这一列, 这样我们就可以 看到刚才的规则对应的是 编号2
那么我们就可以进行删除了
iptables -D INPUT 2
删除INPUT链编号为2的规则。
再 iptables -L -n 查看一下 已经被清除了。
5、过滤无效的数据包
假设有人进入了服务器,或者有病毒木马程序,它可以通过22,80端口像服务器外传送数据。
它的这种方式就和我们正常访问22,80端口区别。它发向外发的数据不是我们通过访问网页请求
而回应的数据包。
下面我们要禁止这些没有通过请求回应的数据包,统统把它们堵住掉。
iptables 提供了一个参数 是检查状态的,下面我们来配置下 22 和 80 端口,防止无效的数据包。
iptables -A OUTPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
可以看到和我们以前使用的:
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
多了一个状态判断。
同样80端口也一样, 现在删掉原来的2条规则,
iptables -L -n --line-number 这个是查看规则而且带上编号。我们看到编号就可以
删除对应的规则了。
iptables -D OUTPUT 1 这里的1表示第一条规则。
当你删除了前面的规则, 编号也会随之改变。看到了吧。
好,我们删除了前面2个规则,22端口还可以正常使用,说明没问题了
下面进行保存,别忘记了,不然的话重启就会还原到原来的样子。
service iptables save 进行保存。
Saving firewall rules to /etc/sysconfig/iptables: [ OK ]
其实就是把刚才设置的规则写入到 /etc/sysconfig/iptables 文件中。
6、DNS端口53设置
下面我们来看看如何设置iptables来打开DNS端口,DNS端口对应的是53
大家看到我现在的情况了吧,只开放22和80端口, 我现在看看能不能解析域名。
hostwww.google.com 输入这个命令后,一直等待,说明DNS不通
出现下面提示 :
;; connection timed out; no servers could be reached
ping 一下域名也是不通
[root@localhost ~pingwww.google.com
ping: unknown hostwww.google.com
我这里的原因就是 iptables 限制了53端口。
有些服务器,特别是Web服务器减慢,DNS其实也有关系的,无法发送包到DNS服务器导致的。
下面演示下如何使用 iptables 来设置DNS 53这个端口,如果你不知道 域名服务端口号,你
可以用命令 : grep domain /etc/services
发表评论
-
校正VPS时区设置
2017-04-12 20:58 934第一步,校正VPS时区设置: 首先,需要ssh登录vps或服务 ... -
Linux查看系统信息的一些命令及查看已安装软件包的命令
2017-01-24 11:41 396# uname -a # 查看内核 ... -
linux系统时间不同步
2016-12-20 18:35 779安装Ubuntu+Windows双系统时会遇到Windows ... -
ubuntu 升级JDK和JRE的例子
2016-11-10 12:54 632http://jingyan.baidu.com/articl ... -
NGINX 通过 rewrite实现对URL的改写
2016-10-09 23:01 1638$args :这个变量等于请求行中的参数,同$query_ ... -
ubuntu VPS nginx(1.4.6)防止盗链图
2016-08-21 16:45 587ubuntu VPS nginx(1.4.6)防止盗链图 ... -
Ubuntu14下禁止通过IP来访问web服务
2016-08-10 16:35 787ubuntu apache2的禁止IP访问在etc/apach ... -
ubuntu14 使用shadowsocks客户 服务器端配置
2016-06-30 20:33 265https://aitanlu.com/ubuntu-shad ... -
Ubuntu14 更改网站默认目录注意事项
2016-06-26 17:55 838重新加载nginx root@windows:/etc/ ... -
CentOS6.5系统下RPM包安装MySQL5.6
2015-10-07 13:55 555http://www.linuxidc.com/Linux/ ... -
ubuntu 15.04中php插件mcrypt 无法使用的问题
2015-09-24 16:18 699安装GD库其实就一条命令: sudo apt-ge ... -
ubuntu 15.0 安装sublime text2注意细节
2015-09-18 16:54 390解压下载的文件: tar -zxvf Sublim ... -
Centos 6.X安装软件仓库
2014-12-23 15:15 719Centos 6.X安装软件仓库 先下载文件: ... -
CentOS挂载NTFS 文件的步骤
2014-12-13 13:50 760CentOS本身是不支持NTFS的格式的,为了让CentOS ... -
centOS下安装Adobe Flash Player
2014-12-08 20:08 516解压tar -zxvf install_flash_pla ... -
centOS下安装Adobe Flash Player
2014-12-07 22:48 0随便打开一个带Flash的网站,提示需要安装插件,使用fir ...
相关推荐
下面通过具体的例子来展示iptables规则的配置过程: 1. **清除所有规则**: ```bash iptables -F ``` 2. **拒绝所有输入数据包**: ```bash iptables -A INPUT -j REJECT ``` 3. **允许HTTP访问**: ```...
3. **nat表**:专门用于网络地址转换(NAT),可以修改数据包的源或目标IP地址和端口。 4. **filter表**:这是最基本的过滤表,用于确定数据包是否允许通过防火墙。 规则链则进一步将规则组织起来,根据数据包的...
### iptables语法详解 ...通过对上述知识点的总结和详细解释,我们可以更好地理解iptables的工作原理及其在实际应用场景中的使用方法。无论是对于网络管理员还是开发人员来说,熟练掌握iptables都是非常重要的。
3. **设置端口转发**:在NAT表的PREROUTING链中,添加一条规则,将发往Router1特定端口(如80或443)的请求重定向到PC2的实际IP和相应的端口。 4. **安全策略**:在FILTER表的INPUT链中,添加规则允许ICMP、HTTP、...
- **根据 IP 查网卡地址**:使用 `arp -a` 查看 ARP 表中的 IP 和 MAC 地址映射关系。 - **根据 IP 查电脑名**:使用 `host <ip-address>` 命令查询 IP 地址对应的主机名。 - **查看当前 IP 地址**:执行 `hostname ...
- 根据CDH和CM所需的端口列表,添加相应的iptables规则。 - 例如,对于CM使用的443端口,可以添加如下规则: ```bash iptables -A INPUT -p tcp -s 10.1.2.0/24 --dport 443 -j ACCEPT iptables -A OUTPUT -p ...
这两条命令分别用于删除和添加一个默认路由。`10.40.48.1`和`10.40.17.1`是下一跳地址,`table 1000`指定使用自定义的路由表1000。 2. **查看路由表**: ```bash vi /etc/iproute2/rt_tables ``` 使用`vi`编辑...
例如,添加一条允许所有IP访问telnet的规则: ``` -A RH-Firewall-1-INPUT -m tcp -p tcp --dport 23 -j ACCEPT ``` 然后保存并重启防火墙服务,如`service iptables restart`。 完成以上步骤后,你应该能够在...
- `-A` 或 `append`:将规则添加到链的末尾。 - `-D` 或 `delete`:删除链中的规则。 - `-P` 或 `policy`:设置链的默认策略。 - `-N` 或 `new-chain`:创建新链。 - `-F` 或 `flush`:清空链中的所有规则。 -...
- **检测并封锁后门端口**:利用`iptables`命令来添加规则,阻止特定端口的入站流量,例如: - 针对TCP端口:`iptables -A INPUT -p tcp --dport <端口号> -j DROP` - 针对UDP端口:`iptables -A INPUT -p udp --...
- 删除规则:`iptables -D INPUT 1`(删除第一条规则) - 清空规则:`iptables -F`(清空所有链上的规则) - 查看规则:`iptables -L -n -v`(查看所有链上的规则) **2.2 SELinux安全增强** SELinux(Security...
- 使用 `ip route add <destination>/<mask> via <gateway> [dev ]` 添加路由,使用 `ip route del` 删除路由。 **6.11 修改网卡MAC地址的方法** - 使用 `ip link set <interface> address <mac_address>` 修改网卡...
- **/etc/networks**, **/etc/protocols**, **/etc/services**:分别存储网络、协议和TCP/IP服务及其端口映射。 - **/etc/rpc**:RPC服务名到其程序号的映射。 - **/etc/sysconfig/iptables**:保存的iptables规则,...
- 理解iptables和firewalld防火墙规则,如何添加和删除规则。 - SELinux的概念和应用,理解强制访问控制(MAC)。 - SSH安全配置,包括密钥对认证和端口更改。 7. **软件包管理**: - RPM与DEB包管理系统的区别...
确保这些规则添加在默认的22端口规则之下,然后重启防火墙使配置生效: ```bash /etc/init.d/iptables restart ``` 接下来,我们需要关闭SELinux,因为它可能会阻止某些服务的正常运行。修改`/etc/selinux/config`...
最后,添加一条规则允许通过eth0接口的TCP 80端口的连接,并将输入链的默认策略设置为拒绝所有流量,以确保除了显式允许的规则外,所有其他流量都被阻止。 #### 题目五:统计Nginx访问日志中的IP地址 **题目描述**...
- **命令选项:** `-A`添加规则,`-D`删除规则,`-I`插入规则,`-L`列出规则等。 - **选项含义:** 每个选项都有其特定的功能,例如`-A`用于向链尾添加一条规则。 ### 18. 开启IP转发 - **知识点:** 开启IP转发 ...
- 理解防火墙规则(如iptables或firewalld),进行端口转发和访问控制。 6. **文件系统与挂载** - 学习EXT3、EXT4、XFS等Linux常见文件系统类型及其特性。 - 理解挂载点的概念,如何添加、修改和卸载挂载点,...
2. 用户管理:添加、删除和修改用户,以及用户组的管理。 3. 文件所有权:chown和chgrp命令的使用,改变文件或目录的所有者和组。 五、软件包管理 1. 包管理器:介绍yum(RPM系统)和apt(Debian系)的使用,用于...