Hi Daiba. Welcome to LinuxQuestions.
If you want to run a server (like ftp), then you must open a port in your firewall for it. Otherwise, a client from the outside can't communicate with it.
One alternative (but that's not a perfect solution either) is to use a non-standard port for the ftp server. Then, it's not obvious for a hacker that it's an ftp server on the other end. You would then have to tell your friends to connect to the server using an address like:
Make sure that your ftp server software is up to date and that it hasn't any known security flaws.