Ajax lost injured full-back Noussair Mazraoui inside the opening 10 minutes but the visitors almost struck the first blow.
David Neres found space in a crowded penalty area and his deflected shot squirmed through to Van De Beek, who fired over the crossbar at full stretch.
Paulo Dybala saw his volley held by Onana in Juventus’ first meaningful attack, but the hosts were soon ahead through a familiar source.
The unmarked Ronaldo met Miralem Pjanic’s corner with a trademark thunderous header as Ajax complained of a foul on Joel Veltman.
Clement Turpin went to the sidelines for a VAR check, but the French referee’s closer inspection showed that Veltman’s team-mate De Ligt had actually pushed him to the ground.
But Ajax were level within six minutes when Hakim Ziyech’s shot fell into Van De Beek’s path and the midfielder made the most of his good fortune with an assured finish into the bottom corner.
The second half was on a knife edge and Ajax were determined to send men forward in search of a goal that would leave Juventus needing two and a mountain to climb.
Juventus heaved a huge sigh of relief when Neres broke through and Van De Beek set up Ziyech inside the penalty area.
Wojciech Szczesny thrust out a strong left arm just as the ball appeared to be going past him and Juventus survived