본관은 청주(淸州). 호는 백암(白岩). 함경남도 원산 출신. 아버지는 한응구(韓應球)이다. 어려서 고향에서 사서삼경을 수학하다가 근대화에 관심을 가지고 원산 보명학교(普明學校)를 졸업한 뒤 측량학교(測量學校)를 다시 이수하였다. 20세 때 원산 홍도학교(弘道學校)의 교사로 들어가 제2세 교육에 전심전력하였다.
1910년 8월 나라가 일제에 강점되자 독립운동에 뜻을 두고 이동휘(李東輝)를 만나 그들의 권유로 동삼성(東三省)으로 망명하였다. 다시 러시아 영토인 블라디보스토크로 가서 활동하다가 신한촌(新韓村)으로 들어갔다. 거기에서 한국인 거류민 단장 채성하(蔡成夏)와 제휴하고 동지를 규합해 항일독립투쟁을 전개하였다.
보다 효율적인 독립사업을 위해서는 국내의 애국지사와 손을 잡아야 함을 인식하고, 장사꾼으로 가장, 고향인 원산에 돌아와 함경·강원·평안·황해도 등을 왕래하며 지하공작을 전개하였다.
그러던 중 조병철(趙炳喆)·김장석(金章錫)·안돈우(安敦雨)·최자남(崔子男)·문무술(文武術)·김상익(金相翊) 등과 함께 일제기관 파괴와 요인 사살·공금 탈취 등의 강력한 무력투쟁을 논의하였다. 이 때 거사용 폭탄 입수를 책임지기로 하고 블라디보스토크로 가서 성능이 강력한 폭탄을 입수, 국내로 반입하였다.
이것을 안돈우가 원산 광석동(廣石洞) 야산에 묻어 두고 가끔 장소를 옮겨다니면서 거사 장소와 대상을 물색하고 있었다. 1919년 7월 하순 강우규(姜宇奎)의 방문을 받고 노인동맹단(老人同盟團)에 가입하였다. 이 때 ‘신임 조선총독 사이토[齋藤實]를 폭살할 계획’이라는 강우규의 거사 소식을 듣고 동지 최자남의 가택에 그를 안내, 유숙하게 하였다.
같은 해 9월 2일 강우규가 서울역에서 사이토에게 폭탄을 투척했으나 미수로 끝났다는 연락을 받고 해외로 망명하였다. 북만주와 러시아 일대를 전전하다가 항일유격대를 조직, 일본헌병대·주재소 등을 습격, 큰 타격을 입혔다. 그러다가 국내에 산재한 일제의 주요기관 파괴를 단행하고자 갑산으로 잠입, 국내 깊숙이 들어오려고 했으나 밀고로 붙잡힐 찰나에 피신하였다.
활동이 여의치 않게 되자 다시 북만주 하얼빈 등지로 다니면서 투쟁을 모색하였다. 그러던 중 가족이 블라디보스토크로 피신했다는 연락을 받고 그 곳에 갔다가 헌병대원에게 붙잡혀 원산으로 압송되었다. 여기에서 3년간 옥고를 치루고 경성고등법원에서 징역 8년의 실형을 선고받고 서대문감옥과 함흥감옥에서 복역하다가 1925년 8월에 출옥하였다.
1945년 8월 23일 원산에 소련군이 진주했을 때 소련군사령관으로부터 면담과 함께 협력하라는 압박을 받다가 1947년 4월 월남해 서울에서 원산시민회 회장으로 선출되어 활동하였다.
1963년 건국훈장 독립장이 추서되었다.