С октября 1942 г. возглавлял Черноморскую группу войск Закавказского фронта, а с мая 1943 г. Северо-Кавказский фронт. Войска под его командованием успешно участвовали в Керченско-Эльтигенской десантной операции, в боях при освобождении Таманского полуострова, городов Майкопа, Краснодара и Новороссийска. С августа 1943 г. — генерал-полковник, с октября того же года — генерал армии.
В марте 1944 г. за неудачное проведение ряда локальных наступательных операций освобожден от должности командующего Приморской армией, зачислен в резерв Ставки ВГК и снижен в звании до генерал-полковника. В марте 1944 г. назначен командующим 33-й армией Западного фронта. С апреля того же года — командующий войсками 2-го Белорусского, а с августа — 4-го Украинского фронтов. С апреля 1945 г. — в должности начальника штаба 1-го Украинского фронта. В октябре 1944 г. вновь присвоено воинское звание генерал армии.
После войны командовал войсками Туркестанского военного округа, был первым заместителем главного инспектора Советской армии. С апреля 1953 г. — начальник Главного управления боевой и физической подготовки, с марта 1955 г. — первый заместитель главнокомандующего Сухопутными войсками, с января 1956 г. — главный инспектор Министерства обороны СССР.
Депутат Верховного Совета СССР 2—4-го созывов.
Герой Советского Союза (29 мая 1945 г.). Также награжден: пятью орденами Ленина, четырьмя орденами Красного Знамени, орденами Суворова и Кутузова 1-й степени, Трудового Красного Знамени, Красной Звезды, орденами Трудового Красного Знамени Туркменской ССР и Узбекской ССР; иностранными орденами, медалями.
Скончался 7 апреля 1958 г. Похоронен в Москве на Новодевичьем кладбище.
«Мы идем прикрывать Севастополь»Об этом совещании командования Приморской армии 31 октября 1941 г. нет следов в военных архивах. Известно о нем лишь из воспоминаний некоторых его участников, в первую очередь — Маршала Советского Союза Н. И. Крылова, в те дни — полковника, начальника штаба армии. Не озаботься видный военачальник записью, посчитай излишним зафиксировать на бумаге этот, конечно, далеко не самый яркий эпизод — и потомки лишились бы важнейшей подробности севастопольской эпопеи. Правда, командарм генерал-майор И. Е. Петров позднее называл иную дату — 27 октября, и хронология событий показывает, что он ошибался. Впрочем, это не так и важно, в данном случае куда важнее — сам факт совещания.
Состоялось оно в степном поселке Экибаш, что в 40 км севернее Симферополя. Генерал Иван Ефимович Петров вызвал командиров и комиссаров всех соединений Приморской армии на КП 95-й стрелковой дивизии. Съезжавшиеся под покровом быстро густевшей осенней тьмы командиры прислушивались к артиллерийской канонаде. Она не смолкала на севере, где, прорвав Ишуньские позиции и рассекая наш фронт, развивала наступление 11-я немецкая армия Э. фон Манштейна.