Пал Палыч против сил зла

в 6:39, , рубрики: mikrotik, аутсорсинг ит, бэкапы, провайдеры, скрипты

Добрый день, народ! Сегодня (отчасти - в развлекательных, а отчасти - в образовательных целях) на примере одного случая из нашей практики мы рассмотрим такой малоприятный сценарий, как удалённая перенастройка Микротика в условиях, когда техподдержка провайдера на той стороне состоит из случайных людей, не способных вынуть свою голову оттуда, откуда у них растут руки элементарно предоставить информацию по настройке сети.

Собственно, как обстояла наша история:

Мы – аутсорсинговая компания, расположенная в Санкт-Петербурге. Занимаемся удалённым администрированием компьютеров, серверов, сетей, e.t.c. Мы, конечно, скажем, что «Мы всех лучше, Мы всех краше, Всех умнее и скромнее всех!», а вы нам, конечно, не поверите на слово, поэтому детали пока опустим.

Наш клиент – строительная компания, чей объект расположен где-то в чистом поле в Томской области, мимо которого в паре км каким-то чудом была проложена оптика. Сами мы там даже близко не были ни разу, но сотрудники клиента в переписке красочно живописали нам местные достопримечательности, например, сухую грязь, мокрую грязь, и ещё немного грязи в переходном состоянии, а также - что где стоит, куда подключено и так далее. Помимо этого, у них был центральный офис, где располагались серверы и административный персонал.

Чтобы иметь возможность как-то адекватно поддерживать сеть между офисом и стройплощадкой, нами была настроена пара Микротиков, связанных по l2tp+ipsec, которые мы настроили удалённо. Это было нужно, как минимум, для того чтобы инженеры и геодезисты на объекте (лично для меня было сюрпризом, что они находятся прямо там) могли работать с файловым сервером. В общем и целом – ничего сверхъестественного, решение вполне стандартное.

Но вернёмся всё же к той самой стройке посреди ничего. Как это часто бывает, при её возникновении, откуда-то из воздуха магическим образом образовался «провайдер», состоящий из:

  • руководителя (которого никто никогда не видел),

  • бухгалтера (не способного с четвёртого раза выставить правильный счёт),

  • техника (который один раз зашёл в вэб-интерфейс роутера, испугался и с тех пор в запое)

  • и девочки на телефоне (которую искренне жаль, потому что мысленно проклинали в первую очередь её).

Дальше я мог бы рассказать вам ворох увлекательных историй о том, как нам звонили и на чистейшем работяжъем сообщали что-то в духе:
"Ваш окаянный интернет, милостивые государи, храни вас Бог до самой вашей скорой кончины, снова изволил отключиться, будь он неладен! Поэтому, благородные джентльмены, счастья и здоровья вам трижды и ещё раз вдогонку, нам чертёж не выгрузить!"
После чего мы по несколько часов пытались добиться от провайдера ответа, что на этот раз стряслось у них на линии. Но я и так уже знатно ударился в лирику, поэтому вернёмся к ситуации, послужившей основой к этой статье.

Так вот: в один прекрасный момент та самая девочка на телефоне сообщила нам, что с понедельника у нас изменятся настройки сети. Но нам она их не отдаст, потому что у нас документов нету сообщить не может, ведь техник ей ещё ничего не передал. На вопрос «Так, а что делать то надо?» было отвечено – ждать. Информацию в таком подвешенном состоянии мы ждали два дня, и вот, в пятницу, в половину шестого вечера техник соизволил с нами связаться.

Исходно наш Микротик получал все настройки по DHCP. У этого есть свои плюсы и минусы, тут, думаю, никому разжёвывать не надо. И вот, по велению белой горячки какой-то неведомой силы, данный благородный джентльмен нетвёрдым голосом заявил, что теперь должна быть настроена статика. И, кстати, вот вам все данные, а мне надо бежать, у вас полчаса!

Так как смена сетевых настроек при малейшей ошибке грозила нам потерей девственности доступа к устройству, перспективы вырисовывались не радужные. Физически сам Микротик был замурован на складе, ключ от которого был в утке, утка - в зайце, а заяц - в отпуске на руках только у кладовщика, на тот момент уже отчалившего домой. График его работы мы на всякий случай уточняли ещё на этапе установки оборудования. Соответственно, если вдруг наш дорогой друг, счастья ему даром, где-то ошибся, диктуя нам устно IP, маску, шлюз и DNS, возможности попросить кого-то подключить к Микротику проводом ноутбук, раздать вайфай с телефона и дать нам доступ - не оставалось.

Конечно, оказавшись с таким раскладом мы были возмущены и обескуражены, а вслух произносили совершенно другое. Делать что-то, однако же, нужно было срочно, поэтому за дело взялся наш главный гуру, которого ради сохранения инкогнито мы будем называть Пал Палыч.
_______________
И нет, он не пишет сам о себе от третьего лица (по крайней мере, насколько известно остальным его коллегам). Просто его шпионский псевдоним выбран, как ник, под которым мы тут графоманией занимаемся собрались публиковать всякое.

Так как времени оставалось мало, он предпочёл использовать самое простое и изящное решение из доступных – напиться бэкап, откатывающийся по таймеру. Для чего был написан вот такой скрипт:

/system backup save name=reload
delay 600
/system backup load name=reload.backup password=""

Сделать его можно, если что, перейдя в System => Scripts. Чтобы было нагляднее, вот скрин:

Пал Палыч против сил зла - 1

Запустив его, мы получили бы 10 минут (600 секунд), чтобы вносить изменения. Замысел в том, что в итоге возможно два варианта развития событий:

1) Если все пошло так, как задумано, необходимо остановить скрипт (System => Scripts => Jobs и завершаем).

2) Если что-то пошло не так, просто ждем, пока истекут 10 минут, пьём пиво, смотрим видосы про котиков, и как патчить KDE под FreeBSD, а потом разбираемся, что именно.
При этом скрипт сам восстановит данные из резервной копии (которая была создана при запуске) и перезагрузит Микротик.

Прим.:
Разумеется, до того, как менять что-то важное, сначала рекомендуется протестировать скрипт, а именно:

  • Запустить его

  • Внести несущественные изменения (например, переименовать какой-нибудь неиспользуемый интерфейс)

  • Дождаться окончания 10-ти минут, и убедиться, что Микротик перезагрузился, и после перезагрузки все изменения отменились

Человек, не сильно погружённый в специфику, может задать резонный вопрос: а ради чего я всё это читаю нужно городить весь этот огород, когда есть волшебная кнопочка Safe Mode? Ответ до банального прост: когда вы меняете сетевые настройки Микротика, сессия мгновенно обваливается, и все ваши изменения пропадают.

В нашем случае опасения оправдались, и благородный синьор техник действительно оплошал, продиктовав нам неправильный IP. В итоге, позвонив ему и в ходе доброй дружеской беседы выяснив корректные настройки, мы подождали оставшееся до истечения таймера время, чтобы Микротик вернул DHCP и перезагрузился. После чего уже ввели всё, как надо (естественно, снова подстраховавшись скриптом, а то мало ли). К счастью, на этот раз проблем не возникло, и всё заработало, как должно.

Ну а мораль сей истории проста: никогда не стоит недооценивать силу человеческой глупости и раздолбайства. Ну и... не стоит забывать о бэкапах!

Автор: Pal_Palych

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js