Awesome Open Source
Awesome Open Source

/ / / __/ _ | / __/ // /

/ /__/ _// __ |_/ _ /

/____/___/_/ |_/___/_//_/ v. 0.18.0


This is a web application that will give you access to the shell, without needing root privileges, ssh or telnet. You only need php-based hosting with one of the following:

  • php exec function enabled
  • php shell_exec function enabled
  • Enabled CGI with python or perl on the server

:: Shell Limitations

  • you will not be able to execute interactive commands like php -a
  • you can't create a function and run it in next command (because each command is run as separated process)

:: Features

  • mysql command

  • sqlite command

  • python interpreter

  • javascript interpreter

  • jargon command (will display definitions from jargon file)

  • ymacs editor (Emacs clone for the web)

  • vi editor (using jsvi) and clone to lib/apps directory

  • tab completion

  • File Drag & Drop upload (using HTML5) you can upload files that are bigger than the php limit

  • wikipedia command that display wikipedia articles

  • rfc command where you can read RFC documents

  • record command where you can save commands in hash and rerun them when you refresh

  • view html pages as text on the terminal, when clicking on the link

  • github repos browser (with cat/less/cd/ls sub commands)

  • guest and sudo options: * guest, if set, will have limited access to shell, list of commands are

    configurable from config.json

    • sudo option, if set, will allow to execute commands as real unix user. To create new user, you will need to use linux command line (adduser command from real terminal) and you will need to have leash user with the same name, (to add user from leash you need to be root and execute adduser command) and have sudo access without password for apache user

:: Requirements

  • php >=5.5 with .htaccess with modules curl, mbstring, json and zip
  • to have full use of leash you will also need one of functions enabled: * exec * system * shell_exec * or cgi (perl or python in cgi-bin directory)
  • if you want to have mysql or sqlite commands you need to install those databases and appropriate php modules
  • you may also want to have program unbuffer installed (in ubuntu it's provied by package expect - actually it's expect script), it will make not interactive shell act like real terminal (tty)

:: Chat

https://gitter.im/jcubic/leash

:: License

Copyright (C) 2013-2018 Jakub Jankiewicz Released under the MIT license

Related Awesome Lists
Top Programming Languages

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Javascript (1,161,366
Php (298,583
Shell (183,000
Command Line (131,911
Web (37,778
Terminal (18,222
Ssh (14,435
Cgi (5,845
Rfc (3,806