First of all you must know that Iraq has independent region which is called Kurdistan, located in north of Iraq. For many nationality very easy to visit Iraqi Kurdistan. The visa policy is different in Kurdistan region compared to the rest of Iraq. A lot of nationalities are allowed a free visa-on-arrival at Erbil Airport for 30 days.
The official Iraqi visa, which allows you to go to Mosul and Baghdad, is known to be very expensive and difficult to obtain from the embassy.
Iraq Visa only for group at least five people.
You have to send your passport copy for your guide, to get security approval from ministry of interior after that ministry of foreign send a letter Visa to all Iraqi embassies to get Visa from there according to your passport issue.
It takes couple weeks all procedures.
So you have to apply for Iraqi visa through travel agency.
While some parts in Iraq might not be safe to visit, the situation in Kurdistan is fairly safe. The strong presence of Peshmarga forces in Kurdistan keeps the region as safe as possible.
You’ll encounter a few checkpoints during your travels, but everyone is very welcoming and friendly.