Former Dodgers third baseman Justin Turner has agreed to a two-year year contract worth about $22 million with the Boston Red Sox.