Родился 6 августа 1949 г. в Москве в семье рабочих.
В 1972 г. окончил Московский институт электронного машиностроения по специальности "инженер-механик" (ныне - Московский институт электроники и математики Национального исследовательского университета "Высшая школа экономики").
После окончания средней школы работал монтером-радистом в "Мосэнерго".
В 1972-1974 гг. - инженер-конструктор в Конструкторском бюро полупроводникового машиностроения (Москва).
С 1974 г. служил в Комитете государственной безопасности (КГБ) СССР. Занимал должность младшего оперуполномоченного в Первомайском районном отделе Управления КГБ по Москве и Московской области. Позднее в том же управлении был сотрудником пятой службы (борьба с "идеологическими диверсиями"), в частности занимался противодействием вещанию западных радиостанций на СССР. В 1980-х гг. дважды принимал участие в боевых действиях в составе ограниченного контингента Вооруженных сил СССР в Афганистане.
С 1990 по 1994 г. - заместитель начальника Управления КГБ СССР (с 1992 г. - Министерства безопасности РФ, с 1993 г. Федеральной службы контрразведки РФ) по Москве и Московской области Евгения Савостьянова.
В октябре 1994 г. был назначен заместителем директора Федеральной службы контрразведки РФ Сергея Степашина (с 3 апреля 1995 г. - Федеральная служба безопасности РФ). Курировал направления экономической безопасности и следствия. Сохранил свой пост после назначения директором ФСБ 24 июля 1995 г. начальника Главного управления охраны Михаила Барсукова.
С 20 июня 1996 г. Николай Ковалев исполнял обязанности директора Федеральной службы безопасности РФ. Ранее, в тот же день, Михаил Барсуков был отправлен в отставку после скандала, связанного с задержанием членов предвыборного штаба президента РФ Бориса Ельцина Аркадия Евстафьева и Сергея Лисовского, с "коробкой из-под ксерокса", в которой находились 538 тыс. долларов США наличными (задержание было произведено с санкции Барсукова и главы Службы безопасности президента Александра Коржакова).
С 9 июля 1996 г. по 25 июля 1998 г. Николай Ковалев занимал должность директора ФСБ России.
15 июля 1997 г. в г. Ессентуки Ставропольского края Николай Ковалев и начальник службы безопасности самопровозглашенной "Чеченской Республики Ичкерия" Абу Мовсаев (ликвидирован спецназом ГРУ в 2000 г.) подписали Временное соглашение об обмене информацией и сотрудничестве в борьбе с терроризмом и захватом заложников. Предполагалось, что российские спецслужбы смогут участвовать в операциях на территории Чечни. Однако на практике это соглашение не было реализовано.
19 декабря 1997 г. директор ФСБ руководил операцией по освобождению взятого в заложники в Москве шведского дипломата. В результате переговоров террорист отпустил сотрудника посольства. Место дипломата в автомашине, где находился преступник, добровольно занял начальник штаба антитеррористической группы "А" ФСБ РФ полковник Анатолий Савельев. Во время штурма автомобиля террорист был убит, офицер "Альфы" также погиб. Действия представителей ФСБ расследовала Главная военная прокуратура, которая установила, что Анатолий Савельев скончался от "острой коронарной недостаточности" перед штурмом. Однако чуть позже несколько пуль спецназовцев также попали в тело полковника. Следствие признало действия всех участников операции "законными и адекватными сложившейся ситуации" и прекратило дело за отсутствием состава преступления.
С 25 июля 1996 г. по 3 марта 1998 г. Николай Ковалев являлся членом Совета обороны РФ.
В июле 1998 г. вышел в отставку. Во главе ФСБ его сменил замруководителя Администрации президента РФ Владимир Путин.
В 1998-1999 гг. бывший директор ФСБ работал заместителем генерального директора ОАО "Концерн "Научный центр" (ныне - ОАО "Ситроникс", Sitronics) в г. Зеленограде, дочерней структуры Акционерной-финансовой корпорации "Система".
25 ноября 1998 г. Николай Ковалев подал в суд иск на предпринимателя, исполнительного секретаря СНГ Бориса Березовского. Поводом для искового заявления стала публикация 13 ноября того же года газетой "Коммерсант" открытого письма Березовского в адрес директора ФСБ Владимира Путина. В нем утверждалось, что Ковалев "находился в сговоре" с руководителями одного из управлений ФСБ, которые, якобы, требовали от своих подчиненных убить Березовского. Исполнительный секретарь СНГ также утверждал, что Ковалев не провел "объективного разбирательства" по его обращению с информацией о готовящемся покушении. 17 ноября 1998 г. бывшие сотрудники ФСБ во главе с подполковником Александром Литвиненко провели пресс-конференцию, где поддержали версию Березовского. 18 июня 1999 г. Симоновский межмуниципальный суд Москвы частично удовлетворил иск бывшего директора ФСБ, обязав "Коммерсант" опубликовать опровержение сведений о том, что Ковалев не провел "объективного разбирательства" по обращению Березовского. Требования опровергнуть слова Березовского об участии Ковалева "в сговоре" судебное решение не содержало. 29 июля 1999 г. Мосгорсуд подтвердил этот вердикт, дополнительно обязав газету принести Ковалеву извинения за публикацию непроверенной информации. От материальной компенсации причиненного вреда экс-директор ФСБ отказался, сказав, что "не уверен в чистоте происхождения денег" Березовского.
В 1999-2003 гг. Николай Ковалев был депутатом Государственной думы РФ III созыва. Был избран 19 декабря 1999 г. по Шереметьевскому одномандатному округу №205 (Москва). Набрал 34% голосов, второе место занял Святослав Федоров от Блока генерала Андрея Николаева и академика Святослава Федорова (15,99%). В Думе был членом фракции "Отечество - Вся Россия". Занимал пост заместителя председателя комитета по безопасности, возглавлял комиссию по борьбе с коррупцией, был членом комиссии по вопросам профилактики безнадзорности, беспризорности и наркомании среди несовершеннолетних и молодежи.
В 2003-2007 гг. - депутат Государственной думы РФ IV созыва. 7 декабря 2003 г. избран по федеральному списку политической партии "Единая Россия" (седьмой номер региональной группы по Московской области). В Думе входил во фракцию "Единая Россия". Был председателем комитета по делам ветеранов.
В 2007-2011 гг. - депутат Госдумы РФ V созыва. Избран 2 декабря 2007 г. по федеральному списку "Единой России" (второй номер региональной группы №61, Орловская область). Вновь возглавил думский комитет по делам ветеранов, вошел во фракцию "Единая Россия".
В 2000-2011 гг. был представителем от Государственной думы в Постоянной делегации Федерального собрания РФ в Парламентской ассамблее Совета Европы.
В 2011-2016 гг. - депутат Госдумы РФ VI созыва. Был избран 4 декабря 2011 г. от партии "Единая Россия", на выборах возглавлял региональную группу №59 (Орловская область). С 23 ноября 2012 г. был председателем комиссии Госдумы по контролю за достоверностью сведений о доходах, об имуществе и обязательствах имущественного характера, представляемых депутатами Государственной думы. С марта 2012 г. возглавлял делегацию Госдумы в Парламентской ассамблее (ПА) ОБСЕ, с 2013 г. был спецпредставителем ПА ОБСЕ по борьбе с терроризмом.
До февраля 2016 г. входил в состав генерального совета Всероссийской политической партии "Единая Россия".
С 18 сентября 2016 г. - депутат Госдумы РФ VII созыва от партии "Единая Россия". Был избран по Орловскому одномандатному округу №145 (Орловская обл.), набрав 46,52%. Второе место в округе занял кандидат от КПРФ Василий Иконников (20,21%). В Думе Николай Ковалев занял пост заместителя председателя комиссии по правовому обеспечению развития организаций оборонно-промышленного комплекса РФ.
В июле 2017 г. был назначен заместителем председателя комитета Парламентской ассамблеи ОБСЕ по противодействию терроризму.
Скончался 5 апреля 2019 г. в Москве. Похоронен на Федеральном военном мемориальном кладбище в Московской области.
Действительный член Российской академии естественных наук.
Общая сумма декларированного дохода за 2015 г. составляла 5 млн 912 тыс. руб., супруги - 1 млн 642 тыс. руб.
Общая сумма декларированного дохода за 2016 г. составляла 7 млн 227 тыс. руб., супруги - 1 млн 363 тыс. руб.
Общая сумма декларированного дохода за 2017 г. составляла 5 млн 639 тыс. руб., супруги - 1 млн 547 тыс. руб.
Имел звание генерала армии (1998).
Был награжден орденами Красной Звезды, "За военные заслуги", "За заслуги перед Отечеством" IV и III (2006) степеней, Почета (2014), медалями. Имел Почетную грамоту президента РФ (2010), благодарность правительства РФ (2014).
Являлся почетным гражданином Орловской области (2014).
Был женат вторым браком, у него были дочь и сын.