A defiant President Bashar al-Assad on Monday vowed to retake the whole of Syria, hours before a ceasefire aimed at bringing an end to the bloodshed took effect.

In a rare public appearance at a mosque in the Damascus suburb of Daraya, a former rebel stronghold recently recaptured by government forces, Assad said he was determined to recover "every inch of Syria from the terrorists.”

"After five years, some people still haven't woken up from their fantasies," Assad said, referring to the anti-government protests that erupted in Syria in 2011.

"Some were betting on promises from foreign powers, which will result in nothing," he said in an address which offered little conciliation ahead of the truce, which is part of a deal opponents say is stacked in his favour.