Where are you trying to ftp from?? Where is the client?
So this server is on say 192.168.0.100 behind pfsense.. And you out on the internet want to ftp to it..
So you forwarded 21 to your ProFTPD Server (ProFTPD) [192.168.0.122] on pfsense.. Did you forward the passive ports? You setup in proftpd to use?
Did you setup proftpd to send your correct public IP?
I connected to the IP you use to connect to the forums so I could see if ftp even answered.
For passive to work, you also have to forward the ports the server will use for its passive ports.. I can not get logged into see what it sends, If you PM me an account that would work I could see what its sending for the port, or try active where it would connect to my client.
Is your server a plesk?
It defaults to a really large passive range 49152-65535 , I would for sure change that to something more like 100 ports or even just 10 if you don't have lots of clients at the same time.. Then you need to forward those ports on pfsense to I assume 192.168.0.122, without the passive ports being forwarded then no the data channel will never work when the client uses passive mode. Even if you told the client to use the IP you connected to when the server sends rfc1918 IP.