As already mentioned "dpkg -S file" will show which package installed which file. If you install apt-file, you can also search for which package, installed or not, contains a file:
$ apt-file search /etc/apache2/ports.conf
apache2.2-common: /etc/apache2/ports.conf
$ aptitude search apache2.2-common
p apache2.2-common - Apache HTTP Server common files
$ dpkg -S /etc/apache2/ports.conf
dpkg-query: no path found matching pattern
/etc/apache2/ports.conf