• Создать фриланс-проект Получите лучшие предложения по цене и срокам от фрилансеров
    • Разместить вакансию Найдите сотрудника на постоянную работу удаленно
    • Найти фрилансера Выберите лучшего специалиста по отзывам, рейтингу и портфолио
    • Бизнес Сейф для компаний Работайте по безналичному расчету и получайте закрывающие документы
    • Открыть конкурс Разместите задание и получите готовые варианты решения
    • Список соискателей Просмотрите список соискателей и предложите им свою вакансию
    • Найти фриланс-проект Выбирайте среди открытых фриланс-проектов
    • Разместить резюме Найдите постоянную работу удаленно
    • Список вакансий Ознакомьтесь со списком вакансий и откликнитесь на понравившиеся
  • English
  • Українська
  • Polski
  • Deutsch
Вход Регистрация
  1. Фриланс-проекты
  1. Фриланс-проекты

HTTP-Shell repeater

C и C++ — неверно указаны категории?
250 UAH

Клиентская часть программы «HTTP-Shell repeater».

Техническое задание

 Задача программы — установить соединение по схеме №2 с сайтом, при получении в качестве ответа определенной команды, - направить ее командному интерпретатору Shell-а операционной системы linux, как будто эта команда введена через TUI, а результат, возвращаемый командным интерпретатором для TUI, получить и передать исходящим HTTP-запросом на сайт. В результате связка HTTP-сервер + программа-клиент должна предоставить возможность управления linux-компьютером аналогично тому как это делает putty ssh client. При этом управляемый компьютер может находится за несколькими NAT с серым IP адресом и без всяких пробросов портов.

Shell (Оболочка операционной системы)

TUI (Текстовый пользовательский интерфейс)


Схема №1. Стандартная схема соединения HTTP-сервера с программой-клиентом, где (з) — запрос, (о) — ответ.

 1. Отправка текста с командой для shell с помощью запроса от HTTP-сервера к программе-клиенту

(з) [HTTP-сервер] –> [интернет]–> [маршрутизатор–> [NAT]]–> [порт 80]–> [программа-клиент]

 2. Ответ программы-клиента HTTP-серверу (текстовые данные, возвращаемые shell-ом после выполнения)

(о) [HTTP-сервер] <– [интернет]<– [программа-клиент]

 Схема №1 нам не подходит из-за невозможности проброса 80 порта с маршрутизатора на компьютер, в котором находится наша  программа-клиент. Поэтому необходима другая схема - схема №2.


Схема №2. Нестандартная схема соединения HTTP-сервера с программой-клиентом, где (з) — запрос, (о) — ответ.

 1. Каждые 1-2 секунды отправка исходящего запроса к серверу, цель которого получить в ответ текст с командой для shell

(з) [программа-клиент]—>[интернет]—>[HTTP-сервер]

 2. Отправка текста с командой для shell с помощью ответа от HTTP-сервера к программе-клиенту

(о) [программа-клиент]<—[порт 80]<—[маршрутизатор<— [NAT]]<—[интернет]<—[HTTP-сервер]

 3. Ответ программы-клиента HTTP-серверу с помощью отправки HTTP-запроса (текстовые данные, возвращаемые shell-ом после выполнения)

(з) [программа-клиент]—>[интернет]—>[HTTP-сервер]


 Программа-клиент также должна поддерживать все основные linux-системы и запускаться вместе с компьютером в режиме демона (службы/сервиса).

Интервал между запросами должен быть в миллисекундах равен случайному числу между 1000 и 2000, должна быть возможность переключить между плавающим интервалом или точным.

Для того чтобы компьютеры можно было различить между собой программа должна будет передать токен.

 Адрес сервера, токен, интервал между повторами, переключатель точное/случайное число поместить в файле настроек /etc/http-shell_repeater.conf

 Для взаимодействия программы с сервером “HTTP-console” будет предоставлена документация по API.

Ставки 1
Ярослав Ерстенюк

Ярослав Ерстенюк

Победившая ставка
5 0
  • Проекты -
  • Оценка -
  • Рейтинг 176

Бюджет: 250 UAH Срок: 3 дня

+

Скопировать 2 сентября 2016

Ставки пока отсутствуют

Фрилансеры знакомятся с задачей — скоро здесь появятся предложения.
    Добавить комментарий
Loading...
Loading...
Заказчик
Вячеслав Поспелов
  • Вячеслав Поспелов
  • Мелитополь, Украина
  • Проектов 1
  • Оценка -
  • Рейтинг 87
Опубликовать похожий проект
Информация
  • Опубликовано: 2 сентября 2016, 17:05
  • Просмотров: 27
  • Фриланс-проекты RSS Telegram
  • Все фрилансеры
  • Конкурсы RSS
  • Работы фрилансеров
  • Сейф
  • Все заказчики
  • Plus
  • Бизнес Сейф
  • Все вакансии Telegram
  • Удаленная работа
  • О вакансиях
  • Опубликовать вакансию
  • Список соискателей
  • Регистрация
  • Забыли пароль?
  • Блог RSS
  • Мы в прессе
  • Freelancehunt - 20 лет
  • Статус сервиса
  • Карта сайта
  • База знаний
  • [email protected]
Язык
  • English
  • Українська
  • Polski
  • Deutsch
Мы принимаем к оплате
Visa Mastercard Google Pay Apple Pay PayPal
Язык
  • English
  • Українська
  • Polski
  • Deutsch
Мы принимаем к оплате
Visa Mastercard Google Pay Apple Pay PayPal
Мы в сетях
Правила сервиса Конфиденциальность
Сделано в Украине © 2005-2026 v34.312
Меню
Создать фриланс-проект Разместить вакансию Найти фрилансера Бизнес Сейф для компаний Открыть конкурс Список соискателей
Найти фриланс-проект Разместить резюме Список вакансий
  • English
  • Українська
  • Polski
  • Deutsch
    Сделать ставку
Loading...
Заказчик
Вячеслав Поспелов
  • Вячеслав Поспелов
  • Мелитополь, Украина
  • Проектов 1
  • Оценка -
  • Рейтинг 87
Loading...
Информация
  • Опубликовано: 2 сентября 2016, 17:05
  • Просмотров: 27
Loading...
Статус
Loading...
Loading...