Ukraine announced it was barring entry to Russian men between 16-60 years after an incident last weekend when Russia fired on and captured three Ukrainian naval ships off Crimea.
Earlier, in a move applauded in Kiev, US President Donald Trump called off a meeting with Russia's Vladimir Putin in Argentina to signal Washington's disapproval of Russian behavior in the naval clash with Ukraine.
News of the canceled meeting pushed down the Russian rouble, which is sensitive to events that might lead to new sanctions being imposed on Russia.
Announcing the move, President Petro Poroshenko, referring back to Russia's seizure and subsequent annexation of Crimea in 2014 and its support for separatist uprisings in eastern Ukraine, said it was important to stop full-scale invasion.
"These are measures to block the Russian Federation to form detachments of private armies here, which in fact are representatives of the Armed Forces of the Russian Federation," Poroshenko said.
"And not allow them to carry out the operations that they tried to conduct in 2014," he added.
Ukraine's border service chief said there would be exceptions on humanitarian grounds, such as if Russians needed to attend the funeral of a relative.
Officials said they might also impose additional restrictions on Russian citizens already in Ukraine.
In Moscow, a Russian lawmaker was quoted by RIA news agency as saying Russia had no plans for a reciprocal move to bar Ukrainian men.
Ukraine and Russia have blamed each other for last Sunday's clash at the Kerch Strait through which ships have to pass to reach Ukrainian ports at Berdyansk and Mariupol.
It prompted Ukraine to introduce martial law for a period of 30 days from Wednesday in regions of the country thought most vulnerable to a Russian attack. Poroshenko has requested NATO to deploy ships to the area.
Russian officials accuse Poroshenko of trying to manufacture a crisis to prop up sagging ratings ahead of an election next March.
But the incident has prompted renewed calls for more Western sanctions on Russia.
British Prime Minister Theresa May on Thursday said London would push for "appropriate sanctions" and called on Russia to release the Ukrainian vessels and crew.
The United States and the EU have imposed sanctions on Russia since 2014, when Moscow annexed Crimea after a pro-Russian leader was toppled in Kiev.
Fighting between Ukraine and Moscow-backed separatists has killed more than 10,000 people. Major fighting ended with a 2015 ceasefire but deadly exchanges of fire are still frequent.
By Pavel Polityuk and Natalia Zinets/Reuters
Writing by Matthias Williams; Editing by Richard Balmforth.