Over 40 years we have used lanolin, Duralac and Tefgel. Lanolin is OK but it sticks and lasts less than Tefgel, and is very affected by temperature (from runny to very hard). Tefgel is best for fasteners that you might need to remove within a year (but it cannot be painted over). Duralac is the best for stopping corrosion
permanently (we have stainless screws in aluminum
and no corrosion
after 20 years). It dries like paint
to somewhat lock the crews in place, and can be painted over. For unpainted places, the only disadvantage is the yellow colour, although one can wipe off most of it, leaving only a tiny yellow ring visible around the screw heads.
Not finding any source of Duralac in the USA, I brought in 5 tubes and am now selling 3 on Ebay.