It's not always easy to set up 10 identical servers. That's why this section will help you have a clean and controlled installation.
preseed.cfg
You must first create the preconfiguration file and place it where you want. Here's the preseed I use for Debian Wheezy (check my Git for the most recent version):
I've highlighted a little trick to quickly set up a temporary web server to deliver the preseed without having to remake an ISO image. I've also highlighted the login and password part (soleil) which should be changed :-)
Loading the Preconfiguration File
For loading this file, you can choose what you want (file, http...) during the installation boot (grub):
# Web server versionpreseed/url=http://host/path/to/preseed.cfg
# CD versionpreseed/file=/cdrom/preseed.cfg
# USB key versionpreseed/file=/hd-media/preseed.cfg
You can also edit the txt.cfg file on a CD-ROM to tell it where the file is located:
Using a DHCP Server to Specify Preconfiguration Files
It's also possible to use DHCP to specify a file to download from the network. DHCP allows you to specify a filename. Normally this file is used for network booting. If it's a URL, the installation system that allows network-type preconfiguration will download the file and use it as a preconfiguration file. Here's an example showing how to configure the dhcpd.conf file belonging to version 3 of the ISC DHCP server (debian package dhcp3-server).
Note that the above example only allows the file for DHCP clients that identify themselves as "d-i". Other DHCP clients are not affected. You can also put the text in a paragraph targeted at a single host to avoid preconfiguring all installations done in your network.
A good way to use this technique is to only preconfigure values related to your network, for example the name of your Debian mirror. This way installations automatically use the right mirror and the rest of the installation can be done interactively. You need to be very careful if you want to automate the entire installation with DHCP-type preconfiguration.