iptables设置禁止公网访问
时间: 2023-02-12 17:08:29 浏览: 332
首先,打开终端并使用root用户登录。然后执行以下命令:
```
iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -i eth0 -j DROP
```
其中,eth0为网卡名称,22,80,443是端口号,分别是ssh,http,https。这样设置只允许从公网访问22,80,443端口,其余端口都不能访问。
最后,使用以下命令保存规则:
```
service iptables save
```
相关问题
iptables设置禁止ping
### 回答1:
要禁止ping,你可以使用以下命令:
```
sudo iptables -A INPUT -p icmp --icmp-type 8 -j DROP
```
这条命令会将ICMP请求报文(也就是ping)加入到INPUT链的尾部,并使用DROP目标拒绝这些请求。
注意:这条命令只会对新的连接生效,对于已经建立的连接,不会产生影响。
如果你想恢复ping功能,可以使用以下命令:
```
sudo iptables -D INPUT -p icmp --icmp-type 8 -j DROP
```
这条命令会删除INPUT链中的这条规则。
### 回答2:
iptables是一个用于Linux系统的防火墙工具,它可以帮助我们设置规则来限制网络流量。要禁止ping,我们需要在iptables中添加一条规则来阻止发往我们的计算机的ICMP请求。
以下是一种简单的方法来设置iptables以禁止ping:
首先,打开终端并以root用户身份登录系统。
然后,输入以下命令以查看当前iptables规则:
```shell
iptables -L
```
你将会看到像这样的输出:
```shell
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
```
接下来,输入以下命令以添加一个新的规则来限制ICMP流量:
```shell
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
```
这条规则将会阻止所有发往我们的计算机的ping请求。
最后,再次输入以下命令以确认规则已设置成功:
```shell
iptables -L
```
你将会看到类似下面的输出:
```shell
Chain INPUT (policy ACCEPT)
target prot opt source destination
DROP icmp -- anywhere anywhere icmp echo-request
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
```
通过这些步骤,我们已经成功设置了iptables来禁止ping。现在,当有人尝试ping我们的计算机时,它们将会收到回显请求超时的错误。
### 回答3:
为了禁止其他网络设备对本机进行ping操作,可以使用iptables命令设置相应规则。具体步骤如下:
1. 进入终端或shell界面,以root或具有管理员权限的用户身份登录。
2. 使用以下命令检查系统中是否已安装iptables:`iptables --version`。如果没有安装,需要先安装iptables工具。
3. 使用以下命令创建一个新的iptables链,名为“ICMP”(可根据个人喜好自定义链的名称):`iptables -N ICMP`。
4. 使用以下命令添加一条规则,将该链应用到INPUT链中,即接收输入的数据包链:`iptables -A INPUT -j ICMP`。
5. 使用以下命令在ICMP链中添加一条规则,禁止ping操作:`iptables -A ICMP -p icmp --icmp-type echo-request -j DROP`。
6. 使用以下命令检查是否已成功添加规则:`iptables -L`。将会列出当前的iptables规则,可以确认新的规则已生效。
现在,其他设备再尝试对本机进行ping操作时,将会被iptables规则拦截并丢弃相应的数据包,从而达到禁止ping的目的。如需恢复ping功能,只需删除相应的规则即可。可以使用以下命令删除添加的规则:`iptables -D INPUT -j ICMP`,然后使用以下命令删除新创建的链:`iptables -X ICMP`。
值得注意的是,在某些情况下,禁止ping操作可能会影响到某些网络功能的正常使用,如网络诊断或监控等。因此,在设置规则之前,需要评估是否确实需要禁止ping操作,并根据实际需求进行操作。
iptables设置IP访问白名单
iptables是一个Linux系统中的防火墙工具,它允许管理员通过规则集来控制进出网络的数据包。设置IP访问白名单意味着只允许指定的一组IP地址或IP范围访问某个服务或端口。以下是基本步骤:
1. 打开终端并编辑iptables规则:
```
sudo nano /etc/sysconfig/iptables 或者 sudo iptables -L -n -t filter --line-numbers
```
2. 创建一个新的规则链(例如`INPUT`链),如果还没有创建的话:
```
sudo iptables -N WHITE_LIST
```
3. 添加允许的IP到白名单,例如添加单个IP:
```
sudo iptables -A WHITE_LIST -s IP_ADDRESS -j ACCEPT
或者添加IP范围:
sudo iptables -A WHITE_LIST -s IP_RANGE/NETMASK -j ACCEPT
```
`IP_ADDRESS`替换为你想要允许的IP,`IP_RANGE`和`NETMASK`分别是IP范围和子网掩码。
4. 将白名单规则应用到`INPUT`链,使其生效:
```
sudo iptables -I INPUT 0 -j MARK --set-mark 1
sudo iptables -I INPUT 1 -m mark --mark 1 -j WHITE_LIST
```
5. 检查配置是否成功,确认新的白名单规则已加入:
```
sudo iptables -L -n -t filter --line-numbers
```
6. 如果需要永久保存设置,你需要将更改写入内核配置文件:
```
sudo service iptables save
```
阅读全文