Linux iptables 防火墙启动停止及打开关闭端口命令

Colin 1年前 ⋅ 86 阅读

## 开启停止
```
[root@linux]# service iptables stop
```

## 查看端口
```
[root@linux]# iptables -vnL
```

## 开放端口
```
[root@linux]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT
[root@linux]# iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT
```

## 删除规则
```
[root@linux]# 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:80

[root@linux]# iptables -D INPUT 1
```

## 禁用IP地址(黑名单)
```
[root@linux]# iptables -A INPUT -p tcp -s 192.168.0.2 -j DROP
```

## 端口转发

### 将80端口的流量转发至8080
```
[root@linux]# iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080
```

### 将80端口的流量转发至192.168.0.1
```
[root@linux]# iptables -t nat -I PREROUTING -p tcp --dport 80 -j DNAT --to 192.168.0.1
```

### 将80端口的流量转发至192.168.0.1的8080端口
```
[root@linux]# iptables -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.0.211:8080
```

### 如果需要本机也可以访问,则需要配置OUTPUT链
```
iptables -t nat -A OUTPUT -d localhost -p tcp --dport 80 -j REDIRECT --to-ports 8080
```
(********特别注意:本机访问外网的端口会转发到本地,导致访不到外网,如访问yown.com,实际上是访问到本地,建议不做80端口的转发或者指定目的 -d localhost):

### 更新防火墙规则
```
[root@linux]# service iptables save
[root@linux]# service iptables restart
```


全部评论: 0

    我有话说: