После окончания Могилевского педагогического института работал учителем в сельской школе. В декабре 1939 года был призван в армию. С первых дней Великой Отечественной войны принимал участие в боевых действиях, был ранен. После лечения в госпитале был заброшен в тыл противника и воевал на территории Минской области Белоруссии в составе партизанского отряда «Смерть фашизму», в котором являлся комиссаром. С лета 1943 года - командир одноименной партизанской бригады.
После войны окончил Высшую дипломатическую школу МИД СССР, находился в загранкомандировке в Германии, работал в центральном аппарате министерства.
С 1954 года - сотрудник внешней разведки. В 1957-1962 годах - помощник, а затем - заместитель резидента КГБ в Австрии. добился значительных оперативных результатов. С середины 1962 по 1967 год - резидент КГБ в Израиле. После возвращения в СССР - помощник председателя КГБ по разведке. В 1975-1979 годах находился в служебной командировке в Польше. В 1985 году вышел в отставку. В звании полковника.
Награжден орденом Красного Знамени, двумя орденами Отечественной войны I степени, двумя орденами Красной Звезды, многими медалями, а также нагрудным знаком «Почетный сотрудник госбезопасности». Автор ряда книг о подвигах партизан в годы Великой Отечественной войны.
Умер в 2013 году.