The 30-year-old Holland international has long been linked with a move to the west London club, where he will be reunited with compatriot Martin Jol, who was previously his manager at Ajax.
The deal casts further doubt over the future of long-term Fulham number one Mark Schwarzer, who may now look to leave the club before the start of the new season.
Stekelenburg, who has been capped 54 times by Holland, becomes Fulham's fourth signing of the summer following deals for Sascha Riether, Derek Boateng and Fernando Amorebieta, and is pleased to be linking up with Jol once again.
"It's good that I'll be joining Martin again," he told the club's official website. "He knows my capabilities very well, so I am just looking forward to joining up with the team in pre-season and enjoying some time with them prior to the new season starting.
"I am very happy to be joining Fulham and to have everything sorted out so early in the summer, so I can really focus on preparations for playing in the Barclays Premier League next season."
Jol, who guided Fulham to 12th place last season, believes his newest signing will adapt well to English football.
"Maarten Stekelenburg is a fine quality goalkeeper who I know well from my time working with him at Ajax and, of course, as the Dutch international goalkeeper I have always had an additional interest in his career," he said.
"I am sure that he will do well here at Fulham in the Premier League. He is a player of great quality and technical ability whose distribution and ability to react quickly and read the game is exceptional; he will be a fantastic addition to the talented team of keepers that we already have.
"I am delighted that he was so keen to come to join us and am very happy with the way that the summer is shaping up in terms of our signings, so on the whole I'm ever so pleased."
Source: PA
Source: PA