The boat, which had launched distress signals while more than 300 miles south of Sicily, was located in the night by two naval vessels, said officials, adding that life jackets were then given to all passengers.
Weather conditions had initially made it difficult to transfer the refugees from their ailing craft. But on Saturday morning the coastguard was able to recover 105 passengers, including six women and 25 children, all of them Syrians.
They were taken to Syracuse, in the southeast of Sicily's main island.
Their rescue comes just days after another group of 120 refugees, mainly Syrians, were saved on December 2 after their ship was found adrift off of Calabria, on Italy's southern mainland.
More than 400 immigrants died in early October in two shipwrecks, one near the Italian island of Lampedusa, the other near the coast of Malta.
Shortly after the tragedy, the Italian government launched a major operation called "Mare Nostrum", mobilising warships, amphibious vessels and aircraft to prevent further incidents.
Also on Saturday, Spanish authorities announced they had saved some 46 refugees. The group had been plucked from four boats off of Spain's southeastern coast.