Is it allowed to punch someone or shout at him or be angry at someone who, for example, insults one's wife or mother or someone who is disrespectful in an arrogant way? Or someone who attacks one's honor? Does the ruling change if the one who does this is a disbeliever?
All perfect praise be to Allah, The Lord of the worlds. I testify that there is none worthy of worship except Allah and that Muhammad, sallallahu ‘alayhi wa sallam, is His slave and Messenger.
There is nothing wrong in feeling angry because of such actions, and the person is not blamed for it. Verily, the person who does not feel protective jealousy in his heart is to be blamed. Al-Haytami wrote, "The power of anger lies in the heart ... and if it is lacking or weak, this is extremely dispraised because it indicates lack of protective jealousy. Verily, a person who lacks protective jealousy and sense of honor can never be able to attain any level of human perfection by any means." [Az-Zawaajir]
However, you do not have the right to punch him, because you are not entitled to discipline this person. The Kuwaiti Encyclopedia of Fiqh underlined that discipline is the exclusive right of the guardian, teacher, and husband. Then it said, "None other than those three have the right to discipline others according to the majority of scholars ... If disciplining is conducted by other than the ruler and his representatives, it leads to chaos and dissension."
This transgressor should gently and wisely be given advice regardless of whether he is a Muslim or a non-Muslim. If some harshness is needed, then there is no harm in that; Allah, The Exalted, says (what means): {And do not argue with the People of the Scripture except in a way that is best, except for those who commit injustice among them...} [Quran 29:46]
Al-Jassaas wrote, "Allah, The Exalted, says (what means): {...except for those who commit injustice among them...} [Quran 29:46] It means – and Allah knows best – except those who wronged you in their argumentation or any other manner which entails a harsh response." [Ahkaam Al-Quran]
Ibn Taymiyyah wrote, "When the speaker transgresses against us, we are not required to respond in a way that is best." [Majmoo‘ Al-Fataawa]
If this person is deterred, then this is the desired objective; otherwise, you may threaten to report him to the concerned authorities and even actually report him if that is necessary.
Allah knows best.
You can search for fatwa through many choices