Well, I have been debating this for years. I rarely have issues with rust, but when I came in to find me recently restored Centex mill with rust scabs in several places, it got serious!

I learned to avoid modern motor oil. It has additives in it to attract and emulsify water - not good. Non-detergent motor oil is much better. So I have been using spindle oil and way oil for the most part, but i still have to keep an eye on it.
Air circulation helps. I keep a ceiling fan running all the time. I also added window AC units which keeps humidity down. I also have a $200 dehumidifier for periods when I will be absent and humidity is high.
Lastly, recent threads on another forum indicate that lanolin is the ultimate rust preventer. I bought a pound of the pure stuff on ebay and will mix it 80/20 with mineral spirits, to be applied with a trigger spray bottle.