호는 남은(南隱). 경상북도 금릉(지금의 경상북도 김천) 출신.
1895년 명성황후 민씨(明成皇后閔氏) 시해사건에 이어 단발령이 내려지자, 유인석(柳麟錫)·권세연(權世淵)·노응규(盧應奎) 등이 일으킨 의병에 호응해, 김산향교에서 여영소(呂永韶)와 거병하기로 하고 의진을 편성하였다.
이어서 군비 2,000냥을 자비로 부담하고 예건대장기(禮建大將旗)와 김산복의대장기(金山伏義大將旗)를 만들어 앞세우고 진군하다 구성에서 일본군이 조종하는 관군에 패하였다. 1903년 전국의 의사들이 한마음으로 뭉쳐 국난에 대처해야 한다는 오백의사론(五百義士論)을 비롯한 양병론(養兵論)을 발표하여 세론을 환기시켰다.
1904년 3월 서울에 충의사(忠義社)를 조직하고 각 외국공사와 정부·일진회 등에 항의 서한을 보내 국권 침탈을 막아 보려고 노력하였다. 1905년 을사조약이 강제 체결되자, 7월 24일 이병구(李秉九)·지우룡(池禹龍)과 일본공사관을 폭파하려다가 일본 헌병대에 연행, 혹독한 고문으로 중상을 입었으며, 7개월의 옥고를 치른 뒤 1906년 2월에 석방되었다.
그 해 5월 5일 허위(許蔿)·이강년(李康秊)·우용택(禹龍澤)과 의병을 일으키기로 하고, 의병대장 최익현(崔益鉉)과 힘을 모아 서울에 입성한 뒤 통감부를 격파할 것을 맹세하고 각자의 지역에 취임하였다.
8월 2일에 김산군 병기창고에서 포 80발을 걷어서 의병 180명을 무장시키고 군비 200원을 준비해 가던 중, 옥중에서 얻은 병과 과로를 이기지 못하고 숨졌다. 을미사변 이후 을사조약이 체결될 무렵까지 작성한 상소문과 한관만차(漢館漫箚)·오백의사론(五百義士論) 등으로 민족의식을 드높이는 데 기여하였다.
1990년 애국장이 추서되었다.