Eastern Ukraine’s regions, which are controlled by pro-Russian rebels, have been granted self-ruled, as well as an amnesty for the fighters themselves.
The measures voted by Ukraine’s parliament are in line with the September 5 cease-fire agreement signed by President Petro Poroshenko.
The European and Ukrainian parliaments have also voted to ratify a major EU-Ukraine association agreement.
The rebels have been battling Ukrainian government forces since their seizure of eastern regions bordering Russia.
Ukraine and the West have accused Russia of backing the rebels with soldiers and heavy weapons. Russia denies doing so.
According to the UN, at least 3,000 people have been killed in the five-month conflict and more than 310,000 internally displaced in Ukraine.
The amnesty affects rebels in Donetsk and Luhansk regions, but does not cover the shooting down of the MH17 passenger plane in July.
Western leaders believe rebels shot down the Malaysia Airlines jet with a Russian missile – a charge the rebels and Russia deny.
Rebels accused of other “grave” crimes will not be covered by the new amnesty either.
Eastern Ukraine’s regions, which are controlled by pro-Russian rebels, have been granted self-ruled, as well as an amnesty for the fighters themselves
The rebels have controlled most of Donetsk and Luhansk regions since April. They launched their uprising soon after Russia annexed Ukraine’s Crimea peninsula.
On September 16, there was heavy shelling around the government-held airport in Donetsk, despite a fragile cease-fire.
Meanwhile Russia is preparing to send extra troops to Crimea, Russian media reported.
They quoted Defense Minister Sergei Shoigu as saying that deploying “proper and self-sufficient forces” there was a top priority in light of the “presence of foreign military in the immediate vicinity of our borders”.
The EU-Ukraine agreement ratified on Tuesday lies at the root of Ukraine’s crisis.
It was President Viktor Yanukovych’s refusal to sign the deal in November last year that triggered mass protests and his eventual fall from power.
The votes ratifying the agreement took place simultaneously, with a live video link-up between the parliaments in Brussels and Kiev.
Both President Petro Poroshenko and the President of the European Parliament, Martin Schulz, called it a historic day.
However, negotiations with Russia last week led to the free-trade part of the agreement being postponed until 2016.
There are fears in Ukraine that Russia will still try to scupper the deal.
The amnesty law passed by the Ukrainian parliament means pro-Russian separatists taken prisoner in the fighting should now be released.
Rebels holding government buildings in the east are now supposed to leave them, hand over captured Ukrainian soldiers and other prisoners and surrender their weapons.
However, many of the rebels are demanding full independence, and speak of creating a new state called “Novorossiya”, something Russian President Vladimir Putin has also mentioned in speeches.
Andre Purgin, a rebel leader in the eastern city of Donetsk, told AFP news agency that the eastern region “no longer has anything to do with Ukraine”.
“Ukraine is free to adopt any law it wants,” he is quoted as saying.
“But we are not planning any federalism with Ukraine.”
Andre Purgin nonetheless said the legislation was a “positive signal because it marks Kiev’s return to reality”.
President Petro Poroshenko said the proposals would guarantee the “sovereignty, territorial integrity and independence” of Ukraine, while paving the way for decentralization.
Ukraine association agreement (officially called the AA/DCFTA) would make Ukraine compliant with EU standards in the areas of human rights, security and arms control, and would remove trade barriers.
The pact has been signed, but Russia opposes the free-trade provisions, saying its market could be flooded with cheap EU goods shipped via Ukraine.
Until 2016 Ukraine will maintain its existing restrictions on imports from the EU, while enjoying full access to the EU market for its own exports.
In return, Russia has pledged to maintain favorable trade rules in place for Ukraine as an ex-Soviet republic.
Yet the crisis has severely hit Russia-Ukraine trade ties, with the two neighbors imposing economic sanctions on each other.