The invention discloses a metal antirust oil containing sorbitan monooleate, which is prepared from the following raw materials: No. 120 solvent oil, hydroxyethyl methacrylate, silane coupling agent KH 792, sorbitan monooleate Oleate, ethanol, polypropylene glycol, modified nano kaolinite powder, antioxidant, composite film-forming material, magnesium stearate, polyethylene glycol, triethanolamine oleate, barium petroleum sulfonate, antioxidant BHT, Alcohol ether glycoside, phenylethanolamine A, benzotriazole, 2-aminoethyl heptadecenyl imidazoline, phytic acid. The invention has excellent contact antirust performance and good gas phase antirust effect, and the invention has good gas phase antirust effect and contact antirust effect on steel and brass.