Удаленное управление и обмен данными между роутерами Микротик через SSH-exec

Здесь выкладываем скрипты
Правила форума
Уважаемые Пользователи форума, обратите внимание!
Ни при каких обстоятельствах, Администрация форума, не несёт ответственности за какой-либо, прямой или косвенный, ущерб причиненный в результате использования материалов, взятых на этом Сайте или на любом другом сайте, на который имеется гиперссылка с данного Сайта. Возникновение неисправностей, потерю программ или данных в Ваших устройствах, даже если Администрация будет явно поставлена в известность о возможности такого ущерба.
Просим Вас быть предельно осторожными и внимательными, в использовании материалов раздела. Учитывать не только Ваши пожелания, но и границы возможностей вашего оборудования.
Sertik
Сообщения: 1598
Зарегистрирован: 15 сен 2017, 09:03

Написал новую статью на Хабре про скриптовые возможности через SSH-exec https://habr.com/ru/post/711114/.
Проблема была поднята на официальном форуме Микротик. Прочитайте, обещаю, будет интересно.
Не могу не упомянуть о казусном случае, произошедшем при данной работе.
Не скрою, что общение с несомненно более знающим, иностранным коллегой Rextended (живущим, в Италии, но симпатизирующим Украине, на форуме с 2014 г.), да и очень сильным программистом, было весьма полезным для меня, но завершилось престранным образом – уважаемый иностранный «коллега» послал меня к черту. Да, да Вы верно прочли (go to hell, написал он мне на официальном форуме https://forum.mikrotik.com/viewtopic.ph ... 03#p977760, этот пост до сих пор висит там!) Причём, произошло это вследствие того, что я указал ему на его, по моему мнению, неточность, ни коим образом не желая его обидеть ни как уважаемого гуру форума, ни как человека, который реально мне очень помог со скриптом. Причём, он знал, что я не профессиональный программист, а врач по специальности, и подходы к пониманию и решению задач программирования у нас с ним вполне могут быть принципиально разные, да и уровень знаний, разумеется тоже.
Понимаю, в том числе как доктор, что талантливым людям можно многое простить, но оказывается это не первый случай на официальном форуме Микротик, в том числе наш форумчанин (по иронии судьбы со схожим ником REX) рассказывал мне об этом "товарище" раньше , тут на нашем, русскоязычном форуме (viewtopic.php?p=87497#p87497).
Разумеется, я не стал отвечать на грубость грубостью, понимая, что вероятно, в Италии, могут нынче существовать проблемы с отоплением и счетами за него, что не может дополнительно не сказаться на повышении раздражительности неустойчивых натур. Я, разумеется, не стал провоцировать дальше своего «коллегу», а постарался извиниться как мог, даже за то чего не делал, как требует профессиональная этика. Да и здоровье «пациента» не хотелось подрывать, а то вдруг это вызвало бы у него настоящее обострение.
Радует другое – если у нас есть врачи, которые могут писать такие скрипты, то можно представить какие у нас есть настоящие программисты !
Хотя мне жаль, что так закончилось, Rextended реально крутой dude !


фрагменты скриптов, готовые работы, статьи, полезные приемы, ссылки
viewtopic.php?f=14&t=13947
Аватара пользователя
podarok66
Модератор
Сообщения: 4355
Зарегистрирован: 11 фев 2012, 18:49
Откуда: МО

Ого, я уж и из головы выбросил свои давние эксперименты с ssh-exec, а о них, оказывается помнят и кто-то любопытный полез в такие дебри, какие мне и не снились. Очень интересные выводы. Рад, что всё приходит к таким интересным решениям. Функции, передаваемые на удаленные устройства - это весьма интересно. Представьте себе админов, держащих библиотеку лишь на одном устройстве, но пользующихся ими на целом парке устройств. Красота!


Мануалы изучил и нигде не ошибся? Фаервол отключил? Очереди погасил? Витая пара проверена? ... Тогда Netinstal'ом железку прошей и настрой ее заново. Что, все равно не фурычит? Тогда к нам. Если не подскажем, хоть посочувствуем...
Sertik
Сообщения: 1598
Зарегистрирован: 15 сен 2017, 09:03

Спасибо, дружище, за Ваш комментарий ! Помните, как Вы мне помогали настроить SSH и как долго у меня ничего не получалось ? Ну вот теперь, наконец, вышло. Что-то делаю по мере возможностей. Жаль, что на форуме теперь совсем мало скриптописателей.
Все куда-то разбрелись. У большинства, тем более, профессионалов, другие заботы и почти нет времени.

Теперь вот борюсь с засадой - передать скрипт на удаленный Микротик. Не функцию (которая сразу определяется), а скрипт из репозитория SSH-клиента в репозиторий SSH-сервера. Пока никак не выходит. Там проблема в том, что передача (как и при передаче текста функции) происходит в любом случае через образование текста в переменной строкового типа (строке). Но функция при этом сразу определяется и уходит в окружение, а скрипт нужно поместить в репозиторий и правила синтаксиса передачи у этих двух структур разные. Понятно, что есть ограничение по передаче скрипта 4К. Некоторые символы нельзя передать не экранируя, но экранированные, они не правильно добавляются в текст скрипта. Я уже начинаю думать, что это не возможно, в отличие от передачи функции. Не знаю, тут нужен профи. Также можно передавать задание Планировщика. Если получиться решить первое, то решится и второе - так как решение аналогичное. Можно, конечно, попробовать передать через файл (там ограничений по длине нет), но даже если получится, это не есть хорошо для роутеров с flash-памятью. Кто хочет может присоединиться.


фрагменты скриптов, готовые работы, статьи, полезные приемы, ссылки
viewtopic.php?f=14&t=13947
REX
Сообщения: 201
Зарегистрирован: 01 апр 2021, 08:19

Sertik :ko_re:sha:
на форуме теперь совсем мало скриптописателей.
есть чутка, когда технические фантазии присутствуют :-)
а что по теме ссылки с моим участием, задачу я успешно решил полностью.Ещё раз большое спасибо Вам за оказанную помощь и консультации :co_ol: Никто не интересовался продолжением той темы, потому так и оставил её по сути открытой....
По большому счёту были решены два вопроса:
1. НЕиспользование флэшпамяти, весь процесс работает в оперативной
2. Редактирование xml-файла, подразумевающего замену значения переменной на имя переменной.
вот фрагмент кадра, как это выглядит в реальности...в дальнейшем предполагается добавить влажность, состояние отопительной системы(ON/OFF), никаких именно в программной части уже сложностей нет, есть некоторые хардварно-временные :) нюансы...Обновление температуры- раз в минуту,чаще смысла не вижу, можно даже пореже сделать, всё это легко решается....


Изображение


Sertik
Сообщения: 1598
Зарегистрирован: 15 сен 2017, 09:03

Да, припоминаю, Вы хотели вывести показания температуры на изображение с видеокамеры. Здорово, что удалось ! Вы бы в той теме положили чёткую инструкцию, как это делается, тогда и у других интерес бы возможно появился.


фрагменты скриптов, готовые работы, статьи, полезные приемы, ссылки
viewtopic.php?f=14&t=13947
Аватара пользователя
podarok66
Модератор
Сообщения: 4355
Зарегистрирован: 11 фев 2012, 18:49
Откуда: МО

REX писал(а): 18 янв 2023, 09:20 Sertik :ko_re:sha:
на форуме теперь совсем мало скриптописателей.
есть чутка, когда технические фантазии присутствуют :-)
а что по теме ссылки с моим участием, задачу я успешно решил полностью.Ещё раз большое спасибо Вам за оказанную помощь и консультации :co_ol: Никто не интересовался продолжением той темы, потому так и оставил её по сути открытой....
По большому счёту были решены два вопроса:
1. НЕиспользование флэшпамяти, весь процесс работает в оперативной
2. Редактирование xml-файла, подразумевающего замену значения переменной на имя переменной.
вот фрагмент кадра, как это выглядит в реальности...в дальнейшем предполагается добавить влажность, состояние отопительной системы(ON/OFF), никаких именно в программной части уже сложностей нет, есть некоторые хардварно-временные :) нюансы...Обновление температуры- раз в минуту,чаще смысла не вижу, можно даже пореже сделать, всё это легко решается....


Изображение
Я, признаться, счёл ваш проект несбыточным, потому и выбросил из головы. Надеюсь вы на меня не в обиде? Очень рад, что у вас всё получилось.


Мануалы изучил и нигде не ошибся? Фаервол отключил? Очереди погасил? Витая пара проверена? ... Тогда Netinstal'ом железку прошей и настрой ее заново. Что, все равно не фурычит? Тогда к нам. Если не подскажем, хоть посочувствуем...
REX
Сообщения: 201
Зарегистрирован: 01 апр 2021, 08:19

тогда и у других интерес бы возможно появился.
мне думается, что интерес как таковой первичен, потому если есть интерес, то человек и пытается его удовлетворить, в том числе поисками решения и т.д....собственно я так и поступал...будет проявлен интерес, мне не сложно продолжить тему :-)
podarok66
Я, признаться, счёл ваш проект несбыточным, потому и выбросил из головы. Надеюсь вы на меня не в обиде? Очень рад, что у вас всё получилось.
Возможно Вы только подумали, что проект не реализуем, но не озвучивали это, я как то не видел Вашей критики :) Нет конечно, какие могут быть обиды :dr_ink: мне даже несколько приятно слышать Вашу оценку моей работы, которую Вы изначально считали бесперспективной и не реализуемой.
Дело в том, что на "чистом" lunix(е) эта задача была решена до меня, вопрос стоял так, что хотелось решить задачу именно на скриптовом языке Mikrotika, со всеми, как говорится "нюансами" и в частности, без "промежуточного" xml-файла и использовании flash памяти, что и было сделано.Особенно "смешно" в прямом и переносном смысле удалось реализовать работу с xml-файлом :-)
Прошу прощения за оффтоп, эта тема не для подобных разговоров, скорее "Общее" пожалуй...


Аватара пользователя
podarok66
Модератор
Сообщения: 4355
Зарегистрирован: 11 фев 2012, 18:49
Откуда: МО

А вот и нет. Именно такие обсуждения делают нашу техническую ветку живой :-): Многие не очень любят кучу сухой технической информации без пояснений и обсуждений. Им сложно быть сосредоточенными на технических деталях постоянно. А наши с вами небольшие упоминания о прежних проектах кого-то сподвигнут к розыску упоминаемых тем. Возможно, человек найдёт то, что даже и не предполагал возможным ( как вот с вашим проектом). Так что, если не жалко, поделитесь наработками. :smu:sche_nie:


Мануалы изучил и нигде не ошибся? Фаервол отключил? Очереди погасил? Витая пара проверена? ... Тогда Netinstal'ом железку прошей и настрой ее заново. Что, все равно не фурычит? Тогда к нам. Если не подскажем, хоть посочувствуем...
REX
Сообщения: 201
Зарегистрирован: 01 апр 2021, 08:19

А вот и нет. Именно такие обсуждения делают нашу техническую ветку живой
Здесь согласен совершенно с Вами, обсуждать можно и нужно, но на данной площадке присутствуют как профессиональные люди, так и любители, в смысле НЕпрофессионалы, потому обсуждения принимают иногда весьма забавный вид :-)
Принося свои извинения за оффтоп, я имел виду не собственно отказ обсуждений как таковых, а то, что дискуссия происходит в этой конкретной, именной теме и к существу её имеет весьма отдалённое отношение, соответственно предположив, что раздел "Общее" будет более уместен :-): но раз так, и Вы как модератор, а также автор темы Ув. Sertik не возражаете, то позволю тогда себе продолжить....
Ранее, выше я говорил, что:
когда технические фантазии присутствуют
и это мне думается является отправной точкой для поиска решений, в том числе и инициировании вопросов.Разумеется,есть категория пользователей, если не профессионалов, но работающих в области, где требуется решить отдельные вопросы по использованию и применению Микротиков, в том числе связанных с решением сетевых вопросов, которые сами по себе уже, даже без применительно к Микротик, есть целая и большая тема.Признаться, меня несколько "выбешивает" :-) , когда пользователь задаёт к примеру свой первый вопрос, иногда не простой или весьма некорректно заданный, просит общество помочь решить его прямо здесь и сейчас, но палец о палец не ударив, что бы мат.часть покурить...
Я к чему всё это....это к тому, что "ищущий" всё таки должен понимать разницу между утопией и теоретической возможностью, грань правда здесь весьма тонкая и зыбкая :-):
Что касается конкретно моего проекта, то по сути, он в нескольких темах, я последовательно двигался в решении, не без сложностей конечно, в особенности когда нужно было записать xml-файл в видеокамеру, в начале пути и получив весьма "окрыляющий" ответ на офф.англоязычном форуме, о чём и упомянул Ув.Sertik :-)
:uch_tiv:


Sertik
Сообщения: 1598
Зарегистрирован: 15 сен 2017, 09:03

Всё это хорошо, ну а своими разработками то поделитесь с сообществом ?


фрагменты скриптов, готовые работы, статьи, полезные приемы, ссылки
viewtopic.php?f=14&t=13947
Ответить