Był oficerem Służby Bezpieczeństwa i kontrwywiadu, pracownikiem Ministerstwa Spraw Wewnętrznych w latach 80. oraz wiceminister w tym resorcie za rządów SLD. Swego czasu podejrzewany o bycie osławionym „Olinem”.
Był funkcjonariuszem Komendy Stołecznej MO, a od 1982 r. pracował w MSW. Zajmował się m.in. rozpracowywaniem opozycji. Po 1989 r. był wicedyrektorem gabinetu Andrzeja Milczanowskiego, szefa resortu spraw wewnętrznych. Kierował zespołem doradców premiera Józefa Oleksego, a po tym, jak Oleksego oskarżono o rzekome związki z rosyjskim wywiadem, został wiceministrem w MSW. Od stycznia do listopada 1997 r. był szefem Straży Granicznej. W 2001 r. został szefem Generalnego Inspektoratu Celnego. Od 2004 doradca Zbigniewa Wróbla ds. bezpieczeństwa/dyrektor ds. bezpieczeństwa i kontroli Orlenu. Jest również członkiem Instytutu Przetrwania Specsłużb (prezes Tadeusz Iwiński).