Aberdeen winger Niall McGinn gave the Irish a shock lead in Oporto when he made the most of a fast counter-attack in the 30th minute.
Postiga then grabbed the equaliser with 11 minutes to go on a rain-soaked pitch at the Dragao Stadium.
Portugal are now third in the group, level on seven points from four games with second-placed Israel but five adrift of group leaders Russia. The Irish have two points from three matches and are third from bottom.
"This was a bad result, we were poor in the first half and wasteful in the second. They punished us from a counter-attack and the goal brought anxiety," Portugal coach Paulo Bento told local television.
"I still believe we will make the 2014 finals in Brazil. It depends solely on us to get there via the play-offs if we can only get second place in the group."
Before the kick-off a grinning Ronaldo raised his thumb in approval as the 27-year-old became the third youngest European to reach a century of international appearances behind German Lukas Podolski and Kristen Viikmae of Estonia.
The Real Madrid striker's smile was shortlived though as Portugal, beaten 1-0 in Russia on Friday, lacked imagination and creativity against a combative Irish side.
"They had a lot of players in the defensive area which made it really difficult for us," said Postiga.
The home team gave a miserable first-half performance and went behind when McGinn's quick run up field caught right-back Joao Pereira off guard.
The Irish then had a double scare when centre-back Craig Cathcart miskicked a clearance against his own woodwork and Aaron Hughes went close to putting a header through his net.
Visiting keeper Roy Carroll also had to produce a fine reflex save to deny former Manchester United team-mate Ronaldo.
Paulo Bento brought on Eder in the 74th minute and Postiga pounced on a header from the tall Braga striker to earn his side a point.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.