The former prime minister said it would be a "good idea" if Cameron took on the SNP leader in the run-up to September's referendum.
Brown also repeated his warning that pro-union politicians were allowing nationalists to portray the vote as "England against Scotland".
Speaking to journalists at a Westminster lunch, the MP dismissed arguments that Cameron should stand back from the battle because he was toxic to Scottish voters. "The prime minister has got to be part of this debate," he said.
Asked whether he thought that meant Cameron should agree to the Scottish first minister's demands for a debate, Brown replied: "People have to decide what the best way forward is. I think it would be a good idea if David Cameron did debate Alex Salmond, but I'm not involved in the negotiations."
Salmond has long insisted that Cameron should face him in a head-to-head debate. However the prime minister said any debate should be between the Scottish first minister and the leader of the anti-independence Better Together campaign, Alistair Darling.
The SNP seized on Brown's comments. SNP MSP Annabelle Ewing said Cameron was avoiding a debate because "he knows how weak his own arguments are".
“The pressure is now building on David Cameron to finally agree to the head to head debate the people of Scotland want to see – and he is fast running out of places to hide," she said.