Replacements used: Timi Enodeh (BancaMonteParma Crociati) for Castello (47 mins), Riccardo Cagna (MPS Viadana) for Leso, Giovanni Maistri (Cammi Calvisano) for Quaglio (both 50), Francesco Menon (Consiel Firenze 1931) for Alberghini, Andrea Balsemin (HBS GranDucato Parma) for Fuser (both 60), Ruben Riccioli (Mantovani Lazio) for Ghiraldini (39), Vittorio Callori di Vignale (Estra I Cavalieri Prato) for Cosulich (80), Nicola Quaglio for Kudin (80+4).
Replacements used: Iain Henderson (Queen's University/Ulster) for McKeon (14 mins, inj), Conor Carey (Ballymena/Ulster) for Moore (37-half-time, blood sub, 63), David Doyle (UCD/Leinster) for Kearney (55-63, blood sub), Brendan Macken (Blackrock/Leinster) for Kelly (60), Finlay Bealham (Exile) for Tracy, Peter du Toit (UCD/Leinster) for McIlroy (both 79), Cathal Marsh (Dublin University/Leinster) for Jackson (80+4).
The Ulster flyer touched down in the 71st and 74th minutes to decide this scrappy affair in Parma. Prop James Tracy grabbed the only try of the first half, and out-half Paddy Jackson kicked the remaining 13 points for the visitors.
Winger Marco Gennari booted three penalties for a spirited Italian team that troubled Ireland for long stretches and gave little away in defence.
The error count was high for both sides and Niall Annett and his team-mates will be unhappy with the number of handling errors and penalties given away.
But when Ireland got their attack going in the final quarter, the hosts struggled to cope and this opening victory will give Ruddock's youngsters a boost of confidence ahead of next week's showdown with France in Athlone.
Ireland fell behind to a third minute penalty from Gennari, after flanker Aaron Conneely was pinged for breaking early from a scrum. Conneely was a busy figure throughout and the pack did well to cope with an early injury to number 8 Eoin McKeon.
Noted second row Iain Henderson came on in his place, with Michael Kearney shifting to the back row and Jordi Murphy anchoring the scrum.
Before that, Jackson had kicked Ireland ahead. A good run from Andrew Boyle on the left wing preceded his first kick, and his second crisp strike came after Jacopo Bocchi was whistled up for a ruck offence.
Italy enjoyed most of the territory in the opening half hour and their scrum half Guglielmo Palazzani was moving the ball well between backs and forwards.
Ireland were able to soak up the pressure before Conneely was harshly penalised for holding onto the ball after the tackle, and Gennari popped over his second penalty.
The Irish built through the phases in response. Luke Marshall was involved twice in midfield, but Alex Kelly's pass out wide to the supporting Gilroy did not go to hand.
The breakthrough came in the 32nd minute, following some patient build-up play. Captain Annett made the most of some space on the left to pass for Boyle and the winger cut back inside on the angle and beat the first defender before linking with Tracy who barrelled over from close range for the try.
Jackson missed the conversion to the left of the posts and Gennari replied for Italy, shortly before half-time, to close the gap to 11-9.
Ireland had an opportunity to score late in the first half, courtesy of a clever kick from Marshall and a subsequent penalty awarded. The ball was dispatched to touch and although the Irish forwards initially gained ground with a maul, Italy managed to hold firm and win turnover ball.
Jackson clipped a 45th minute penalty away to the left of the target, after Tommaso Castello failed to roll away after the tackle.
Ireland maintained a high work-rate, with Daniel Qualter and Martin Moore standing out in that regard, but mistakes and a solid Italian defence kept them in check.
Jackson's flicked pass to Andrew Conway gave the visitors a good position near the 22, with Kearney and Henderson, who did well as a replacement, making the hard yards in the next phases.
Italy kept them at bay and the stop-start nature of the game seemed to suit Andrea Cavinato's side, who played to their strengths in the forwards.
They should have been down to 14 men around the hour mark, but Giovanni Alberghini was let off with just a penalty after his reckless use of the boot left Kearney with a bloodied eye.
It was still anyone's game at this stage, but Jackson afforded his side some breathing space at 14-9, finding his range again after an offside decision against Italy.
Ireland then took their attacking game up a notch or two when it was needed most. Marshall brilliantly tied in two defenders before offloading for impressive replacement Brendan Macken. The big Blackrock clubman charged through the middle and over halfway, linked with the supporting Jordi Murphy and the flanker's final pass put Gilroy racing in behind the posts.
Jackson converted and added the extras to Gilroy's second try, three minutes later. This time, the Dungannon clubman powered through a gap in the Italian 22, shrugging off Timi Enodeh's challenge on the to the way to the try-line.
Italy were suddenly 28-9 adrift and out of contention. A powerful tackle by Qualter on the advancing Gennari signalled Ireland's intent to keep the home side tryless and they did just that, despite having Murphy and Kearney sin-binned in injury-time.
TIME LINE: 3 minutes - Italy penalty: Marco Gennari - 3-0; 8 mins - Ireland penalty: Paddy Jackson - 3-3; 12 mins - Ireland penalty: Paddy Jackson - 3-6; 24 mins - Italy penalty: Marco Gennari - 6-6; 32 mins - Ireland try: James Tracy - 6-11; conversion: missed by Paddy Jackson - 6-11; 36 mins - Italy penalty: Marco Gennari - 9-11; Half-time - Italy 9 Ireland 11; 45 mins - Ireland penalty: missed by Paddy Jackson - 9-11; 67 mins - Ireland penalty: Paddy Jackson - 9-14; 71 mins - Ireland try: Craig Gilroy - 9-19; conversion: Paddy Jackson - 9-21; 74 mins - Ireland try: Craig Gilroy - 9-26; conversion: Paddy Jackson - 9-28; 80+2 mins - Ireland yellow card: Jordi Murphy; 80+6 mins - Ireland yellow card: Michael Kearney; Full-time - Italy 9 Ireland 28
Referee: Neil Hennessy (Wales)