Готовилась к решительным боям и Россия. Оку на всем протяжении между Коломной, Серпуховым и Калугой заново укрепили. Вдоль берега выросли частоколы, выкопаны рвы и окопы. Осенью 1571 г. в степь были высланы отряды конницы, которые выжгли траву на огромной территории между Донковым, Новосилем, Орлом и Путивлем. Татарская кожица, если бы она выступила в зимний поход, осталась без корма.
Большую роль в укреплении обороны южной границы сыграл новый устав — «Боярский приговор о станичной и сторожевой службе». В феврале 1571 г. в Москве были собраны дети боярские, служившие на «украине», воеводы пограничных крепостей, начальники сторожевых станиц — станичные головы. Участники этого совещания, хорошо знавшие пограничную службу, и разработали этот устав.
Главное внимание в «Приговоре» было уделено сторожевой службе, чтобы заблаговременно оповещать воевод о приближении крымских татар и избегать повторения неожиданного нападения крымского хана.
На всем огромном протяжении степной границы были поставлены сторожевые станицы, определены маршруты движения конных станичников. Станичники должны были быть «усторожливы от крымские и от ногайские стороны», «к своим урочищам ездити и сторожам на сторожах стояти в тех местах, которые б места были усторожливы, где б им воинских людей мочно устеречь».
Сторожевой дозор из двух конных станичников, «с конь не сседая», ездил по заранее определенным маршрутам вдоль границы. «А станов им не делати, — предписывал устав, — а огни класти не в одном месте; коли каши сварити и тогда огня в одном месте не класти дважды; а в коем месте кто полднивал и в том месте не ночевать, а кто где ночевал и в том месте не полдневати. А в лесах им не ставитца, а ставитца им в таких местах, где было бы усторожливо».
Обнаружив врага, станичники должны были немедленно сообщить воеводам «в государевы в украинные города», а сами тайно наблюдать за противником, чтобы точно выяснить его численность и намерения. В свою очередь пограничные воеводы обязаны были заботиться, чтобы «у сторожей лошади были добры», чтобы каждый станичник отправлялся в дозор «о дву конь».
Согласно «Приговору», станичники несли сторожевую службу с 1 апреля до 1 декабря — в опасное для пограничных областей время. Каждая станица проводила в дозоре две недели и не возвращалась, не дождавшись смены. Роспись определяла, где и в какое время станицы должны были нести службу.
Была создана таким образом стройная система сторожевой пограничной службы на всем протяжении степной границы. Уже в следующем году эта система сыграла важную роль в отражении крымского похода — московское правительство было своевременно оповещено об опасности.
Весной 1572 г. русские полки вышли на южную границу и заняли позиции на возможных путях крымской орды. Царь Иван IV собрал для обороны юга примерно 20 тыс. воинов — все, что можно было выделить, учитывая продолжавшуюся Ливонскую войну. Основные силы русского войска встали в Коломне, хорошо укрепленной крепости на реке Оке. Специально против легковооруженной крымской конницы в Коломне был построен «гуляй-город». За его деревянными стенами стояли пушки. У бойниц, недосягаемых для татарских стрел, становились вооруженные пищалями стрельцы. Для легкой татарской конницы деревянные стены «гуляй-города» были непреодолимым препятствием.
Крымский хан вторгся на Русь в июле 1572 г. Татарская конница обошла Тулу, устремилась к Оке. Попытка перейти реку на Сенькином броде выше Серпухова не удалась — передовые отряды татарской конницы были отбиты. Тогда хан повел свою основную орду к серпуховским переправам. Здесь татары встретили прочную оборону. В опасный район, к самым бродам, был перевезен «гуляй-город», надежно закрывший переправу. Ночью Девлет-Гирей передвинул войско снова к Сенькиному броду и сбил оборонявший его немногочисленный дворянский отряд. Началась переправа всей орды. Тем временем легкая ногайская конница устремилась на север, отрезая дороги к Москве. Создалось угрожающее положение. Казалось, «московское разорение» может повториться еще раз. Попытка задержать продвижение хана в верховьях реки Нары не удалась. Орда вышла на серпуховскую дорогу и устремилась к Москве.
Однако растерянность, вызванная неожиданной переправой орды через Оку, уже прошла. Следом за татарским войском поспешил передовой полк воеводы Хворостинина, а за ним остальные полки. Передовой полк настиг татар у Молодей, в 45 верстах от Москвы, и разгромил их арьергард. Сыновья хана, командовавшие арьергардом, советовали хану: «К Москве идти не по што, московские люди побили нас здесь, а на Москве у них не без людей же!». Но хан не послушался и направил на помощь сыновьям 12-тысячный отряд, сам продолжая движение к Москве. Подоспевшая татарская конница обрушилась на немногочисленный передовой полк Хворостинина. Воевода начал отступление. Но татары рано торжествовали победу. Хворостинин вывел их под стены «гуляй-города», откуда на татарскую конницу обрушился град ядер и пуль. Потеряв много воинов, татары поспешно отошли. Девлет-Гирей, узнав об этом поражении, приостановил наступление на Москву. Имея в тылу у себя русскую армию, осаждать сильно укрепленный город было опасно. Целый день хан простоял на реке Пахре, в 30 верстах от Москвы, а затем двинулся к Молодям, где уже собрались все русские полки. Здесь и произошло решительное сражение.
Русские воеводы до подхода врага успели укрепить позицию, собрали на холме «гуляй-город», окружили его рвами. Здесь засел с пушками большой полк. Остальные полки встали с флангов и с тыла. Такое расположение русского войска было вполне оправданным. При тройном численном превосходстве татар без заранее подготовленных укреплений устоять было очень трудно. Как показали дальнейшие события, «гуляй-город» сыграл решающую роль в битве.
Основной удар хан наносил против центра русского войска, но большой полк, прикрываясь стенами «гуляй-города», отразил бешеный натиск татарской конницы пушечной и ружейной стрельбой. Другие русские полки фланговыми ударами помогали обороне. Целый день продолжалось сражение. Татары понесли большие потери, главнокомандующий татарской армии Дивей-мурза попал в плен. Крымский хан приостановил атаки, но поле боя не покинул. Отряды татарской конницы со всех сторон окружили «гуляй-город», за стенами которого укрылись поредевшие русские полки.
Через два дня, 2 августа, штурм «гуляй-города» возобновился. До вечера конные и пешие отряды татар безуспешно штурмовали деревянные стены, неся огромные потери. Русские пушкари и пищальщики стреляли метко. Целый день длилось упорное сражение. К вечеру, когда натиск татар начал ослабевать, русские полки устроили вылазку. Воевода Воротынский с полками незаметно вышел из «гуляй-города» и обошел татар с тыла, а оставшийся на месте Хворостинин после сокрушительного залпа из всех пушек напал на них в лоб. Татары не выдержали двойного удара и побежали. Потери врага были огромными. В битве погибли сын и внук Девлет-Гирея, много знатных крымских и ногайских мурз попало в плен. Русская конница преследовала врага до Оки, где был разбит еще один 5-тысячный татарский отряд. Поход крымского хана Девлет-Гирея на Москву на этот раз закончился полной неудачей.
Победа при Молодях имела огромное значение. Крымская орда была разбита в открытом бою, несмотря на тройное превосходство в силах. Вместе с поражением турок под Астраханью это была неудача турецко-крымского плана добиться господства в Причерноморье и оттеснить Россию с нижней и средней Волги. Но эти победы удались России ценой огромных усилий — война в Ливонии продолжалась. К тому же в 1572 г. Ивану IV пришлось посылать 5 полков «на казанских людей, на луговую и горную черемису», которые подняли восстание. Однако и после победы при Молодях Россия была вынуждена держать на южной границе большие силы. В 1573 г. на юге стояли 10 полков. В этом году крымские татары напали на рязанские места. Крымский наезд был непродолжительным. Получив известия о приближении русского большого полка из Серпухова, татары отступили. Другое русское войско ходило походом на Большую Ногайскую Орду. В 1574 г. снова крымцы и ногайцы воевали на рязанской «украине». Однако эти их вторжения не шли ни в какое сравнение с большими нашествиями крымского хана.