The Scottish side will face Eintracht Frankfurt who defeated West Ham 1-0 in their semifinal second leg in Germany for a 3-1 aggregate win.
For Rangers, James Tavernier and Glen Kamara turned the tie around inside the first 24 minutes at an emotionally charged Ibrox as players and fans united to pay tribute to long-serving kitman Jimmy Bell, who died on Tuesday.
Christopher Nkunku hit back for Leipzig in the second half, but John Lundstram scored the winner nine minutes from time.
Giovanni van Bronckhorst’s men will face Eintracht Frankfurt in the final in Seville on May 18 in just their second European final in 50 years.
The Scottish champions lost to Zenit St Petersburg in the Uefa Cup final of 2008, but have had to start again from the fourth tier following a financial collapse in 2012.
Last season they ended Celtic’s run of nine league titles in a row and will return to the Champions League for the first time since 2010 with victory over Frankfurt at the Ramon Sanchez Pizjuan in 13 days’ time.
Leipzig’s 1-0 advantage from the first leg was blown away early on in front of a cacophonous noise.
Right-back Tavernier moved outright as the top scorer in the competition with seven goals, all of which have come in the knockout phase, when he timed his run to perfection to turn in Ryan Kent’s cross.
Kamara then guided a wonderful finish low into the far corner from outside the box and kissed his black armband in tribute to Bell.
Joe Aribo should have made it three within half an hour when he missed his kick from point-blank range.
Leipzig lost just once in 19 games between January and April, but have now been beaten in three of their last four to put their chances of Champions League football next season hanging in the balance.
The Germans enjoyed the majority of the ball in the second half and were back on level terms in the tie when Nkunku steered home his 32nd goal of the season from Angelino’s cross.
Rangers then had to dig deep just to keep Leipzig at bay, but they found the winner late on.
Kent’s cross to the back post caused panic in the Leipzig defence and the loose ball broke to Lundstram to stroke into an unguarded net and spark wild scenes of celebration.
In the other semifinal tie, Frankfurt earned a 1-0 second-leg win over West Ham with Rafael Borre scoring the game’s only goal.
Borre found the net moments after West Ham defender Aaron Cresswell was sent off in the 18th minute.
Frankfurt will play Rangers in the final in the Albanian capital of Tirana on May 18.
In the third-tier Europa Conference League, Feyenoord will meet Roma in the final in Seville on May 25.
The Dutch side are through to their first European final in two decades after holding Marseille to a 0-0 draw in France. Feyenoord progressed 3-2 on aggregate.
In Italy, Tammy Abraham scored in Roma’s 1-0 second-leg win over Leicester City, completing a 2-1 aggregate success. (AFP)