As you probably know, you need an aluminum primer, and need to scuff it up pretty good.
Rust-Oleum® Professional Aluminum Primer is a specially formulated base coat for aluminum and resists the problems of blistering, flaking, or peeling paint.
www.rustoleum.com
? x2
I've painted quite a bit of aluminum lately and the Rusto Pro Series Aluminum Primer that F350joe mentioned has worked out great for me too. I scuff everything first with 80 or 100 grit then blow it off with air. Wipe down thoroughly with acetone or something like Duplicolor degreaser/cleaner. Then hit it with a tack cloth right before hitting it with the primer. I followed the directions on the can closely and the adhesion has always been good and has always taken the topcoat nicely.
After you've primed you can really topcoat with whatever you want, but if you want a nice, durable, gloss or semi-gloss finish it's going to be hard to beat Rustoleum Oil Based that comes in quarts (gallons too if you need a lot). It's oil, but because it's oil it levels out really nicely (but be careful if painting vertically because it will sag if the coat is too thick) and leaves a smooth, really durable finish that's easily washed or wiped down. You can get it at any of the big box stores and it's cheap.
It's been my experience that the Rusto oil based resists scratches and chips really well provided you give it the full recommended cure time before beating it up. However, if you do get deep scratches or chips you will see any touch ups you try to do. If you plan on doing regular touch ups then I'd probably recommend using some sort of spray. Rusto also makes a "professional" grade spray in gloss black (comes in a silver can like the alu primer) which is also pretty good, but not as durable in my experience as what comes in the quarts.
If you end up using something else that works out well be sure to let us know. Good luck!