본관은 대구(大丘). 자는 치평(稚平), 호는 한산(漢山). 현감 서홍보(徐鴻輔)의 아들로 대사간 서장보(徐長輔)에게 입양되었다.
1843년(헌종 9) 진사시에 합격, 1853년(철종 4) 감제문과(柑製文科)를 거쳐 다음 해에 정시별시문과에 병과로 급제하였다.
1855년 도당록(都堂錄)에 오르고 다음 해에 홍문관부교리를 지냈으며, 1860년 성균관대사성에 이어 그해 10월에 동지부사(冬至副使)로 임명되어 정사 신석우(申錫愚)와 같이 청나라에 다녀왔다. 1862년 도승지를 거쳐 이조참판에 오르고, 이어 황해도관찰사를 역임하였다.
1864년(고종 1) 공조판서에 오르고 한성부판윤을 거쳐 사은정사(謝恩正使)로 청나라에 다녀왔다. 1866년 형조판서에 이어 예조판서를 지내고, 1869년 개성유수로 있으면서 관곡을 정비하였다. 1872년 의정부좌참찬, 1881년 사헌부대사헌을 지냈다. 1885년 판의금부사에 이어 이조판서를 역임하고 이듬해에 판돈녕부사가 되었다. 1893년 상호군(上護軍)으로 기로소(耆老所)에 들었다.