I use a VPN for this. The file server runs poptop. Windows machines connect to it via the built in VPN client. SAMBA to share the folder, and voila.
Use WINS for naming for extra credit so the Windows machines don't need shortcuts to things like \192.168.0.x\sharename on the desktop.