The former Essex player, 33, broke a bone in his shoulder during South Africa's first Test win in Australia.
He had the operation on Thursday and team doctor Mohammed Moosajee said: "We are positive he will make a successful return to international cricket."
South Africa lead the three-Test series and bowled Australia out for 85 on day one of the second Test in Hobart.
Day two was rained off without a ball bowled with the tourists on 171-5.
Steyn will be able to begin a rehabilitation programme "in a few weeks", according to Moosajee.
"It is crucial to give the injury enough time to heal and to make sure that he is completely pain-free before he starts bowling again," added the team doctor.
The Cape Cobras fast bowler has taken 417 Test wickets for his country, just four short of Shaun Pollock's South Africa record.
South Africa bowler Dale Steyn will be out for at least six months after having surgery on his shoulder.