Dynamo captain Andriy Yarmolenko gave the hosts the lead late in the first-half, but Dessers got a crucial equaliser in injury time to leave the tie level ahead of next Tuesday’s second-leg.
For Rangers, tonight's match marked their first taste of European action this season, while their opponents had progressed to the third qualifying round with an impressive 9-2 aggregate victory over Partizan Belgrade.
From the weekend’s match against Hearts, there were two changes to the starting line-up as Ross McCausland came in for the injured Oscar Cortes, while Leon Balogun replaced Ben Davies in defence.
That saw Rangers line-up at Arena Lublin with Jack Butland in goal and a back four of captain James Tavernier, John Souttar, Leon Balogun and Ridvan.
Mohamed Diomande, Connor Barron and Tom Lawrence once again made-up the midfield three, while McCausland joined Scott Wright and Cyriel Dessers in attack
Latest signing Robin Propper was in the matchday squad for the first time and he was named on the bench alongside Liam Kelly, Vaclav Cerny, Rabbi Matondo, Kieran Dowell, Dujon Sterling, Jefte, Ben Davies, Leon King, Robbie Fraser, Cole McKinnon and Danilo.
It was Rangers who got the action underway in Lublin and it was Clement’s men who had the first sight of goal with just a couple of minutes on the clock. Tom Lawrence forced a strong save from Dynamo goalkeeper Georgiy Bushchan before Dessers’ rebound strike was held by the number one.
Denys Popov headed over a corner for the hosts in what was an open first five minutes of the match.
The Ukrainian side did have the ball in the net with 18 minutes played but thankfully for Rangers the linesman’s flag was raised on the far side. The chance came through a deflected shot from Mykola Shaparenko, which was well blocked by Jack Butland before Vladyslav Vanat headed home the rebound but was in an offside position as it remained 0-0.
Ross McCausland almost broke the deadlock in spectacular fashion just minutes later as the winger cut inside from the right to curl a left-footed strike from distance towards goal but the crossbar denied the Northern Irishman.
Both sides were creating chances in this first-leg, and Butland again denied Dynamo as he pushed wide a powerful hit from Oleksandr Pikhalonok.
Rangers were behind with 38 minutes played as the hosts broke down the right with Vladyslav Vanat picking the ball up inside the box and crossing a dangerous ball across the face of goal and into the path of Andriy Yarmolenko. The captain managed to get a controlled right-footed touch to tap it beyond Butland and give his team the advantage heading into half-time.
There was one change for Rangers at the break as Clement turned to his bench for the first time in this match with Jefte coming on in place of Scott Wright on the left-wing.
With 52 minutes on the clock, Gers were denied an equaliser as goalkeeper Georgiy Bushchan pulled off a superb save. It was good build-up from Rangers and a lovely delivery from Jefte who whipped a left-footed cross into the box, with Cyriel Dessers flicking the ball towards goal but the goalkeeper managed to get down and push it away.
A second substitution followed for Rangers as the game approached the hour mark with Ross McCausland replaced by Vaclav Cerny.
Georgiy Bushchan tipped a Tom Lawrence header over the bar as Rangers continued to search for an equaliser in this first-leg.
With 20 minutes to go in Lublin, Dujon Sterling made his return from a muscle injury as he replaced Connor Barron, before a final change in the 80th minute saw Kieran Dowell come on in place of Mohamed Diomande.
Deep in added time, Rangers had their much-craved equaliser as Vaclav Cerny delivered the ball into the path of Cyriel Dessers and he finished low beyond the goalkeeper to draw the tie level ahead of next week’s second-leg.
RANGERS: Butland, Tavernier, Souttar, Balogun, Ridvan, Diomande (Dowell, 80) Barron (Sterling, 71), Lawrence, McCausland (Cerny, 60), Wright (Jefte, 46), Dessers.
Subs: Kelly, Propper, Matondo, Dowell, Davies, King, Fraser, McKinnon, Danilo.
Dynamo Kyiv: Bushchan, Vivcharenko, Popov, Brazhko, Yarmolenko (Voloshyn, 77), Shaparenko (Lonwijk, 70), Vanat, Karavaiev, Kabaiev (Braharu, 77), Mykhavko, Pikhalonok (Buyalskyi, 70)
Subs: Neshcheret, Morgun, Andriuevskiy, Supryaha, Malysh, Ceballos, Bolivar, Dubinchak.