Italy took an early lead but were far from their best when winning a tough encounter in Armenia 3-1 on Friday to stay top of Group B.
Cesare Prandelli's side went ahead after 11 minutes when Riccardo Montolivo's cross was handled by Hrayr Mkoyan and Andrea Pirlo calmly put away the penalty.
Armenia equalized when Henrikh Mkhitaryan collected a knock-down and skipped past Andrea Barzagli before powering into the box and driving the ball low across Italy goalkeeper Gianluigi Buffon.
Buffon prevented Armenia from taking a second-half lead with a wonder save from a Davit Manoyan volley on 56 minutes and then again two minutes later when Aras Ozbiliz worked space in the area only to fire the ball at the keeper.
Daniele De Rossi gave a stuttering Italy the lead after 64 minutes when he charged on to a pinpoint Andrea Pirlo cross to head from close-range past Roman Berezovski off the bar.
Pablo Osvaldo sealed the win with nine minutes to go when he headed home a De Rossi freekick.
Italy have seven points from three games.