Evaporust is great stuff. It won't hurt adjacent paint and it safe, but it's expensive and has a limited life span.
For general derusting I'm a fan pf phosphoric acid. If properly diluted it won't hurt paint but I wouldn't leave it dwell on painted surfaces too long. Home Depot in the US sell a product know as Kleenstrip Etch and prep (or something to this effect.) It can be recycled again and reused too since it doesn't loose effectiveness like Evaporust does.