Pep Guardiola's Manchester City will play Romanian side Steaua Bucharest in the final Champions League qualifying round after the draw was made in Nyon on Friday.
Guardiola, who twice won the competition as manager with Barcelona, will see his new side travel to the home of the 1986 champions for the first leg as they attempt to reach the lucrative group stages.
Former champions Porto have been handed a tough tie against Roma while four-times winners Ajax face Russian side FC Rostov.
Scottish side Celtic must find a way past Israeli side Hapoel Beer-Sheva, who knocked out Greek side Olympiacos in the previous round.
New Celtic manager Brendan Rodgers has said reaching the group stages is a priority for a side who were the first British winners of the European Cup in 1967.
Ireland's Dundalk, who have never reached the group stage, play Poland's Legia Warsaw, with the first leg switched to Dublin's Aviva Stadium.
Ties will be played on Aug. 16-17 with the reverse legs a week later.
Ludogorets v Viktoria Plzen
Celtic v Hapoel Beer-Sheva
Copenhagen v Apoel
Dundalk v Legia Warsaw
Dinamo Zagreb v Salzburg
Steaua Bucharest v Manchester City
Porto v Roma
Ajax v Rostov
Young Boys v Borussia Monchengladbach