평안남도 용강 출신. 1904년 무관학교 군사특과에 입학하여 졸업한 뒤 교관으로 임관되었다. 1907년 일제에 의한 우리나라 군대의 강제해산 이후부터 독립운동에 투신하였다.
황해도 재령에 양원학교를 중심으로 학무회를 조직하여 민족교육을 통한 독립운동가 양성에 힘썼고, 고향인 용강에 충일학교와 사범강습소를 설립하였다.
또한 재령의 문창학교 교장을 지냈고 안악의 양산학교에서도 교편을 잡았는데, 여기서 김구(金九)와 만나면서 독립운동에 더 적극적으로 가담하게 되었다.
1910년 12월 안중근(安重根)의 종제(從弟) 명근(明根)의 독립운동자금모금사건이 탄로되자 김구 및 해서교육총회 지도자들과 함께 투옥되었다.
이 때 10년 형을 언도받고 6년간 서대문형무소에서 옥고를 치렀다. 출감한 뒤에 평양교회를 중심으로 독립운동을 계속하다가 1918년상해(上海)로 망명하였다.
그리고 상해에 대한민국임시정부가 수립된 뒤부터는 임시정부를 중심으로 독립운동을 전개하였다. 임시정부 군사국장, 무관학교 교관·학도대장, 임시의정원 부의장, 상해거류민단장 등을 역임하였다.
1921년에는 고려혁명위원회의 위원이 되어 시베리아로 가서 공산주의자들과 대결하고 시베리아 지방의 선교에도 힘썼다.
1930년 감리교의 정회원 목사안수를 받고 시베리아에서 만주 간도의 동흥진으로 옮겼다. 이곳에서 10년간 선교와 민족독립운동에 힘썼다. 이 지방에 교회 6개 처와 학교 5개소를 신설하고 동흥진교회 담임목사로 시무하였다.
1940년부터 광복될 때까지 간도 연길교회 목사로 시무하였고, 광복이 되자 곧 귀국하여 옹진교회 목사로 시무하였다. 6·25전쟁 때 제주도로 피난 가서 1957년 3월까지 7년간 7개의 교회를 신설하였다.