Ukrainian President Volodymyr Zelensky has condemned as terrorism a Russian drone attack on a passenger train that local officials say killed at least four people.

Zelensky said another four people were missing after the train with more than 200 people on board was hit in Ukraine's north-eastern Kharkiv region on Tuesday.

Earlier, officials in Ukraine's southern port of Odesa said three people were killed in an overnight Russian drone attack.

Russia has not commented. Moscow has in recent months intensified its drone and missile strikes targeting Ukraine's energy and transport infrastructure as the country faces its harshest winter in years.

Millions of people across Ukraine have been left without heating, electricity and water after the Russian assaults.

In a post on social media late on Tuesday, Zelensky wrote: In any country, a drone strike on a civilian train would be considered in exactly the same way - purely as terrorism.

Pictures and footage released by Ukraine's emergency services show at least one badly destroyed carriage still burning after the attack.

The Kharkiv regional prosecutor's office said the train was struck near the Yazykove village. One drone hit a carriage directly, and another two exploded near the train.

Separately, officials in Odesa reported that Russia launched more than 50 drones on the port at night, targeting energy and civilian infrastructure.

City military head Serhiy Lysak confirmed three fatalities and 25 injuries due to the attacks on residential buildings.