Some adjectives like "mejor", "peor" need to be placed in front of the noun. Others can change the meaning of the noun depending on its placement like "Es un viejo amigo" (He is a long-time friend) and "Es un amigo viejo" (He is an elderly friend)
Not sure if I have the answer to this sentence but it appears that el is required because " It is used to identify a type, genre or specie group" which I take means referring to man as a specific group.
"... amigo de hombre" would be friend of man - I don't think this means anything, maybe a friend of humanity, not sure, I have never seen it used.
"... amigo del hombre" would be friend of the man = man's friend.
I used "los hombres" and got it marked wrong for being plural. If they are talking about a singular man then an article is required in English. DL's sentence (in the context that they intend) is wrong in this question.
Which exact dog is man's best friend? Was it Cujo? I think we have an example here where definite articles in English sometimes don't mean a specific thing. Why isn't the translation taking this into account?