The invention provides a ferrocene gas-phase slow-release rust preventive oil which is prepared from the following raw materials by weight: 150 parts of No. 120 solvent naphtha, 5 to 8 parts of rosin, 2 to 5 parts of zinc dust, 3 to 5 parts of sodium laureth sulfate, 15 to 18 parts of liquid paraffin, 3 to 5 parts of 3-aminopropyltrimethoxysilane, 10 to 15 parts of triethylenediamine, 10 to 13 parts of epoxidized soybean oil, 10 to 15 parts of xylene, 5 to 8 parts of a cross-linking agent TAIC, 1 to 2 parts of ferrocene, 3 to 5 parts of polyisobutylene, 1 to 2 parts of 4-amino-3,5-dimethyl-1,2,4-triazole, 1 to 2 parts of diethylhydroxylamine, 1 to 2 parts of 2-aminoethyl-heptadecenyl-imidazoline, 1 to 2 parts of diethanolamine, 1 to 2 parts of tri-n-octylamine, 2 to 3 parts of zinc dialkyl dithiophosphate, 5 to 8 parts of dimethicone, 1 to 2 parts of sodium dodecyl benzene sulfonate, 3 to 5 parts of acetyl tri(2-ethylhexyl) citrate, 5 to 6 parts of a film forming resin and 1 to 2 parts of modified attapulgite. The gas-phase rust preventive oil has good antirust performance and an excellent contact antirust effect, so the rust preventive oil can be widely applicable to antirust action on inner cavities or other contact or non-contact metal positions of mechanical equipment.