Twenty-five dead bodies were found on a boat carrying 296 migrants that set sail from Libya and arrived on the Sicilian island of Lampedusa on Monday, Italian port authorities said.
Migrants on board said the adult men were killed by motor fumes, the Ansa news agency reported.
However, port officials said the cause of death was not immediately clear and medical tests were being conducted.
The boat, carrying mainly migrants from sub-Saharan Africa, left Libya three days ago, a port official said.
The nationalities of the dead, who were hiding in the boat's engine room, have not been confirmed, according to NBC News.
Thousands of people fleeing turmoil in North Africa have sailed to Italy in rickety boats in recent months.
The United Nations refugee agency has said one in 10 migrants fleeing conflict in Libya by sea is likely to drown or die from hunger or exhaustion in appalling conditions during the crossing.