Lionel Messi started on the bench in Wednesday's clash as Barcelona qualified for the last 16 of the Champions League despite their second successive 0-0 draw in the group stage.
October's goalless game in Olympiakos was the first time in five years Barcelona had failed to score in a group stage match and they were again frustrated in Turin.
Ernesto Valverde's side created the game's better chances and were notably more in control of the match than on their last trip to Juventus, when they lost 3-0 in last season's Champions League quarter-final first leg, the BBC reports.
Barca have 11 points and will finish top of Group D as they have a better head-to-head record than Juventus, who currently have eight.
But in the last round of group matches Juve - who went close to a late winner when Paulo Dybala's drive forced a sublime save from Germany keeper Marc-Andre ter Stegen - must now beat Olympiakos in Athens to be sure of progressing.
Sporting Lisbon, who face Barca at the Nou Camp on 5 December, kept their own chances of reaching the knock-out stage alive by beating the bottom-placed Greek side 3-0.
In the Allianz Stadium in Turin, Barcelona's Croatia midfielder Ivan Rakitic saw his long-range free kick hit the post in the first half while France left-back Lucas Digne opted to pass to Uruguay forward Luis Suarez when he was better placed to score on 69 minutes.
Dybala, 24, who has been linked with a move to Barca, stood out for last year's Champions League finalists as the Argentina striker had the most shots (four) and created the most openings for the hosts.
Messi, who replaced former Everton winger Gerard Deulofeu on 56 minutes after being rested before Sunday's crunch La Liga game with second-placed Valencia, also went close with a free kick that rippled the roof of Gianluigi Buffon's net.
Valverde said: "Leaving Messi out was difficult but he has played a lot this season and today we saw a long and tough contest so we thought a rest would do him good."