Родился 11.02.1915 года в селе Юрасов Хутор ныне Севского района Брянской области в семье служащего. Русский. Член КПСС с 1943 года. Окончил семилетнюю школу в Севске в 1929, рабфак в Москве в 1935. Работал на заводе. В Советской Армии в 1937—40 и с июня 1941. Был мастером цеха на заводе "Респиратор" в городе Орехово-Зуево Московской области. Окончил ускоренный курс Подольского артиллерийского училища в 1941 году. На фронте в Великую Отечественную войну с октября 1941 года. Командиp 306-го отдельного истребительно-противотанкового дивизиона (247-я стрелковая дивизия, 69-я армия, 1-й Белорусский фронт) капитан Иванов в ночь на 29.07.1944 года умело организовал переправу батарей дивизиона на левый берег реки Висла, а затем и прочную противотанковую Оборону плацдарма в районе города Пулавы (Польша). Артиллеристы участвовали в отражении 5 контратак пехоты и танков противника, удержании захваченного плацдарма. Звание Героя Советского Союза присвоено 25.09.1944 года. С 1947 майор Иванов — в запасе. Жил в Орехово-Зуево, работал инженером на заводе "Респиратор". Окончил химико-механический техникум. Награжден орденом Ленина, Красного Знамени, Александра Невского, Красной Звезды, медалями. Умер 16.03.1970 года. Занесён в Книгу почета завода. Имя Героя носят пионерский лагерь завода и улица в Орехово-Зуево.