You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何仅允许通过私有IP访问EC2实例上的NFS服务端口?

可行替代方案汇总

针对你的需求——让NFS服务仅接受内部网络请求,同时允许S3服务对外公开,以下是几个实用的替代方案:

1. 利用实例本地防火墙(iptables)做精准过滤

安全组无法区分请求是来自内网原生流量还是经IGW转发的公网流量,但你可以在EC2实例上用iptables(或ufw/firewalld)基于源IP范围做端口限制:

  • 仅允许VPC内网CIDR、VPN连接的本地网段访问NFS相关端口(通常是2049,还要注意RPC关联端口111、32768-65535)
  • 直接拒绝所有其他来源的NFS端口请求
  • 保留S3服务端口(如80/443)的全量访问权限

示例iptables配置命令:

# 允许VPC内网(示例CIDR:10.0.0.0/16)访问NFS相关端口
iptables -A INPUT -p tcp -s 10.0.0.0/16 --dport 111 -j ACCEPT
iptables -A INPUT -p tcp -s 10.0.0.0/16 --dport 2049 -j ACCEPT
iptables -A INPUT -p tcp -s 10.0.0.0/16 --dport 32768:65535 -j ACCEPT
# 允许VPN本地网段(示例:192.168.0.0/24)访问NFS
iptables -A INPUT -p tcp -s 192.168.0.0/24 --dport 111 -j ACCEPT
iptables -A INPUT -p tcp -s 192.168.0.0/24 --dport 2049 -j ACCEPT
iptables -A INPUT -p tcp -s 192.168.0.0/24 --dport 32768:65535 -j ACCEPT
# 拒绝所有其他来源的NFS请求
iptables -A INPUT -p tcp --dport 111 -j DROP
iptables -A INPUT -p tcp --dport 2049 -j DROP
iptables -A INPUT -p tcp --dport 32768:65535 -j DROP
# 允许S3服务端口(示例80/443)的所有访问
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

配置完成后记得保存规则,避免重启实例后失效:

  • Debian/Ubuntu:iptables-save > /etc/iptables/rules.v4
  • RHEL/CentOS:service iptables save

2. 拆分服务到独立EC2实例

把S3和NFS服务分离到两个不同的EC2实例,从根本上隔离公网访问:

  • S3服务实例:分配公网IP,安全组开放对应端口给0.0.0.0/0,同时保留内网访问权限
  • NFS服务实例:仅分配私有IP,不关联公网IP/弹性IP,安全组仅开放NFS端口给VPC内网和VPN网段

这种方案隔离性更强,无需复杂的防火墙配置,后续维护也更简单。

3. 用VPC网络ACL做子网层面限制

网络ACL是VPC级别的无状态防火墙,可在子网维度补充安全组的不足:

  • 给NFS服务所在子网配置网络ACL,入站规则仅允许VPC内网、VPN网段的流量访问NFS端口
  • 拒绝所有其他来源的NFS端口流量
  • 同时允许所有来源访问S3服务的端口

注意:网络ACL是无状态的,必须同时配置对应的出站规则(比如允许NFS服务的响应流量返回)。

4. 基于AWS PrivateLink实现内网专属访问

如果需要跨VPC或多VPN场景访问NFS,且不想频繁修改安全组,可以用AWS PrivateLink:

  1. 在NFS实例所在VPC创建VPC端点服务,关联NFS实例的安全组
  2. 其他需要访问NFS的VPC/本地网络,通过创建VPC端点来连接该服务
  3. NFS实例的安全组仅允许来自VPC端点的流量访问NFS端口

后续新增VPC或VPN时,只需创建对应VPC端点即可,无需修改NFS实例的安全组规则。

内容的提问来源于stack exchange,提问作者ashish

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 14:48:15