The home side threatened first, with Jake Cassidy winning a free kick to the left of the Alex area in the first five minutes.
Cassidy was able to break through the Crewe backline on 15 minutes, but his shot was blocked on the edge of the area.
Pennington then volleyed wide from a Koumas corner in the 21st minute.
The breakthrough came just before the half-hour mark, as a Koumas cross was met by the head of Pennington.
Within two minutes of the restart, Evan Horwood fired over from 25 yards and three minutes later Byron Moore missed the target after latching onto a Crewe corner.
Crewe appealed for a penalty with 15 minutes to go after one of their players was fouled in the Rovers box, but nothing was given.
Two minutes later, Mathias Pogba blasted his shot over.