The ban has the backing of government leaders, who point to the hundreds of thousands of Russians who die of smoking-related illnesses every year.
The bill was passed Tuesday by a vote of 441-1. It must be approved by the upper house and signed by President Vladimir Putin before becoming law.
The ban on smoking in cafes, restaurants, universities and other public places would go into effect on June 1.
Cigarettes are much cheaper in Russia than in the U.S. and Europe, with the price of a pack starting at about $1.