Lennox Bacela got the goal for Celtic.
The first half was for the most part a rather lethargic affair, with both sides playing cautious football.
There were hardly any chances - the first opportunity fell to Celtic after 23 minutes when Danny Venter teed up Bacela, but the former Santos man hammered a 14-yard shot over the bar.
Bacela was then foiled by Posnett Omony soon after, the Ugandan doing well to save with his feet.
Shortly before the break the Cape side had the ball in the goal when Keenin Lesch headed into an empty net.
However, in the build-up to the goal, Jonathan Armogam was ruled to have fouled Patrick Tignyemb, which was his second yellow card and saw the home side reduced to 10 men.
Phunya Sele Sele looked more industrious after the restart, but it was Vasco who had the first chance of the second stanza, when Josephy Kamwendo skied a shot over the bar.
However, on 66 minutes Celtic went ahead when Bacela fired home an outstanding angled volley after Nathan Paulse’s header across the goal.
The visiting team thought they had added a second goal in the 72nd minute when Clifford Mulenga scrambled the ball home after Omony had failed to hold onto a corner, but the keeper was adjudged to have been fouled.
Prior to the goal, the Zambian had also been close when his shot from an acute angle hit the upright.
Vasco struggled to create any clear-cut chances as they searched out an equaliser, but for the most part it looked as if a goal would come at the other end as Phunya Sele Sele easily held out for the win.