如何限制指定IP地址访问自己的FTP服务器?,如何设置

要限制指定IP地址访问FTP服务器上的存储桶,核心方法是配置FTP服务本身的IP白名单,并结合系统防火墙规则,对于云存储桶,直接使用其内置的IP白名单功能,两种方式都能有效控制访问来源,降低数据泄露风险。

为什么需要限制IP访问FTP服务器

FTP协议默认不加密,传输过程中账号密码容易被截获,如果FTP服务器暴露在公网,暴力破解是常见威胁,业内专家指出,大部分FTP攻击来自未知IP的持续扫描,限制IP访问能直接减少攻击面,避免未授权IP尝试登录,对于存储敏感数据的桶(目录或云存储桶),更应该只允许固定IP或网段访问,这一策略在中小企业和个人站长中广泛应用,是基础安全配置的一部分。

2-FTP服务器配置-IP地址和域限制
加载中
2-FTP服务器配置-IP地址和域限制

怎么限制IP访问FTP服务器:三种主流方法

下面介绍三种具体实现方式,分别适用于不同场景。

FTP服务器设置IP白名单

以最常见的vsftpd为例,利用系统tcp_wrappers组件实现IP白名单,操作路径如下:

  • 编辑/etc/hosts.allow,添加一行:vsftpd: 192.168.1.100(允许的IP地址)
  • 编辑/etc/hosts.deny,添加一行:vsftpd: ALL(拒绝其他所有IP)
  • 重启vsftpd服务:systemctl restart vsftpd

注意:vsftpd编译时需要支持tcp_wrappers,大多数Linux发行版默认开启,如果使用其他FTP服务(如ProFTPD),也可通过类似方式配置,此方法优点在于配置简单,只需修改两个文件即可生效,但缺点是无法精确到用户级别,白名单内IP可以访问所有FTP用户。

使用系统防火墙控制IP访问

通过iptables或firewalld限制FTP端口(默认为21)的访问来源,适用于所有FTP服务。

如何限制指定IP地址访问自己的FTP服务器?,如何设置

iptables示例:

  • 允许指定IP:iptables -A INPUT -p tcp --dport 21 -s 192.168.1.100 -j ACCEPT
  • 拒绝其他所有IP:iptables -A INPUT -p tcp --dport 21 -j DROP
  • 保存规则:iptables-save > /etc/iptables/rules.v4

firewalld示例:

  • 使用富规则:firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="21" accept'
  • 重新加载:firewall-cmd --reload

如果FTP使用被动模式,还需要开放被动端口范围(如iptables -A INPUT -p tcp --dport 30000-31000 -j ACCEPT),防火墙规则的优点在于独立于FTP服务,即使更换FTP软件,规则依然生效,但需注意规则顺序,避免被其他规则覆盖。

限制指定IP访问桶(云存储桶的IP白名单)

如果桶是云存储(如简米云OSS、酷番云COS),直接使用其内置的IP白名单功能,无需自建服务器。

操作路径(以简米云OSS为例):

  • 登录OSS控制台,进入目标Bucket的“权限管理” > “读写权限”。
  • 在“IP白名单”区域,输入允许的IP地址或网段,多个IP用逗号隔开。
  • 保存后,白名单外的IP通过任何方式(包括FTP、API、控制台)访问该Bucket都会被拒绝。

酷番云COS操作路径:

  • 进入存储桶的“权限管理” > “访问策略” > “添加策略”。
  • 选择“允许访问”,指定IP条件为SourceIp,再添加允许的IP。
  • 保存后即时生效。

如何限制指定IP地址访问自己的FTP服务器?,如何设置

云存储的IP白名单通常支持最多1000条规则,且生效时间在5分钟以内,此方法最直接,适合没有自建FTP服务器、直接使用云存储FTP功能的用户,但需注意,云存储的FTP服务可能会额外收费,且白名单只能控制桶级别,无法细分到桶内目录。

自己搭建FTP服务器安全设置:IP限制与桶权限结合

对于需要自建FTP服务器并挂载云存储桶的用户,可以将FTP服务器设为中转,再配合桶的IP白名单,具体步骤如下:

  • 在服务器上安装vsftpd,配置chroot,将用户根目录指向云存储桶的本地挂载点(如/mnt/bucket)。
  • 使用防火墙限制IP访问vsftpd服务端口,只允许特定IP连接。
  • 在云存储桶的控制台中,设置IP白名单为FTP服务器的公网IP(因为客户端必须通过FTP服务器访问桶,桶只信任服务器IP)。
  • 这样,只有白名单中的客户端IP能连接FTP服务器,且FTP服务器只能访问桶(桶的IP白名单仅允许服务器IP),实现双重防护。

注意:如果桶的IP白名单只包含FTP服务器IP,客户端IP无法直接传递到桶,因此桶无法识别客户端真实IP,这种架构适合对桶的访问来源有严格限制的场景,比如只允许内网服务器访问桶。

FTP服务器地址怎么设置IP限制

无论使用哪种方法,都需要明确FTP服务器地址(IP或域名),然后针对该地址配置限制,操作路径如下:

  • 确认FTP服务器地址:ip addr或curl ifconfig.me获取公网IP。
  • 选择限制方式:tcp_wrappers、防火墙或云服务设置。
  • 添加允许的IP:将需要访问的客户端IP加入白名单。
  • 测试:使用允许的IP通过FTP客户端连接,检查是否成功;使用其他IP连接,应被拒绝。
  • 如何限制指定IP地址访问自己的FTP服务器?,如何设置

如果FTP服务器地址是动态IP,建议使用DDNS改为固定域名,再在防火墙中通过域名规则限制(部分防火墙支持),静态IP则直接使用IP地址。

常见问题与解答

Q1:FTP服务器设置IP白名单后,为什么其他IP还能连接?

A:首先检查tcp_wrappers是否生效,运行ldd /usr/sbin/vsftpd | grep wrap确认vsftpd编译时包含libwrap,如果使用防火墙,检查规则顺序,确保拒绝规则在允许规则之后,并且防火墙服务已重新加载,如果FTP服务通过SELinux,可能需要执行setsebool -P ftpd_use_tcpwrappers 1才能启用tcp_wrappers支持。

Q2:限制指定IP访问桶,在简米云OSS上如何操作?

A:进入OSS控制台,选择目标Bucket,点击“权限管理”>“读写权限”,在“IP白名单”中添加允许的IP地址,格式如168.1.0/24,保存后约5分钟生效,白名单最多支持1000条,且修改后原有访问规则会被覆盖,如果桶同时开启了防盗链,IP白名单优先级高于防盗链。

Q3:自己搭建的FTP服务器,能否让不同IP访问不同桶?

A:可以,创建多个FTP用户,每个用户设置不同的根目录(桶目录),然后通过pam_access模块或自定义脚本,在用户登录时检查其IP与用户名的映射关系,但配置较复杂,生产环境推荐使用vsftpd的user_config_dir结合pam_listfile实现,更简单的方法是启动多个FTP服务实例,每个实例监听不同端口,再通过防火墙限制每个端口的IP来源,这样不同IP只能访问对应端口的桶。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://test.idctop.com/article/540537.html

赞 (0)
iOS照片如何自动上传到FTP服务器?,怎么设置
上一篇 2026年8月2日 19:49
佛山企业网站建设特色有哪些,创建设备需要注意什么?
下一篇 2026年8月2日 19:53

相关推荐

  • IPS拦截了正常业务怎么处理,如何快速解决

    IPS误拦正常业务,核心解法是快速定位误报特征、精准加白名单,同时调整检测策略和部署模式,把“误伤率”降到可控范围,这就像小区门口新来了个过度尽责的保安,看见送外卖的、搬家的、修水管的,一律先按“可疑人员”拦下来盘问一遍,业务跑得好好的,突然某个接口被切断,某个IP被拉黑,用户体验直线下降,运维同事的工单系统直……

    2026年8月13日
    100
  • 阿里内部AI大模型是什么?阿里通义千问大模型最新进展

    阿里内部AI大模型通义千问(Qwen)已全面接入阿里云百炼平台,企业可通过API接口实现私有化部署或混合云架构,显著降低算力成本并提升数据安全性,通义千问技术架构与核心能力解析通义千问并非单一模型,而是一个不断进化的模型家族,从早期的Qwen-7B到后续迭代的Qwen-Max、Qwen-Plus,再到开源的Qw……

    2026年6月14日
    3400
  • 服务器网络防火墙怎么配置?如何设置防火墙规则

    服务器网络防火墙是保障业务连续性的第一道防线,其核心价值在于通过精准的策略配置,在抵御恶意攻击的同时最小化对正常业务流量的干扰,在数字化时代,服务器不再仅仅是存储数据的仓库,而是企业对外服务的窗口,一旦这个窗口被黑客撬开,后果往往是灾难性的,许多运维人员初期往往忽视防火墙的重要性,直到遭遇DDoS攻击或数据泄露……

    2026年7月3日
    15400
  • 分布式缓存服务试用到底怎么用?分布式缓存服务试用申请流程

    分布式缓存服务试用是解决高并发场景下数据库瓶颈的最优解,它能显著降低延迟并提升系统吞吐量,建议通过云厂商提供的免费试用额度进行小规模压测验证,在2026年的技术架构演进中,数据访问速度已成为决定用户体验生死的关键因素,传统的单体架构或简单的数据库直连模式,在面对海量用户并发请求时,往往显得力不从心,分布式缓存服……

    2026年7月6日
    11000
  • IIS服务怎么修改已绑定的域名?,怎么制作搜索网站

    在IIS上制作搜索网站并修改已绑定域名,核心是掌握网站创建和绑定配置,通过IIS管理器或appcmd命令可轻松修改域名,无需重建网站,从而快速迁移或更新搜索站点,IIS怎么搭建搜索网站:从安装到上线制作搜索网站的第一步是搭建IIS环境,无论你打算使用ASP.NET、PHP还是纯静态页面,都需要先创建网站并绑定域……

    2026年7月31日
    400
  • 服务器租用和托管怎么选?服务器托管和租用有什么区别

    服务器租用适合业务波动大、需快速上线的场景,托管适合硬件稳定、追求极致性价比的成熟业务,核心差异在于资产归属与维护责任的分担,在数字化转型的深水区,企业不再仅仅将服务器视为冷冰冰的计算单元,而是将其看作支撑业务连续性的“数字心脏”,选择租用还是托管,本质上是在“灵活性”与“控制权”之间做权衡,很多技术负责人在初……

    2026年7月5日
    18800
  • ib over ip_怎样给IB网卡手动配置IP地址?

    开篇点题给IB网卡手动配置IP地址,核心是通过IPoIB协议栈创建虚拟网络接口,然后使用ip addr add或编辑配置文件方式指定IP地址与子网掩码,最后激活接口即可实现IP网络通信,IB over IP 与手动配置 IP 的前置知识什么是 IB over IP 和 IPoIBIB over IP 并不是一个……

    2026年8月18日
    400
  • IE遍历JSON数据库的最佳方法是什么?,有哪些技巧?

    在IE浏览器中遍历JSON数据库,核心在于使用JSON.parse()将字符串转换为对象,然后通过for循环或for…in进行遍历,对于IE8以下版本需引入json2.js polyfill,现代浏览器则直接支持Array.forEach和Object.keys等遍历方法,IE浏览器遍历JSON数据的技术挑……

    2026年8月7日
    200
  • IT基础运维管理与运维管理如何区分,有哪些方法?

    IT基础运维管理是企业IT系统稳定运行的基石,一个成熟的运维管理体系能显著降低业务中断风险并提升运维效率,IT基础运维管理包含哪些关键环节基础设施监控:从硬件到服务的全面覆盖监控是运维的“眼睛”,你需要覆盖服务器、网络设备、存储系统以及数据库中间件的实时状态采集,核心指标包括CPU使用率、内存占用、磁盘IO、网……

    2026年8月18日
    1000
  • 服务器CPU天梯图怎么看,如何选择性价比最高的服务器CPU?

    服务器 CPU 性能天梯图与选型指南由于服务器 CPU 的性能不仅取决于核心数,还受到内存通道数、PCIe 通道数、缓存容量以及指令集优化的影响,因此无法用单一的频率来衡量,以下根据市场主流架构,将服务器 CPU 分为三个梯队进行梳理, Intel Xeon (至强) 系列天梯Intel 的服务器产品线非常成熟……

    2026年7月14日
    1200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注