Technically if a character is neutral or good they’re not a villain, just an antagonist.
A “villain” is a specific type of antagonist in a story who’s actions can be described as evil, wicked, malicious, or indiscriminately destructive.
You can have other antagonists that are not “villains” in the strictest sense. The oppose our heroes, but are not themselves evil.
A lot of “doing their jobs” style antagonists are like this. If our protag is a crook, for example, and the antagonist a cop they’re not “evil”. Tommy Lee Jones numerous cop characters from movies like The Fugitive and Double Jeopardy (for the first half of the film) come to mind.
Force of nature characters are the same. The various incarnations of Death (Puss, Discworld, Final Destination), and Inanimate Antagonists (the iceberg is the sort of prime example of that usually) tend to be morally neutral.
You can also have purely “good” antagonists. Either “extremist” characters (zealots like Javet from Les Mis) or legitimately good natured characters who just happen to opposed whatever the protag is doing. And sometimes the protag can double as the antag, but that is difficult to pull off.