По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
При написании некоторых скриптов бывает нужно обратиться какому-либо ресурсу. Это может быть HTTP/HTTPS запрос какой-нибудь HTML странички сайта, FTP запрос на скачивание файла или же, это может быть GET/POST запрос к удалённому ресурсу, для передачи на него какой-либо информации. Для этих целей в роутерах MikroTik предусмотрен инструмент Fetch, о нём и поговорим. Инструмент Fetch позволяет настроить отправку HTTP и FTP запросов к сетевому ресурсу, чтобы скопировать с, или же загрузить на него определённые данеые (web-страничка, файл). Поддержка HTTPS включена по умолчанию, проверка сертификатов, предъявляемых сетевыми ресурсами при запросе, не осуществляется. Включить проверку цепочки сертификации можно с помощью опции check-certificate. Чтобы начать работу с инструментом Fetch, введите команду: /tool fetch Далее нужно задавать параметры ресурса, к которому Вы хотите обратиться, метод обращения и данные, которые нужно получить или загрузить на этот ресурс. Доступны следующие параметры: address - задаёт IP адрес ресурса, к которому необходимо обратиться; ascii - включает поддержку ASCII (по умолчанию - no); check-certificate - включает проверку цепочки сертификации удаленного ресурса; dst-path - название файла, который нужно скачать и полный путь к нему на удаленном ресурсе; host - доменное имя ресурса, к которому нужно обратиться. Например - shareit.merionet.ru; http-method - метод HTTP обращения. Доступны следующие методы: get, post, put, delete. По умолчанию используется get; http-data - данные, которые нужно отправить на удаленный ресурс, при использовании методов put и post; http-content-type - идентификатор данных, которые нужно отправить на удаленный ресурс в формате MIME. По умолчанию - application/x-www-form-urlencoded; keep-result - если данный параметр активирован, то будет создан входной файл; mode - задаёт протокол, по которому будет осуществляться соединение с удаленным ресурсом. Можно задать http, https, ftp или tftp; password - задаёт пароль который нужен для аутентификации на удаленном ресурсе. (Используйте только если удаленный ресурс требует аутентификации подключения); port - порт, по которому будет осуществляться соединение; src-path - название файла, который нужно загрузить на удаленный ресурс; upload - если данный параметр активирован, то инструмент fetch будет использоваться именно для загрузки локального файла на удаленный ресурс. При этом требуется, чтобы были указаны src-path и dst-path файла; url - URL путь к файлу. Может быть использовано вместо address или src-path; user - имя пользователя, которое нужно ввести для аутентификации на удаленном ресурсе (используйте только если удаленный ресурс требует аутентификации подключения); Давайте рассмотрим несколько use кейсов, когда Вам может пригодиться инструмент fetch. Скачивание файла с удаленного ресурса В статье про защиту роутера MikroTik методом превентивного блокирования адресов из "черных" списков мы уже прибегали к этому методу. Для этого мы писали такую команду: /tool fetch address=www.squidblacklist.org host=www.squidblacklist.org mode=http src-path=/downloads/drop.malicious.rsc В данном случае, мы обращаемся к ресурсу www.squidblacklist.org по протоколу http и скачиваем файл /downloads/drop.malicious.rsc Допустим, мы имеем дело с FTP сервером, требующим аутентификации, тогда запрос может быть таким: /tool fetch address=192.168.11.48 src-path=conf.rsc user=admin mode=ftp password=samplepass dst-path=sample.rsc port=21 host="" keep-result=yes Можно также указать URL, по которому доступен нужный файл для скачивания: /tool fetch url="https://wiki.merionet.ru/rukovodstvo-administratora-freepbx-na-russkom-yazyke/Rukovodstvo_Administratora_FreePBX_na_russkom_yazyke.pdf" mode=http Загрузка файлов на удаленный сервер может быть нужна для автоматизации процесса резервного копирования конфигурации роутера Ниже приведен пример команды для отправки файла с бэкапом по протоколу FTP, на удаленный сервер по адресу 192.168.11.56, который требует аутентификации: /tool> fetch address=192.168.11.56 src-path=cnfig.rsc user=admin mode=ftp password=samplepass dst-path=backup.rsc upload=yes Отправление информации на удаленный сервер С помощью инструмента fetch можно также отправлять информацию на удаленный сервер, используя HTTP запросы. Например, ниже показан пример того, как можно через POST запрос отправить json массив данных на удаленный сервер: /tool fetch http-method=post http-content-type="application/json" http-data="{ "as": "AS16509 Amazon.com, Inc.", "city": "Boardman", "country": "United States", "countryCode": "US", "isp": "Amazon", "lat": 45.8696, "lon": -119.688, "org": "Amazon", "query": "54.148.84.95", "region": "OR", "regionName": "Oregon", "status": "success", "timezone": "America/Los_Angeles", "zip": "97818" }" url="http://locator.loc/index.php" Сохранять результат как переменную В версии RouterOS v6.43, появилась возможность сохранить результат команды fetch в переменную. Это может быть полезно, например, для написания скриптов, которые производят какие-либо действия в зависимости от того, какой был ответ на HTTP запрос. Например, ниже приведен пример скрипта, который отсылает письмо SERVICE FAILED, если при запросе страницы PHP (check.php) возвратился “0” и SERVICE RUNNING, если запрос был успешно обработан. { :local result [/tool fetch url=http://192.168.11.56/check.php as-value output=user]; :if ($result->"status" = "finished") do={ :if ($result->"data" = "0") do={ /tool e-mail send to="mnadmin@mndomain.ru" subject="$[/system identity get name] export" body="$[/system clock get date] SERVICE FAILED; } else={ /tool e-mail send to="mnadmin@mndomain.ru" subject="$[/system identity get name] export" body="$[/system clock get date] SERVICE RUNNING; } } } Предварительно, нужно чтобы был настроен почтовый сервер - tool e-mail> set server=192.168.1.34 set port=25 from=”mnmikrotik@mndomain.ru” Кстати, в WinBox нет отдельной реализации инструмента fetch. Однако, мы можем использовать его, когда пишем скрипты через инструмент Scripts. Например, можно туда добавить скрипт, который мы привели выше:
img
Привет! В голливудских фильмах про хакеров, ты наверняка видел как герой сидит перед компом, быстро набирая команды на клавиатуре. На черном экране бегут зеленые буквы, появляется надпись “HACKED!” и в результате у него получается за считанные секунды, обойти все системы защиты, открыть хранилище банка или и вовсе запустить ядерную боеголовку. Ты можешь подумать, что в современном мире, где царит удобство, почти у всего есть приложение и графический интерфейс ввод команд в черный экран - это прошлый век. Но спешим тебя разубедить! Сетевой инженер, администратор, специалист по информационной безопасности и конечно же хакер точно также сидит перед компом и вбивает на клавиатуре команды, чтобы выполнить определенные задачи. Сейчас мы объясним, что это за черный экран такой и как с помощью него человек может взаимодействовать с сетевым устройством. Когда компьюстеры только появлялись, у них не было ни дисплеев, ни клавиатуры, ни тем более мыши. Но их надо было как-то настраивать и заставлять их складывать большие числа, которые самому было складывать лень. Нужно было некое устройство, с помощью которого человек мог бы взаимодействовать с компьютером. Такое устройство - прослойку принято называть терминалом. Видео: SSH/Telnet/Терминал/Консоль Заценили ролик? Продолжаем. На первых порах ими стали телетайпы. Это такие печатные машинки, которые соединяются по электрическому каналу для отправки и получения текстовых сообщений на простом листе бумаги. Да-да, раньше этим хакерским черным экраном был простой лист с командами! Это было дико неудобно и медленно, но идея ввода и вывода информации построчно затем легла в основу будущих интерфейсов. Позднее, посредством электронно-лучевой трубки, строку для ввода команд вывели на экран и плюс-минус в таком виде она добралась до наших дней. Таким образом, мы теперь вбиваем команды не на печатной машинке, а на клавиатуре и видим эти команды не на листе бумаги, а на мега тонком UltraHD мониторе, но модель взаимодействия осталась такой же как и 60 лет назад. Вообще совокупность устройств для взаимодействия с человека и компьютера называют консолью. Это может быть клавиатура, мышь, монитор, дисплей, микрофон, джойстик, но с одной оговорочкой. Всё это должно быть подключено непосредственно к компу и ты должен находиться прямо перед ним. А вот если ты сидишь в удобном отремонтированном кабинете с кондиционером и через промежуточное устройство подключаешься к серверу, который стоит в подвале здания, то это уже терминал. Улавливаешь суть? Консоль - это когда ты сидишь прямо перед устройством и юзаешь перефирию подключенную прямо к нему. Терминал - это когда ты через что-то ещё (зачастую удаленно) подключаешься к консоли взаимодействуешь с ней. Супер, разобрались. Ну и что, можно взаимодействовать с компами только если за ними сидеть или через какой-то промежуточный девайс? Конечно нет! Для этого был придуман протокол Telnet (телетайп нетворк). С помощью него можно удаленно по сети подключиться к сетевому устройству и заниматься его администрированием. По умолчанию, телнет использует TCP порт 23. При подключении по телнет ты с помощью текстовых команд можешь говорить удаленному серверу что делать - запускать программы, создавать и удалять файлы и директории, управлять сетевыми параметрами, гонять гусей короче вообще всё на что хватит прав, а самое главное ты при этом можешь находиться на другом конце планеты. Всё было бы просто замечательно, если бы телнет не был разработан в 69 году, как следует из названия - для тех самых телетайпов. А в те времена, на безопасность было вообще пофиг. Дело в том, что все команды, которые ты вбиваешь по телнет, включая логины и пароли передаются в открытом виде, а значит любой, кто перехватит твой телнет трафик сможет узнать всё что ты делал в рамках сессии. Поэтому сегодня использование телнет для доступа к удаленным устройствам в профессиональном сообществе считается зашкваром. “Ну блеск, и как же теперь лазить на удаленные компы, сервера и прочий сетевой хлам”? - спросите вы. Тут хочется ответить тремя буквами - SSH (Secure Shell) или защищенная оболочка, хотя так никто не говорит. Этот парень создан для защищенного удаленного администрирования и внимательно слушает TCP порт 22. Все команды, которые ты введешь в рамках сессии, включая логины и пароли, будут зашифрованы уникальным ключом и даже если хацкеры перехватят твой трафик, то вряд ли им удастся его расшифровать. Мало того, он ещё и целостность переданной информации будет проверять, чтоб ничего не потерялось и не побилось. Благодаря своей надёжности, SSH также применяется для защищенной передачи файлов, (SFTP - SSH File Transfer Protocol, SCP - Secure Copy) и туннелирования других протоколов. Чтобы иметь возможность подключаться к девайсам как по телнет, так и по SSH нужно 2 вещи: Удаленное устройство должно выступать как Telnet/SSH - сервер, то есть иметь некое ПО, которое будет понимать эти протоколы У тебя должен быть Telnet/SSH клиент, с помощью которого ты сможешь инициировать соединение. Обычно, в качестве такого клиента выступает эмулятор терминала. Это такая программа, которая даёт тебе возможность подключиться к устройству (по сети или напрямую) и выводит в отдельном окошке его консоль. Примером такой программы может служить PuTTY.
img
В данной статье будет описан процесс настройки SIP – транка на IP – АТС Asterisk с помощью в FreePBX 13 для провайдера Телфин. Создание SIP - транка Первый шаг является стандартным для настройки транка –в веб-интерфейсе необходимо открыть следующую вкладку: Connectivity – Trunks. Далее кликнуть на кнопку + Add Trunk. Выберите «Add SIP (chan_sip) Trunk». Далее необходимо присвоить имя транку и задать исходящий CallerID После, необходимо зайти во вкладку sip Settings и вновь ввести имя SIP - транка и информацию в поле Details: Соответственно, Username – номер, полученный от провайдера Телфин, Secret – ваш пароль и host – адрес самого провайдера. context=inbound_telphin type=peer username=4996546542 \тут должен быть ваш логин fromuser=4996546542 secret=P@ssw0rd \тут должен быть ваш пароль host=voice.telphin.com port=5068 promiscredir=yes Следующим шагом является настройка входящих параметров SIP - транка. Откроем вкладку Incoming, заполним поля “Context”, “Details”, “Register String” type=peer username=4996546542 host=voice.telphin.com port=5068 И строка регистрации: 4996546542:P@ssw0rd@voice.tephin.com:5068/4996546542 Теперь ваша АТС будет регистрироваться у Телфина и входящие звонки будут приходить в контекст [inbound_telphin] на экстеншен 4996546542. Исходящая маршрутизация Далее необходимо задать имя маршрута и номер в Outbound Routes – номер такой же, как и при создании транка - в данном случае 4996546542. Обратите внимание, так же необходимо указать транк в Trunk Sequence for Matched Routes, который был только что создан. И, как финальный шаг, указываем правила набора для использования данного маршрута После всех проведенных манипуляций, жмём Apply Config наверху страницы.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59