Exploring-Linux-Shell-(Terminal)-Remotely-Using-PHP-Shell

Удалённое знакомство с Linux Shell (Terminal) с помощью PHP Shell

Рубрики:

Терминал Linux

Метки:

, , , , ,

PHP Shell или Shell PHP — это программа/скрипт, написанный на PHP (Php Hypertext Preprocessor), который предоставляет доступ к Linux Terminal-у (Shell — гораздо более широкое понятие) из браузера. PHP Shell позволяет выполнять большинство команд оболочки в браузере, но не все из-за некоторых ограничений.

 

Обновление: недавно мы нашли очень многообещающий инструмент под названием «Wetty (Web + tty)», который обеспечивает полный доступ к терминалу Linux по протоколу HTTP или HTTPS и позволяет выполнять все команды и программы Linux, как если бы вы сидели перед реальным или виртуальным терминалом.

 

 

Linux-Shell-Acess-on-Browser

 

 

PHP Shell очень полезен при выполнении команд Shell на удаленном веб-сервере, аналогично Telnet и SSH. Это может быть полезно при перемещении, распаковке и обработке больших файлов на веб-сервере. Администрирование и обслуживание веб-сервера с использованием PHP Shell намного проще, если пользователь имеет практические знания программных оболочек.

Раз уже были придуманы Telnet и SSH, зачем нужен phpshell? Именно этот вопрос, может первым прийти вам в голову. Ответ таков: во многих случаях брандмауэр настолько ограничен, что ничего, кроме HTTP(S), не пропускает, в этом случае phpshell позволяет получить доступ к оболочке на удаленном сервере.

Однако вы не сможете выполнить программу с графическим интерфейсом пользователя или интерактивный скрипт/программу с использованием PHP Shell. Это может быть ограничением, но это ограничение в свою очередь также является благом, так как отключение графического интерфейса означает более высокий уровень безопасности.

 

 

Установка PHP Shell

Последнюю версию можно скачать здесь:

http://sourceforge.net/projects/phpshell/?source=dlp

 

 

Как установить PHP Shell?

Как указано выше, PHP Shell написан на PHP, поэтому вам не нужно его устанавливать, просто переместите заархивированный файл в рабочий каталог apache/httpd, и, конечно, у вас должны быть установлены Apache и PHP.

 

Установка Apache и PHP

Установка Apache и PHP в системах на основе Debian с помощью команды apt-get:

 

Установка Apache и PHP в системах на базе Red Hat с помощью команды yum:

 

По умолчанию рабочий каталог apache/http:

  • на основе дистрибутива Debian — /var/www
  • на основе дистрибутива Red Hat — /var/www/html

 

 

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

 

 

Переместите загруженный архивный файл PHP Shell в рабочий каталог Apache. Здесь мы используем систему Debian, поэтому мой рабочий каталог Apache выглядит следующим образом:

 

Распаковка PHP-оболочки

 

Удаление заархивированного файла

 

Переименуйте папку оболочки php, в качестве меры безопасности. Например, мы переходим в папку phpshell (теперь sedicomm-nix) и переименовываем phpshell.php в index.php, чтобы вы были перенаправлены непосредственно на страницу индекса, а не на содержимое папки:

 

Хорошо, пришло время открыть ваш веб-браузер и перейти к «http://127.0.0.1/sedicomm-nix«:

PHP-Shell-Login-Screen

 

 

По умолчанию имя пользователя и пароль не работают, поэтому вам нужно добавить имя пользователя и пароль вручную.

Чтобы создать имя пользователя и пароль, вызовите скрипт pwhash.php, уже находящийся в папке phpshell, с помощью «http://127.0.0.1/sedicomm-nix/pwhash.php«:

PHP-Shell-Password-Hasher

 

 

Введите имя пользователя и пароль на указанной выше странице php и нажмите «Обновить»:

Set-PHP-Shell-Password

 

 

Как указано в разделе «Result», вам необходимо добавить строку sha, скопировав и вставив её в файл config.php в разделе [user]:

Откройте файл config.php, используя любой редактор:

 

Добавьте строку:

 

Как и в [user section], очевидно, что ваш sha1 будет уникальным в зависимости от вашего имени пользователя и пароля:

PHP-Shell-Password-Line

 

 

Сохраните файл config.php с текущими изменениями и выйдите из него.

Теперь пришло время войти в phpshell. Посетите http://127.0.0.1/sedicomm-nix. Войдите в систему, используя свои «Имя пользователя» и «Пароль»:

PHP-Shell-Terminal-Access

 

 

Вы успешно вошли в свой phpshell. Теперь вы можете выполнять большинство программ оболочки так же просто, как если бы вы выполняли эти команды и сценарии в своей собственной системе.

 

 

Определим «узкие места» PHP Shell

  • Не поддерживается дополнительный ввод, т.е. после запуска программы интерактивный скрипт использовать нельзя.
  • Весь веб-сервер настроен на тайм-аут в определенный период времени, скажем, 30 секунд. Это ограничение касается веб-сервера/Apache, а не phpshell.
  • Каждая команда в phpshell должна быть прописана строго одной строкой. Phpshell не понимает как многострочные команды команды так и команды в циклах.

 

Помните, что очень важно иметь защищенную паролем PHP Shell, иначе каждый сможет отследить ваши файлы и, возможно, сможет удалить их! Пожалуйста, найдите время, чтобы защитить ваш PHP Shell.

Это все на данный момент. Наслаждайтесь!

 

 

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Ciscoкурсы по кибербезопасности,  полный курс по кибербезопасностикурсы DevNet (программируемые сети) от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).

Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!

Спешите подать заявку! Группы стартуют 25 января, 26 февраля, 22 марта, 26 апреля, 24 мая, 21 июня, 26 июля, 23 августа, 20 сентября, 25 октября, 22 ноября, 20 декабря.
Что Вы получите?
  • Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
  • Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проведем вечерние онлайн-лекции на нашей платформе.
  • Согласуем с вами удобное время для практик.
  • Если хотите индивидуальный график — обсудим и реализуем.
  • Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
  • Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
А еще поможем Вам:
  • отредактировать или создать с нуля резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco, Linux LPI, кибербезопасность, DevOps / DevNet, Python, подайте заявку или получите бесплатную консультацию.

Рубрики:

Терминал Linux

Метки:

, , , , ,

Больше похожих постов

1 комментарий. Оставить новый

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения


Поиск по сайту
Лучшее
Популярное
Рубрики
Меню