Kostas Mitroglou gave Benfica a one-goal advantage in the first leg of the Champions League last-16 tie with Borussia Dortmund.
Mitroglou scrambled in the decisive goal for the Portuguese champions from Luisao’s header in the second half.
Benfica, who have now not conceded a goal at home for 383 minutes, kept another clean sheet thanks largely to keeper Ederson, who denied the Germans with a string of superb saves.
Dortmund, who had netted a record 21 times in the group stage, missed a second-half penalty through Pierre-Emerick Aubameyang, who also squandered several other scoring chances on a night to forget for the Gabon striker.
“We ended up scoring a goal in a situation we had been working for,” said Benfica coach Rui Vitoria. “In order to play such teams one has to be prepared to suffer at the limit. We had our problems getting out of our own half to attack.
“Now we know what we have to do in the return leg. Scoring a goal there will have a huge impact,” the Portuguese said.
Dortmund’s Pierre-Emerick Aubameyang hit a penalty straight at keeper Ederson after Ljubomir Fejsa handled.
The German side were the top scorers in the group stage, but failed to find a way through a stubborn home defence.
Dortmund will host the second leg on 8 March, with a place in the quarter-finals at stake.