Ive been blasted for this in the past, but here goes my rust preventative concoction which I have used for many years stopping rust in Ohio winters very successfully:
10 Toilet bowl wax rings (the cheap ones)
2 gallons of kerosene (AKA liquid paraffin)
2 quarts of new 30 ND motor oil
1 pint of boiled linseed oil
Similarly to the wax, I'm a bit unsure about the boiled linseed oil. This is unstable, which is of course why it works as a paint. It'll set relatively quickly, though this process may be slowed (or perhaps prevented from completing altogether, don't know) by the other ingredients.
In this context I think it MIGHT be desirable to use something more stable, which will set more slowly. Castor oil is probably the most stable generally available vegetable oil (which of course is why it works as a 2-stroke oil) but its fairly expensive.
Canola oil is relatively stable, and its non-GM ancestor rapeseed oil was (is?) used as an industrial lubricant, notably in marine steam engines where it was said to be especially resistant to wash-off. I've used it as a tyre treatment (a whole other, and much dodgier area of experiment) but havn't tried it as a rust proofer.
I've used old sunflower oil because I had quite a lot of it. Its not as stable as Canola, but its more stable than linseed, and its cheap, so a compromise.
All the vegetable oils potentially grow mould, especially in enclosed spaces, though the other ingredients may suppress this to some extent.
Soy bean oil seems especially bad for this so I no longer use it.