O SAMBA é provavelmente o melhor lugar para começar. Para citar seu próprio site -
Samba is the standard Windows interoperability suite of programs for Linux and Unix.
Samba is software that can be run on a platform other than Microsoft Windows, for example, UNIX, Linux, IBM System 390, OpenVMS, and other operating systems. Samba uses the TCP/IP protocol that is installed on the host server. When correctly configured, it allows that host to interact with a Microsoft Windows client or server as if it is a Windows file and print server.
Aqui está um tutorial