Republic of Ireland put in a spirited display to secure a 0-0 draw with 10-man Portugal, whose hopes of automatic qualification for next year's World Cup now rest on a winner-takes-all clash with Serbia on Sunday.
Portugal, led by Cristiano Ronaldo, dominated the early exchanges with Gavin Bazunu having to save from Andre Silva and Seamus Coleman blocking the Manchester United forward's goal-bound shot, but the hosts held firm as the first half reached its mid-point.
Ronaldo wasted the best opportunity of the game midway through the second half, heading Andre Silva's cross wide before Portugal's challenge faded with the sending off of Pepe for two second-half bookings.
Stephen Kenny's side tried to make use of their numerical advantage, but they were forced to settle for a point, which gives them the opportunity to finish third if they can beat Luxembourg in their final game of the campaign on Sunday, live on Sky Sports.
Meanwhile, the draw sees Portugal go top of group A on goal difference ahead of Serbia, who they host in Lisbon on Sunday, live on Sky Sports, for the chance to seal their place at the World Cup in Qatar.
- How the teams lined up | Match stats
- World Cup qualifying fixtures | Results | Tables
- World Cup Qualifiers live on Sky
- Get Sky Sports | Get NOW to stream the big moments
How Republic of Ireland frustrated Portugal...
Portugal - who with one eye on Sunday left yellow carded players Joao Cancelo, Diogo Jota, Renato Sanches, Ruben Dias and Jose Fonte on the bench - started on the front foot and Banzunu had to be alert to tip Andre Silva's shot from a tight angle wide, while Seamus Coleman threw himself in the way of Ronaldo's goal-bound shot moments later.
Ronaldo thought he should have had a penalty midway through the first half when going down under a challenge from Matt Doherty, but the referee allowed play to continue and it allowed the hosts to launch a counter-attack.
Republic of Ireland: Bazunu (6), Coleman (8), Duffy (7), Egan (7), Doherty (7), Hendrick (8), Cullen (6), Stevens (7), McGrath (6), Ogbene (8) Robinson.
Subs: Idah (6), McClean (n/a), Hourihane (n/a), Keane (n/a).
Portugal: Patricio (7), Semedo (7), Pepe (5), Danilo (5), Dalot (6); Nunes (6), Palhinha (6), Fernandes (5); Guedes (6), Silva (6), Ronaldo (6).
Subs: Leao (5), Moutinho (6), Felix (n/a), Sanches (n/a), Fonte (n/a).
Man of the match: Callum Robinson.
Callum Robinson led the charge for the hosts and he forced Rui Patricio into action with a curled effort from the left before striking wide with another long-ranger effort before half-time.
Republic of Ireland were more than holding their own and they created the final chance of the half, Chiedozie Ogbene heading over Robinson's cross to the near post
Ronaldo was looking a frustrated figure and it showed after he was brushed off the ball by Coleman as the second half got under way, and with Portugal's central defensive pairing of Pepe and Danilo looking less than convincing against Ogbene's pace, Ireland sensed an opportunity.
- Skipper Seamus Coleman returned to the starting line up as the Republic of Ireland attempted to dent Portugal's World Cup qualification hopes in Dublin. Coleman, who missed last month's fixtures through injury, was included in one of four changes to the side which won its last qualifier 3-0 in Azerbaijan as he, Enda Stevens, Jamie McGrath and Chiedozie Ogbene replaced the injured Andrew Omobamidele and James McClean, Daryl Horgan and Adam Idah.
- Cristiano Ronaldo, whose two late headers denied Ireland victory in Faro in September, was included in Fernando Santos' team, but five of the men on yellow cards - Joao Cancelo, Diogo Jota, Renato Sanches, Ruben Dias and Jose Fonte - were named only among the substitutes ahead of Sunday's crunch clash with current Group A leaders Serbia.
Josh Cullen might have done better when presented with a shooting opportunity by Matheus Nunes' slip, but so too might Ronaldo when he drilled a free-kick straight at Duffy seconds later.
However, the Republic enjoyed a major let off when Ronaldo guided a 67th-minute header just wide of the far post with Bazunu rooted to the spot.
Pepe, who had earlier been cautioned for handball, was dismissed after an ill-judged 82nd-minute challenge on Robinson to spark a late Irish assault in which Will Keane was handed a late debut as a substitute, but Ronaldo might have won it six minutes into stoppage time if not for Bazunu's near-post block.
Pundits: Signs of progress from Republic of Ireland; Portugal wanted draw
Former Republic of Ireland international Richard Dunne on Sky Sports:
"I would say so, yes [it's the best result of Stephen Kenny's tenure so far].
"To get a result against Portugal, who we would class as one of the top 10 international sides, it is a big result for Kenny.
"It shows there has been a level of progress and an Irish side coming into this campaign you would have looked at the Portugal game and thought we need to get a point to try and qualify.
"Obviously the early results put the team in a poor situation in terms of qualification but there are signs of progress and against Portugal, it's a good point and it gives them the opportunity to finish the group in third."
Former Republic of Ireland international Phil Babb on Sky Sports:
"Republic of Ireland grew into the game and you could see the confidence growing, the crowd got into a bit and you could see the momentum. But I actually feel, and I don't want to take anything away from Ireland's performance, but that's not a typical Portugal side.
"I definitely feel they came to the game wanting a draw. They had one eye on the game in Lisbon on Sunday. They came for a draw and there was no cutting edge thrust from them whatsoever.
"But Ireland might feel a little bit disappointed they couldn't get the win. In the last 10 minutes, they certainly grew into the game, tried to create but they just didn't have that cutting edge or that little bit of class they needed in front of goal."
What the players said…
Republic of Ireland forward Callum Robinson: "Winning is the main thing, but this has proven how far we have come as a group to compete against the top, the very best and we did a great job on him [Cristiano Ronaldo].
"We had a few half chances, but it was not to be. It was a game that proved we're going in the right direction.
"The fans are here, it was an amazing feeling and it was nice to get a result for them and we dug in. On another night, with the half chances, we could've got a win."
Republic of Ireland defender Shane Duffy, who won his 50th cap against Portugal: "I thought we performed really well. It's more progress from the team and we're a little bit disappointed we didn't win, it was a real gutsy performance.
"We kept a clean sheet against one of the best teams in the world and had chances so there's lots of positives.
"If anyone had told you you would get 50 caps for your country you would laugh. I'm very proud of what I've achieved so far, it's been tough and hard.
"You never know if it's going to be your last so you want to enjoy every moment."
Republic of Ireland captain Seamus Coleman: "From the beginning you could see what we were trying to do and we looked comfortable for lots of the game.
"Of course, I want him [Stephen Kenny] to stay. You could see by the support, they're enjoying the football, the players are being brave, wanting the ball, enjoying the ball.
"I love playing for Ireland, as players we're really enjoying it."
What Stephen Kenny said…
Republic of Ireland boss Stephen Kenny: "I thought we started a little nervously, Portugal were very good early on. In the second half I thought we were the better team.
"We scored a legitimate goal, it was not a foul, Will Keane stands his ground and we're disappointed [with the decision].
"We've played them twice, leading 1-0 out there after 88 minutes and in the second half tonight I thought we were excellent.
"There's room for improvement but we had more shots on target than they did. It was a good performance. We've evolved, you can see the way we're playing.
"In nine matches, we've only lost one, in Faro in the 97th minute. We're going well."
Man of the match - Callum Robinson
Richard Dunne on Sky Sports: "I think slightly wider is Robinson's better position. I think having that freedom to come in from the outside suits him more. I think when he's made to play that central role there's a responsibility to try and occupy defenders whereas he probably wants to be moving around and trying to find different pockets of space, but he did really well. He was the bright spark for the Irish side."
Opta stats: Portugal left frustrated in Dublin...
Republic of Ireland have failed to score in 53 per cent of their 19 games in all competitions under Stephen Kenny (10/19), the highest ratio of any manager to take charge of more than two games for the national team.
This was Portugal's first goalless draw in 36 World Cup qualifying matches (including play-offs), since drawing 0-0 with Sweden in March 2009.
This was just Republic of Ireland's second competitive clean sheet against Portugal, and first since a 1-0 victory in a EURO 1996 qualifier in April 1995.
Pepe's sending off was Portugal's first competitive red card in almost three years, since Danilo Pereira was dismissed against Poland in November 2018 in the UEFA Nations League.
Cristiano Ronaldo was involved in seven of Portugal's 12 attempts tonight (5 shots, 2 chances created), though his only attempt on target came in the sixth minutes of second-half injury time.
Republic of Ireland's World Cup qualifying campaign ends with a trip to Luxembourg on Saturday, live on Sky Sports Football; kick-off 7.45pm.
Meanwhile, Portugal's chances of automatic qualification go to the wire as they face Serbia in a winner-takes-all clash with Serbia in Lisbon, live on Sky Sports via the red button; kick-off 7.45pm.