Ola John gave the home side the lead in the seventh minute before Georgios Samaras levelled in the 32nd minute from a Charlie Mulgrew corner.
Defender Ezequiel Garay restored Benfica’s lead in the 72nd minute to ultimately, and deservedly, leave both sides on seven points after five games.
The Scottish champions, guaranteed a Europa League spot after Barcelona beat Spartak 3-0 in Moscow earlier in the evening, will go through if, in their home game against the Russian club, they better the Portuguese side’s result in Barcelona.
While Neil Lennon can have no qualms about last night’s result he must fancy his side’s chances of completing the job in front of a packed Parkhead against a side who have nothing to play for, while Benfica, it must be assumed, will not be favourites in the Nou Camp.
Striker Samaras admitted the pressure had been fierce but that Celtic’s focus in now on the game against the Russians.
“For 90 minutes we were a little bit nervous but it is finished,” he said.
“The team effort and the really hard work we had... we must stay positive, we can still go through.”
A score draw would have been enough to take the Hoops into the last 16 while Benfica had to win to have any hope of qualifying.
Celtic, buoyed by their incredible 2-1 home win over Barca earlier in the month, had skipper Scott Brown, midfielder Joe Ledley and striker Gary Hooper back in the side as Kris Commons, Beram Kayal and Tony Watt dropped to the bench.
The home supporters in a less than full stadium were given early encouragement when striker Oscar Cardozo flashed a speculative shot from distance over the bar, after Samaras had lost possession in his own half.
It was a nervy start by the visitors and Benfica’s opener came when Adam Matthews, playing at left-back, failed to clear his lines with a clearance, handing possession to Eduardo Salvio. When his cross arrived at John 16 yards out, he drilled his shot through the legs of right-back Mikael Lustig and past keeper Fraser Forster.
Mistakes and indecision peppered Celtic’s play and on the half-hour mark they might have gone two behind when Salvio cleverly played in Oscar Cardozo but his drive went wide of the target.
Two minutes later, and out of the blue, Celtic were level when Mulgrew’s in-swinging corner from the right was headed in by Samaras, strangely unmarked two yards out at the back post.
The goal immediately energised the Celtic players and as they moved forward with menace for the first time in the game and in the midst of driving rain the home side looked vulnerable.
Kayal replaced Mulgrew for the start of the second half but he was soon back peddling as Benfica came out with renewed vigour.
In the 53rd minute Matthews made up for his early error when he blocked a shot by Lima on the line.
It was all hands to the pump for Celtic, who made another change in the 64th minute when Commons came on for Brown.
However, after Forster had saved well from Lima and Salvio had missed a golden chance from Lima’s cross, Benfica took the lead.
With just under 20 minutes left, Matic’s cross from the right was headed on by Luisao and Garay volleyed powerfully past Forster.
Tension gripped the stadium in the closing stages with both sets of fans knowing the significance of a Celtic goal.
In the first minute of injury-time Kayal blasted a volley from 20 yards over the bar, and Watt drove wide from the edge of the box, ensuring that attention now turns to the final set of fixtures in a fortnight, where more drama is guaranteed.
Lennon revealed that Celtic skipper Brown could be out for 10 weeks after he limped out of last night’s game.
Brown has been struggling with a hip complaint all season and after again succumbing to the pain in Lisbon, it looks like surgery will now be his only option.
Lennon, who will also be without the suspended Victor Wanyama against Spartak, said: “Scott Brown has run his course, we may have to book him in for surgery. We are looking at eight to 10 weeks.”
BENFICA: Artur Moraes, Almeida, Luisao, Garay, Melgarejo, John, Matic (Maxi Pereira 78), Lima (Gaitan 75), Perez, Cardozo, Salvio (Jardel 90).
CELTIC: Forster, Lustig, Wilson, Ambrose, Matthews, Brown (Commons 64), Ledley (Watt 80), Wanyama, Mulgrew (Kayal 46), Samaras, Hooper.
Referee: Viktor Kassai (Hun).