请教iptables对指定端口的IP白名单设置

请教iptables对指定端口的IP白名单设置,第1张

iptables -I INPUT -s 192.168.1.123(指定ip白名单) -p tcp --dport 21 -j ACCEPT

iptables -I INPUT -s 192.168.1.123(指定ip白名单) -p tcp --dport 22 -j ACCEPT

这样能满足您的要求吗 您可以试一下 希望能够帮助到您

首先先整理下思路,确认以下是否调整

1、防火墙(本机、客户机)

2、FTP目录的权限

3、客户机是否是IPv6网络

4、客户机的网关限制了外网ftp

如果能登录,不能使用ls或者dir命令。

那就说明,主要问题在端口被防火墙控住。

提示语句:

200 PORT command successful. Consider using PASV.

425 Failed to establish connection.

这时候,可以在ftp下使用命令:quote PASV

试试用以被动模式连接。

一般DOS命令行下都是默认以PORT主动模式连接。

即,端口21监听,处理控制信息,再以端口20连接客户端进行数据传送。

而,经常的,通过外网的NAT的,基本端口20的数据连接都会被禁止掉。

所以,如果想对外网开放ftp,最好使用PASV模式。

PASV被动模式是指,以端口21监听,有连接请求时,随机开放一个比较大的端口号来处理数据传输。

vsftp中,通过编辑 /etc/vsftp.conf 实现启用PASV连接。

sudo vi /etc/vsftp.conf

在配置文件中添加下面语句:

pasv_enable=YES

pasv_min_port=6000

pasv_max_port=7000

也即,启动PASV连接模式,开放6000-7000端口号作为数据传送端口。

此外,如果是对外网开放,必须在路由器的转发规则中,开放21端口。

为了保险,可以将6000-7000端口也写入到iptables中白名单中。

命令:

sudo iptables -A INPUT -p tcp --dport 6000:7000 -j ACCEPT

在ubuntu中一般可以不用,因为ubuntu虽然有iptables,但默认是没有规则的,

也即,不会设置端口限制,但其他版本就最好加上哈。

此外,如果带有selinux的,最好也关闭。

ubuntu是默认没安装selinux。

像redhat、centOS之类的,

修改/etc/selinux/config文件中的SELINUX="" 为disabled ,然后重启。

参考的一些资料,希望对你有用

自定义链

添加白名单和黑名单

iptables -N whitelist

iptables -N blacklist

要添加规则

iptables -A whitelist -s 192.168.0.0/24 -j ACCEPT

iptables -A blacklist -s 207.46.130.0/24 -j DROP

iptables -A blacklist -s 207.46.250.0/24 -j DROP

然后,指定这些链作为一个目标链

iptables -A INPUT -j whitelist

iptables -A INPUT -j blacklist

iptables -A OUTPUT -j whitelist

iptables -A OUTPUT -j blacklist

iptables -A FORWARD -j whitelist

iptables -A FORWARD -j blacklist

现在已成功列入白名单网络192.168.0.0/24,并列入黑名单microsoft.com一些C类地址范围。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/65221.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-02-28
下一篇2023-02-28

发表评论

登录后才能评论

评论列表(0条)

    保存