@johnpoz I am supporting a legacy system that custom accesses the files in code to bring down documents. The old language used does not support anything but ftp. I am rewriting it and will look at other solutions. For now, 24 remote office locations and 40 desktops, can't fool around.
I use vsftp. Other FTP server programs will have settings that need to change just like this, you need to find them and set them on the FTP server config.
I fixed it like this:
On a Ubuntu linux server running vsftp
To enable passive mode, set the following configuration options in your vsftp.conf:
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30099 (Any port range you want to try)
pasv_address=(Fixed Internet facing IP address)
Then open these ports in pfsense to the server under the NAT menu
Port forward 21 to the ftp server
port forward the same range from the settings above to the ftp server
30000 to 30099