I started by working through the temp services. Usually they have some general-purpose programming gigs. Once I got a few projects under my belt (and did some freelance programming work in the area) I went online and started spamming all the resume sites. Then the gigs come to you. Ideally you want to move into a word-of-mouth situation, but sometimes it takes a bit to work up to that.
Special ones for freelancing. I had good results with Jobserve, but I am not sure how popular they are in the US? I did not upload my resume on Jobserve, only contacted a few agents who were searching. They took me on file and that was it. I uploaded my CV on Gulp.de, and got one contract from there, but it took a while.