# 安全

## 1 iptables 规则

```
常用命令：
-A 追加规则-->iptables -A INPUT
-D 删除规则-->iptables -D INPUT 1(编号)
-R 修改规则-->iptables -R INPUT 1 -s 192.168.12.0 -j DROP 取代现行规则，顺序不变(1是位置)
-I 插入规则-->iptables -I INPUT 1 --dport 80 -j ACCEPT 插入一条规则，原本位置上的规则将会往后移动一个顺位
-L 查看规则-->iptables -L INPUT 列出规则链中的所有规则
-N 新的规则-->iptables -N allowed 定义新的规则

通用参数：
-p 协议  例：iptables -A INPUT -p tcp
-s源地址 例：iptables -A INPUT -s 192.168.1.1
-d目的地址 例：iptables -A INPUT -d 192.168.12.1
-sport源端口 例:iptables -A INPUT -p tcp --sport 22
-dport目的端口 例:iptables -A INPUT -p tcp --dport 22
-i指定入口网卡 例:iptables -A INPUT -i eth0
-o指定出口网卡 例:iptables -A FORWARD -o eth0

-j 指定要进行的处理动作
常用的ACTION：
DROP：丢弃
REJECT：明示拒绝
ACCEPT：接受
```

### 1.1 添加规则

{% code lineNumbers="true" %}
```
# 添加所有机器
iptables -A INPUT -p tcp -s 127.0.0.1 --dport 6000:7999 -j ACCEPT
iptables -A INPUT -p tcp -s xx.xx.xx.xx --dport 6000:7999 -j ACCEPT
# 拒绝所有 IP
iptables -A INPUT -p tcp --dport 6000:7999 -j DROP
```
{% endcode %}

### 1.2 查询规则

{% code lineNumbers="true" %}
```
iptables -L -n
```
{% endcode %}

### 1.3 删除规则

{% code lineNumbers="true" %}
```
iptables -L -n --line-number
iptables -D INPUT 3 #删除INPUT的第三条已添加规则，这里3代表第几行规则
```
{% endcode %}
