Based on my coastal NC experience:
1) Get a desiccant pack. At least 1000 grams. 1500 is better. I prefer the metal cans as they are easier to recharge. ($15-30)
2) Get a humidity monitor. ($10) Recharge the desiccant packs when the humidity gets above 60%. 40-60 percent is the ideal range.
3) Make the sure the door is as airtight as possible. The v shaped plastic strip works well on most safes. In some cases a piece of duct tape over the hinge side of the door might be needed. Ensuring the door gaps are really sealed will greatly reduce the frequency you’ll have to recharge the desiccant. ($5-10)
4) Cover the safe with a moving blanket. ($5-10) It’s mostly a winter/early spring/late fall concern, but if you open the garage when it’s cooler in the garage than it is outside you’ll get condensation on everything. A blanket insulates the metal safe surface from that warm moist air, and it helps stabilize the temperature inside the safe which helps prevent any condensation inside the safe.
5) Minimize the temp changes/extremes. Assuming your house is air conditioned and your system has the capacity, leave the garage door open as it will keep the garage cooler and less humid, not cool, but not extremely hot and humid. Similarly in the winter keep the door open to keep the garage a little warmer to reduce condensation when you remove a gun. If it’s really cold on the garage, put the gun in a case and then bring it in and let it warm up before you take it out.
I insulated my garage door with foil backed styrofoam insulation as the afternoon sun shines on the door. It made a huge difference, reducing the temp on the inside of the door from about 110 degrees to ambient temperature.
6) clean and oil your guns periodically - every 6 months is a good idea, I wouldn’t go more than 12 months, but I have had zero issues with rust since doing this.
——-
In contrast when I first moved here and had the safe just sitting in an unheated, un air conditioned garage, I’d have to clean and oil at least once a month to keep them rust free. It was a big change from western SD where we’d have extreme heat and extreme cold, but fairly low humidity in the 30% range.