The quake hit at a depth of nine kilometres (six miles) at 10:35 pm (1435 GMT), west of the town of Poso, according to the United States Geological Survey.
The USGS had initially put the magnitude of the quake at 6.9, though this was later reduced to 6.6.
Muhammad Guntur, who lives on the outskirts of the town, said it was felt strongly.
"People are panicking here. We are now all gathered outside of our houses," he told AFP immediately after the impact.
A hotel worker in Poso also said that people panicked when the quake struck but that things had returned to normal there.
"The electricity was off for a while," said the worker Buhory, who like many Indonesians goes by one name. "People were panicking but now it is on again and everything is okay."
National disaster agency spokesman Sutopo Purwo Nugroho said the quake was felt in Poso for about 20 seconds but there had been no reports so far of casualties or damage.
Local disaster agency officials were still assessing the impact, he added.