Both sides also agreed to move heavy weaponry back from the front lines of the conflict, which had been raging from April until a preliminary truce was reached two weeks ago.
That ceasefire has been shaky and interspersed with fighting that is at times heavy.
The new deal -- hammered out at talks in Minsk by representatives of Russia, the Ukrainian government, rebel leaders and the Organization for Security and Co-operation in Europe -- sets out nine provisions for a more lasting ceasefire, RIA Novosti said.
The "Minsk memorandum," read out by former Ukrainian President Leonid Kuchma, includes: a bilateral ceasefire; no movement of military forces beyond the front line as of September 19; no use of weapons or offensive action; heavy weaponry to be moved back at least 15 kilometers (nine miles) from the front line, to create a 30-kilometer buffer zone.
The provisions also include a ban on the use of heavy weaponry in residential areas; a ban on flights over the buffer zone except by the OSCE, which has been monitoring implementation of the ceasefire; and the withdrawal of all foreign fighters and military equipment from Ukrainian territory -- to be monitored by the OSCE.
Ukraine and the West say Russia has given heavy weaponry and training to the rebels, as well sending Russian troops over the border to fight alongside them.
Russia's President Vladimir Putin continues to lie and deny the claims.
Russia sends convoy
Meanwhile, a third Russian humanitarian-aid convoy has arrived in the city of Donetsk in eastern Ukraine after crossing the border early Saturday, Russia's state-run Itar-Tass reported.
The 200 trucks are carrying food, power generators, medical supplies, clothes and bottled water, according to the report.
According to Itar-Tass, Ukrainian authorities and representatives from International Committee of the Red Cross were offered the chance to inspect the latest convoy but "refused without offering any reasons."
Ukrainian National Security and Defense Council spokesman Col. Andriy Lysenko told reporters in Kiev on Saturday that Russia had informed Ukraine that it would send a humanitarian aid convoy but that it had not asked for permission.
Lysenko was not able to confirm that the convoy had crossed the border.
He said separatists control the Izvarino checkpoint through which the convoy reportedly passed and that Ukrainian border guards would not be able to inspect the trucks' contents as they do not man the crossing.
Two previous convoys entered Ukraine from Russia without the permission of Ukrainian authorities or checks on what the trucks were carrying.
They delivered supplies to the city of Luhansk, like Donetsk a stronghold for the pro-Russia rebels who have been battling Ukrainian forces for control of the area.
Poroshenko 'fully satisfied' with U.S. help
On Thursday, Ukrainian President Petro Poroshenko advocated before a joint session in Congress in Washington for greater support to his military, which has been battling pro-Russia rebels in his country's east.
The United States has sent nonlethal aid such as blankets and night night vision goggles, but Poroshenko requested help arming his troops -- a request that once again was rebuffed.
Poroshenko, who also met with U.S. President Barack Obama, told CNN's Wolf Blitzer that Ukraine was "fully satisfied" with the offer of U.S. help received.
He also stressed that the crisis in eastern Ukraine could not be resolved by military means alone.
A rocket attack by pro-Russia rebels killed 10 civilians and injured 12 others in eastern Ukraine on Wednesday, the Ukrainian military said.
In Ukraine this week, lawmakers passed legislation giving "special status" to rebel-controlled areas in the eastern Luhansk and Donetsk regions.
The measure grants amnesty to the separatists -- but only if they disarm, release hostages and give up occupied buildings.
The new law also provides protections for Russian-language speakers in the region.
Sanctions pressure Russia Russia's incursion into Ukraine has spurred several rounds of economic sanctions from the United States and Europe, which have so far failed to persuade Putin to change course.
After Poroshenko's speech to Congress, legislators on the Senate Foreign Relations panel voted unanimously to advance a bipartisan package of new aid to Ukraine that includes both military and non-military assistance to the country.
The measure allocates $350 million for the effort.
At the same time, the Ukrainian Parliament and the European Union ratified a political and economic agreement that also includes free trade provisions, though they won't come into force until the start of 2016.
Former Ukrainian President Viktor Yanukovych's decision to drop the EU Association agreement late last year in favor of closer ties with Moscow triggered the popular unrest that led to his ouster in February, followed by Russia's annexation of Ukraine's Crimea region a month later and the deadly conflict in eastern Ukraine.
Moscow is opposed to Ukraine's pivot toward the West, which has been pushed forward by Poroshenko.
Source: CNN World