An editor - QuArK, Worldcraft or one of the others, I'd say those are probably the most popular.
You'll need some compile tools, the best ones are by AguirRe:
http://user.tninet.se/~xir870k/
Who also has alot of documentation that'll help if you get stuck.
The readmes in the editors will tell you how to set it up and there are quite alot of sites for editing as well, most are only archives now but still useful - there's links all over Q1 sites.
Any other problems try the Mapping Help thread here and you'll probably get a landslide of answers.
Then build a map . . .
Good Luck.