The evacuation of more than 450 fighters and civilians including wounded started on Monday from three Syrian towns under a rare deal between the government and rebels, a monitor said.

In September, both sides reached an agreement for a six-month truce in Zabadani, the last rebel bastion on Syria's border with Lebanon, and in Fuaa and Kafraya, the last two government-held Shia villages in northwestern Idlib province.

The UN-brokered deal provided for a ceasefire to allow in humanitarian aid and then for the evacuation of wounded civilians and fighters.

"More than 120 fighters and wounded have started to leave Zabadani" to other rebel-held areas in Syria via Lebanon and Turkey, Rami Abdel Rahman, head of the Syrian Observatory for Human Rights, said.

About "335 people, including civilians" have started to leave Fuaa and Kafraya to return to government-held areas, also via the two neighbouring countries, he said.

Those evacuated from Fuaa and Kafraya will travel to Turkey via the Syrian-Turkish border post of al-Hawa before flying to Beirut airport then travelling over land to Damascus, he said.

Those leaving from Zabadani will travel across the border to Lebanon and fly from Beirut to Turkey, before travelling back to opposition-held areas in Syria, he said.

A separate deal to evacuate thousands of militants and civilians from southern Damascus was apparently derailed on Saturday after the death of rebel chief Zahran Alloush.

President Bashar al-Assad's government has previously agreed to several ceasefires with rebel groups.

These "local reconciliation" deals usually provide for rebels to lay down their weapons in exchange for allowing in humanitarian aid to inhabitants living under siege.

More than 250,000 people have died in Syria since the beginning of the nearly five-year war.