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

如何通过FileZilla访问GKE FTP服务器?配置后连接超时排查

解决Kubernetes中FTP服务连接超时的问题

看起来你遇到的核心问题是FTP被动模式的端口未正确配置,加上几个小的配置疏漏,导致客户端无法建立完整的FTP连接。我帮你梳理下需要修正的地方:

1. 补上FTP被动模式的关键配置

FTP协议分控制连接(21端口)和数据连接,现代客户端默认用被动模式,需要额外的端口范围来传输数据。你用的fauria/vsftpd镜像默认使用21100-21110作为被动端口,但你的配置里完全没处理这些端口:

修改Deployment.yaml

在容器的env和ports部分添加以下内容:

containers:
- name: my-ftp-container
  image: fauria/vsftpd
  ports:
  - containerPort: 21
    protocol: TCP
    name: "ftp-server"
  # 添加被动端口范围的容器端口暴露
  - containerPort: 21100
    protocol: TCP
    name: "ftp-passive-start"
  - containerPort: 21110
    protocol: TCP
    name: "ftp-passive-end"
  volumeMounts:
  - mountPath: "/home/vsftpd"
    name: task-pv-storage
  env:
  - name: FTP_USER
    value: "user"
  - name: FTP_PASS
    value: "password"
  # 添加被动模式的环境变量
  - name: PASV_MIN_PORT
    value: "21100"
  - name: PASV_MAX_PORT
    value: "21110"
  - name: PASV_ADDR_RESOLVE
    value: "YES" # 让容器自动解析外部访问的IP,适配LoadBalancer动态IP场景

2. 更新Service.yaml,映射被动端口

你的Service只开放了21端口,必须把被动端口也映射出去。GCE LoadBalancer支持端口范围配置,这样不用逐个写端口:

apiVersion: v1
kind: Service
metadata:
  name: my-ftp-service
  labels:
    app: my-ftp
spec:
  type: LoadBalancer
  ports:
  - port: 21
    targetPort: 21
    nodePort: 30080
    name: ftp-control
  # 添加被动端口范围映射
  - port: 21100
    portRange: 21100-21110
    targetPort: 21100-21110
    name: ftp-passive
  selector:
    app: my-ftp

3. 清理无用的Ingress配置

Ingress主要是为HTTP/HTTPS服务设计的,不支持原生FTP协议,你写的Ingress.yaml不仅没用,还存在serviceName写错的问题(你实际的Service叫my-ftp-service,但Ingress里写的是ftp-ftp-service)。直接删除这个资源即可:

kubectl delete ingress ftp-ftp-ingress

4. 确认GCE防火墙规则

GCE会自动为LoadBalancer创建对应的防火墙规则,但为了保险起见,你可以手动确认:

  • 允许TCP端口21和21100-21110的入站流量到你的K8s集群节点
  • 如果用NodePort访问,还要确保节点的30080和32100-32110端口(对应被动端口的NodePort范围)在防火墙中开放

最后验证步骤

  1. 重新部署更新后的资源:
kubectl apply -f Deployment.yaml
kubectl apply -f Service.yaml
  1. 等待LoadBalancer分配好外部IP,用kubectl get service my-ftp-service查看
  2. 用FileZilla连接时,使用外部IP+21端口(或者NodePort 30080),保持默认的被动模式即可

内容的提问来源于stack exchange,提问作者黃皓哲

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 07:18:09