The accident in the small Quebec town, located around 250 kilometers east of Montreal yesterday, created a spectacular fireball and forced 2,000 people from their homes.
Officials earlier only confirmed one fatality, but had warned the toll could rise. A search for bodies was to begin today at dawn.
The firefighter said on condition of anonymity that there had been at least 50 people in one bar that was consumed by the flames.
Witnesses reported as many as six explosions after the train derailed at about 0520 GMT in Lac-Megantic, a picturesque resort town of 6,000 residents near the border with the US state of Maine.
Also Read
Michel Brunet, a spokesman for Quebec's provincial police, said late yesterday the official death toll remained at one but added: "We expect there will be more fatalities."
Radio-Canada had earlier reported that 60 people were unaccounted for in Lac-Megantic, where the blaze was still raging, 20 hours on.
"There have been several reports" from people who said they were unable to reach relatives who lived near the accident site, Brunet said.
An initial evacuation zone of a kilometer around the crash site was widened yesterday as a precaution against harmful particles in the air, bringing the total to 2,000 people forced to leave their homes.
Around 150 firefighters were battling the blaze, including some who came across the border from Maine, just 25 kilometers south of the town.
The cause of the crash was still unknown, but a spokesman for the Montreal Maine & Atlantic company, Christophe Journet, told AFP the train had been stopped in the neighbouring town of Nantes, around 13 kilometers west of Lac-Megantic, for a crew changeover.
As a result, "there was no conductor on board" when the train crashed, he said.