The government decided to act after the United Nations culture organisation UNESCO threatened to put Italy on a blacklist for not banning liners from the World Heritage site, cabinet sources said.
The ban will take effect from August 1 this year, barring ships weighing more than 25,000 tonnes from the shallow Giudecca Canal that leads past Piazza San Marco, the city's most famous landmark.
"I am proud of a commitment that had been honoured," Culture Minister Dario Franceschini said in a tweet on Tuesday announcing the cabinet's approval of the decree, confirming a previous Reuters report.
The legislation, which is likely to affect the business of cruise companies such as Carnival Cruises, provides compensation for firms and workers involved, a culture ministry statement said.
Carnival cruises was not immediately available to comment.
Venice residents and the international community have been urging governments for years to ban large ships passing through the lagoon, polluting and threatening the stability of its buildings and fragile ecosystem.
Such concerns clash with the interests of port authorities and tourist operators who say the city needs the business offered by the cruise industry.
The 25,000-tonne threshold will mean only small passenger ferries and goods vessels can use the Giudecca, excluding all cruise liners which typically weigh at least four times as much and can reach more than 200,000 tonnes.
Francesco Galietti, Italian director of the international cruise industry trade association CLIA, said the group welcomed an alternative route for cruise ships and he called the latest government move "a major step forward".
NO DOCKING POINT
Rome has passed legislation numerous times in the past to limit liners' access to one of the world's most famous tourist sites, but an alternative docking point is not yet ready.
Residents protested in June when the 92,000-tonne MSC Orchestra sailed through the lagoon en route for Croatia and Greece, attracting the attention of international media.
In April, Prime Minister Mario Draghi's government approved a decree to build a terminal outside the lagoon where passenger vessels over 40,000 tonnes and container ships can berth. The call for bids to build the terminal was published on June 29.
In the meantime, large boats were told to dock at the industrial port of Marghera, but this intermediate solution is not yet ready because Marghera lacks a suitable docking point for liners.
The government's decree appoints a special commissioner to fast-track the docking station at Marghera.
Alessandro Santi, who heads Federagenti, a national shipping lobby, said the government was taking no account of the industry with an approach that was "regrettable and creates resentment".
He accused Rome of listening to UNESCO and international culture lobbyists while ignoring local "citizens and business people".
"Limiting the passage of ships won't solve the difficulties of Venice as a city."