Based on this answer do tzitzit have to be white?
Where is the source that they should be?
I know that they are supposed to have at least one blue (techelet) string, but even that is disputed nowadays.
The Gemara talks about "white strings" vs. techelet strings.
As I heard it from Rabbi Hershel Shachter mp3:
Rambam reads "white" as "matching the color of the garment." Thus, a pink garment would have pink strings (except for one techelet). The other Rishonim read "white" as "white" (or at least the natural color of the fiber, not sure you'd have to bleach it.)
While it's quite clear that the halacha here doesn't follow the Rambam, to avoid contradicting his view, we prefer a white garment -- hence, white strings according to everyone.
The Shaarei Taamei HaMitzvos says that the reason Tzitzis is white is since white is the color of Selicha, Kapara, and Rachamim.
See Machzor Vitri.