The first thing you have to accept is that you're putting a machine directly on the internet. Even if you have your machine behind a router and are using your router's port forwarding features to direct specific traffic through, you're still decreasing your network security a little bit.
Now that we're past that very important disclaimer...
My approach would be to have a linux or BSD machine running sshd. Configure sshd to allow sftp, but only for very specific users. Keep your OS and openssh components up to date.
For remote access, you can use any file transfer program which supports SFTP (e.g. Filezilla)
I'm not familiar with openfiler, but this looks like it acts as a network share on your LAN. It's likely listening on a specific port. You may be able to route traffic for that port specifically to the openfiler server.
If you're just looking for upload/download, I think sticking with a simple, proven package like openssh is a better way to go.