Substitute Roberto Firmino also grabbed a brace as Liverpool negotiated a tricky-looking fixture on paper with ease.
Liverpool top the group with six points from two games, ahead of Atletico Madrid who have four points.
“It’s definitely not job done as we have four games to play. We had two good performances, applied ourselves well and got results we deserved,” Liverpool skipper Jordan Henderson, who made his 400th appearance for the club, said.
“It’s a good start but it is far from over.”
It was a miserable night for Porto — who have now conceded 14 goals in their last three home games against Liverpool — and especially keeper Diogo Costa who produced a woeful display.
Porto were dealt a blow before kick-off when captain and centre back Pepe was injured in the warm-up and the hosts were further handicapped when midfielder Otavio lasted only 13 minutes before hobbling off with a hamstring injury.
Liverpool took ruthless advantage of Porto’s woes with Salah tapping in following a mistake by Costa after 17 minutes. Curtis Jones crossed from the left and, as the goalkeeper fumbled, the ball fell to Salah who could not miss.
Any hope of a late Porto comeback was extinguished, however, when Costa made a mad dash from his goal and substitute Firmino rolled a shot into an empty net.
Porto’s misery was complete when Firmino grabbed his second of the night in the 81st minute.
After being drawn in the toughest group, Liverpool will be hugely satisfied with their start, having beaten Milan in a scintillating opener at Anfield a fortnight ago.
Liverpool have scored at least three goals in their last six matches in all competitions for only the third time in the club’s history and head into this weekend’s big Premier League clash at home to English champions Manchester City on a high.