The Syrian army has captured several towns recently, and is close to Khan Shaykhun in the countryside of Idlib, the source said on condition of anonymity.
He added that the army has started targeting the rebel positions inside Khan Shaykhun as a prelude to the attack.
According to the source, the progress will allow the army to tighten the noose on the rebels in the towns of Al-Lataminah and Kafr Zita in the nearby countryside of Hama Province in central Syria.
The Syrian army is now two km from Khan Shaykhun, the source noted, adding the preparations are underway to storm the town amid shelling on the rebel poisons and clashes in the farmlands in the west of the town.
Khan Shaykhun is regarded as the main bastion of the Hayat Tahrir al-Sham, umbrella group of the al-Qaida-linked Nusra Front in the countryside of Idlib.
Advancing on Khan Shaykhun and nearby areas in the southern countryside of Idlib will allow the army to secure the main road between the capital Damascus and Aleppo Province.
Idlib, as well as the northern countryside of Hama, are included in the de-escalation zones' deal that was reached between Russia and Turkey last September.
The deal, however, has largely failed despite several attempts to revive it.
The latest attempt to fix the deal took place earlier this month when Turkey and Russia mediated a fresh cease-fire in Idlib, which failed quickly with the resumption of the military showdown.