A rescue boat carrying 41 migrants has docked at the port of Lampedusa in defiance of a ban on entering Italian waters, the second NGO vessel to clash with Italian authorities in a week.

The vessel Alex declined a Maltese offer to go to Malta, as the Mediterranea NGO operating it said such a long journey would have been dangerous for the people aboard.

The boat docked at the same quay where a week ago another NGO vessel collided with an Italian police boat after deciding to let migrants disembark after two weeks in international waters

The boat entered the port in Lampedusa in defiance of far-right Interior Minister Matteo Salvini who has tried to close Italian ports to the ships.

Mediterranea's Italian-flagged Alex announced it was heading to the southern island after waiting nearly two days with the rescued migrants and asylum-seekers on the small sailboat's deck.

"In view of the intolerable hygiene conditions aboard, the Alex has declared a state of emergency and is sailing towards Lampedusa, the only possible safe port for landing." Mediterranea said in a tweet.

Mr Salvini last month issued a decree that would bring fines of up to €50,000 for the captain, owner and operator of a vessel "entering Italian territorial waters without authorisation".

Authorities on Lampedusa last week seized another rescue ship belonging to German aid group Sea-Watch after it forced its way into port with dozens of rescued migrants on board and arrested its captain, Carola Rackete.

An Italian judge this week ordered her freed as she had been acting to save lives, a decision which sparked Mr Salvini's ire.

 Italian law enforcement officers stand on the pier at Lampedusa

Two other investigations, on charges of helping people smugglers and resisting the authorities are still under way after she forced her way past Italian customs vessels.

A third rescue ship, German charity Sea-Eye's vessel Alan Kurdi, carrying 65 shipwrecked migrants rescued off Libya arrived and held its position in international waters off Lampedusa.

"We are waiting in international waters off the island of Lampedusa," Sea-Eye tweeted from the Alan Kurdi.

German Interior Minister Horst Seehofer tweeted that Germany was ready to take in some of those rescued "as part of a European-solidarity solution."

Sea-Eye said the 64 men and one woman were rescued from an overloaded blue dinghy lacking sufficient drinking water, and there was no satellite phone or navigation aid on board.

Mr Salvini accuses NGO rescue vessels of helping smugglers and has said Alex should sail for the Maltese capital Valetta after 13 "vulnerable" people were yesterday taken to Lampedusa, leaving 41 on board.