The United Nations said Israeli and Lebanese leaders had agreed that a truce would take effect at 0500 GMT today.
Hezbollah leader Sayyed Hassan Nasrallah said on Saturday his guerrillas would observe a truce but reserved the right to fight Israeli soldiers still on Lebanese soil.
Lebanon rejected initial drafts of a UN resolution to end the fighting because they did not call for an immediate Israeli withdrawal.
The resolution approved by the Security Council on Friday calls for a full cessation of hostilities and for Israel to withdraw its troops at the earliest. As they withdraw, 15,000 Lebanese soldiers and an expanded international force of 15,000 foreign troops, likely to be led by France, will be deployed.
Israels cabinet approved the Security Council resolution yesterday but Foreign Minister Tzipi Livni said Israeli troops would only pull out when the international force was deployed which the UN says could take a week to 10 days.
Israel will leave in tandem with the deployment south of the Lebanese army along with the international force not a situation where we see that a Lebanese army soldier has arrived and now they tell us to leave, she told a news conference.
Al-Arabiya television reported that seven Israeli soldiers were killed in fighting in south Lebanon yesterday.
Saturday was the deadliest day of the month-old war for the Israeli army, with 19 soldiers killed and five missing and feared dead after their helicopter was shot down by Hezbollah.
Israeli aircraft attacked targets in more than 50 villages and towns, Lebanese security sources said, killing at least six people in southern Lebanon and seven in the Bekaa valley.
Several explosions shook Beirut and thick white smoke billowed over the Hezbollah-controlled southern suburbs. The attack destroyed 11 residential buildings.
More than 153 rockets fired by Hezbollah hit northern Israel, killing one person and wounding 11, Israeli police said.