European leaders have said they are in discussions to resolve the case of 49 refugees and migrants trapped on the Mediterranean since December 21.

Ten European countries, including Germany, Luxemburg, Portugal and Romania, are offering to host the stranded passengers on the condition that Malta provides its docks for their disembarkation.

Valletta said it would accept the proposal if said countries agreed to take in another batch of 249 people rescued in Maltese waters between Christmas and New Years Eve.

Passengers stuck on board two rescue boats - the Dutch Sea Watch 3 and the German Sea Eye - are hostages of a heated dispute between Malta and Italy over who should welcome them.

The 49 refugees and migrants have been stranded for a record 18 days.

Prior to that, 177 people on board the vessel Diciotti had waited for 11 days before being taken in by Spain in August.

Italian Interior Minister Matteo Salvini, also leader of the far-right party the League, has shown no indication of softening his strict policy on immigration, stating that Italy will not take any of the 49 migrants.

"I have five million poor Italians to feed, after them, I will start thinking about the others," Salvini tweeted on Tuesday.

Salvini's position conflicts with his colleague Luigi di Maio, deputy prime minister and leader of the Five Star Movement, who has offered to welcome women and babies.

Salvini has declared Italian ports officially closed to rescue boats.

Nevertheless, numbers published by the interior ministry show that 3,293 people arrived in Italy by sea since June, 165 of whom disembarked on the Italian coast since December 21, when the two rescue vessels rescued the 49 migrants.

Crossing into Cyprus

Meanwhile, Cypriot authorities said on Tuesday that they picked up 31 Syrian refugees and migrants who had been dropped off by smugglers on a remote part of the coast after arriving by boat.

The Syrians, who are seeking asylum, were processed by police and transferred to a reception centre in the capital Nicosia.

The Syrians - 27 men, 3 children and one woman - told police that they had each paid $2,500-$3,000 in cash to be brought to Cyprus.

Police said the people smugglers avoided detection and managed to drop off their passengers in bad weather late on Monday on a beachhead in the Turkish-held north of the divided island.

They then crossed a UN-controlled buffer zone on foot to enter the internationally recognised Republic of Cyprus where they were picked up by police.

Cyprus has warned Brussels that was feeling the pressure of increased irregular migration flows.

The island, located around 160km from Syria's coast, has not seen the massive inflow of people experienced by Turkey and Greece.

But EU data earlier this year showed it had received the most asylum applications per capita of any of the bloc's 28 nations.

Additional reporting by Virginia Pitromarchi. Follow her on twitter @vpitromarchi