frp icon indicating copy to clipboard operation
frp copied to clipboard

[sharing ftp over frp demo][ frp之ftp案例分享 ] 227 Entering Passive Mode( IP, xxx, xxx )

Open weiqi-chen opened this issue 6 months ago • 3 comments

Describe the feature request

我希望可以将这个配置案例添加到文档当中,我发现在issue中很多人遇到问题,但是忽略了一个细节导致失败。我留意到了并且成功通过frp建立ftp链接。在此我分享我的经验。 I hope to add this configuration case to the documentation. I have noticed that many people encounter issues in the issue tracker but overlook a detail that leads to failure. I noticed this detail and successfully established an FTP connection using FRP. Here, I am sharing my experience.

我不会对细节进行过多的讲解,我只会讲关键点。 I won’t go into too much detail, I will only cover the key points.

一个关键的错误消息: A key error message:

FTP 227 Entering Passive Mode

192.168.1.100这个IP地址是ftp server的私有IP地址。frp所有监听的都是回环地址,因此此处应该是127.0.0.1才行! The IP address 192.168.1.100 is the private IP address of the FTP server. FRP listens on loopback addresses, so it should be 127.0.0.1 here!

下方关键配置解决这个问题: The key configuration below solves this problem:

image

A机器:ftp server机器运行frp,通过proxies配置,将本地ftp端口、被动连接端口映射出去: Machine A: The FTP server machine runs FRP. Through the proxies configuration, it maps the local FTP port and passive connection port.

{{- range $_, $v := parseNumberRangePair "21,49000-49009" "21,49000-49009" }}
[[proxies]]
name = "rpi-ftp-{{ $v.First }}"
type = "stcp"
secretKey = "aaaa"
localIP = "127.0.0.1"
localPort = {{ $v.First }}
{{- end }}

B机器要访问ftp server的机器运行frp,通过visitors配置,监听本地2149000-49009端口,并将请求转发到proxiesMachine B: To access the FTP server, this machine runs FRP with the visitors configuration, listening on local ports 21 and 49000-49009, and forwarding requests to proxies.

{{- range $_, $v := parseNumberRangePair "21,49000-49009" "21,49000-49009" }}
[[visitors]]
name = "rpi-ftp-{{ $v.First }}"
servername = "rpi-ftp-{{ $v.First }}"
type = "stcp"
secretKey = "aaaa"
bindAddr = "127.0.0.1"
bindPort = {{ $v.First }}
{{- end }}

这样B机器访问ftp://127.0.0.1即可访问A机器的FTP服务器。 With this setup, Machine B can access the FTP server on Machine A by using ftp://127.0.0.1.

Describe alternatives you've considered

No response

Affected area

  • [X] Docs
  • [ ] Installation
  • [ ] Performance and Scalability
  • [ ] Security
  • [X] User Experience
  • [ ] Test and Release
  • [ ] Developer Infrastructure
  • [ ] Client Plugin
  • [ ] Server Plugin
  • [ ] Extensions
  • [ ] Others

weiqi-chen avatar Aug 23 '24 17:08 weiqi-chen