Pittsburgh (45-28-6) is second in the Metropolitan Division, three points behind the Washington Capitals, two ahead of the Columbus Blue Jackets and four ahead of the Philadelphia Flyers. The Capitals have a game in hand on the Penguins and Blue Jackets.
The two-time defending Stanley Cup champions clinched a berth for the 12th straight season, the longest active streak in the NHL.
WATCH: [All Canadiens vs. Penguins highlights]
"I do think [clinching] is special because I think it's hard to make the playoffs in this league," Penguins coach Mike Sullivan said. "There are a lot of good teams. You can look across the League and see how tight the races are and how many teams are still in it. So, the fact that we're able to clinch and solidify a playoff spot is a credit to our players.
"They're playing extremely hard. They knew going into tonight's game that if we won, we were going to earn that spot. That was our No. 1 priority."
Matt Murray made 24 saves to extend his streak without a regulation loss at home to 10 games (9-0-1), the longest of his NHL career.
Antti Niemi made 28 saves for the Canadiens (28-38-12), who lost to the Penguins for the third time in 17 days. Pittsburgh won 5-3 at Bell Centre on March 15 and 5-3 at PPG Paints Arena on March 21.
"They scored a couple on the power play and they were able to get those pucks," Niemi said. "They have a couple different plays. The last time in our home game (March 15), I got beat on a one-timer. You just have to stay ready for everything."