请使用iptables 规则设定,只允许 192.168.0.7 访问9001 端口
时间: 2024-02-23 16:01:55 浏览: 127
使用iptables规则设置只允许192.168.0.7访问9001端口的命令如下:
```shell
iptables -A INPUT -p tcp --dport 9001 -s 192.168.0.7 -j ACCEPT
iptables -A INPUT -p tcp --dport 9001 -j DROP
```
解释如下:
- 第一行命令表示允许来自IP地址为192.168.0.7的TCP连接访问9001端口。
- 第二行命令表示拒绝除192.168.0.7以外的所有TCP连接访问9001端口,因为这条规则放在第一条规则之后,所以只有不符合第一条规则的连接才会被这条规则拦截。
这样设置后,只有来自192.168.0.7的TCP连接才能访问9001端口,其他的TCP连接都会被拒绝。需要注意的是,这些规则是临时生效的,系统重启后会失效,如果需要长期生效,可以将规则保存到iptables配置文件中。
相关问题
用iptables添加一个规则允许192.168.0.123访问本机8080端口
在Linux系统中,你可以使用iptables命令行工具来配置防火墙规则。为了允许来自IP地址192.168.0.123的请求访问本机的8080端口,你需要创建一个ACCEPT规则。以下是设置这个规则的基本步骤:
1. 首先,打开终端并以root权限登录(如果尚未以root身份运行):
```bash
sudo su
```
2. 然后,进入iptables的管理模式:
```bash
iptables -t nat -L
# 如果需要新建链,则输入:
iptables -t nat -A PREROUTING
```
3. 接下来,添加一个新的规则,允许对源IP为192.168.0.123的数据包进行NAT(网络地址转换),将其映射到本地的8080端口。在这个例子中,假设你的服务器监听的是所有内部网卡(eth0),你可以使用下面的命令:
```bash
iptables -i eth0 -p tcp --dport 8080 -s 192.168.0.123 -j DNAT --to-destination localhost:8080
```
4. 最后,保存更改并应用新的规则使其永久生效:
```bash
iptables-save > /etc/sysconfig/iptables
service iptables save
service iptables restart
```
现在,192.168.0.123应该可以访问你的服务器的8080端口了。
如何使用IPtables 禁止192.168.30.101~105 使用 TCP 访问 192.268.30.220 的 445 端口
在Linux系统中,你可以使用iptables防火墙工具禁止特定IP地址范围通过TCP访问指定端口。以下是步骤:
1. 首先,打开终端并以root权限登录,因为iptables需要超级用户权限才能修改规则。
```sh
sudo su
```
2. 进入到iptables配置模式。输入以下命令:
```sh
iptables -P INPUT DROP # 先设置默认策略为拒绝所有连接
iptables -t filter -A INPUT -s 192.168.30.101/24 -p tcp --dport 445 -j DROP # 添加针对指定IP范围的阻止规则
```
这里的 `-s` 表示源地址,`/24` 指定了一个网络掩码,代表192.168.30.101~192.168.30.254 这一范围内的所有IP。`--dport 445` 指定目标端口为445,通常这是SMB服务使用的端口。
3. 保存更改使其永久生效。如果你希望规则只在当前会话有效,可以添加 `-P INPUT ACCEPT` 来临时允许其他流量;如果想将规则写入/etc/sysconfig/iptables文件以便开机自动加载,则运行:
```sh
iptables-save > /etc/sysconfig/iptables
```
然后重启iptables服务:
```sh
service iptables save && service iptables restart
```
现在,来自192.168.30.101到105网段的IP将无法通过TCP访问192.168.30.220的445端口了。
阅读全文