>binaervarianz >projects >CGI-Shell

CGI-Shell gives you a shell using CGI. So everybody who has a CGI-directory on a web-server, also has its own shell on it - comparable with Telnet or SSH.

If you find a bug, have an opinion or want to suggest something feel free to mail me: <michael at binaervarianz dot de>

Version 0.21 (September 21th 2003)

  • PHP support (works not if system() call is disabled in PHP)
  • configuration file
  • bugfixes, little improvements

Version 0.2a (September 16th 2003)

  • complete re-write in C
  • gives you a real shell, starting a server on your web-server and connecting to it
  • works fine for almost all programs, e.g. vi, more, man, passwd, ...

Version 0.19a (June 27th 2003)

  • set aliases in cgi-shell.rc
  • -cgi option allows server-part to be invoked as cgi-shell-server.cgi
  • thanks to Tony Lewis for the changes

Version 0.18a (February 11th 2003)

  • some bug fixes, little improvements
  • Stephan Poehlsen has written a PHP-variant of the server-part. So you can use CGI-Shell also, if you do not have a CGI-directory, but PHP: cgi-shell-server.phps

Version 0.17a (January 30th 2003)

  • first release

F.A.Q. - Frequently Asked Question
  • How to use CGI-Shell?
    After compiling according to the README file, upload cgi-shell-start.pl and cgi-shell-server to a new directory in your CGI-directory on your web-server. Do not forget to make them executable. It is also recommendable to modify and upload the .ht* files to restrict access to your shell.
    Execute cgi-shell on your computer:
    cgi-shell -d /cgi-bin/cgi-shell/ -u USERNAME www.yourserver.org
    Replace the directory through the directory you uploaded the files in!

  • Trying to compile with gcc-2.9* I get the following error:
       main.c: In function `main':
       main.c:69: parse error before `struct'
       main.c:82: `long_options' undeclared (first use in this function)
       main.c:82: (Each undeclared identifier is reported only once
       main.c:82: for each function it appears in.)
       main.c:192: parse error before `char'
       main.c:202: `ch' undeclared (first use in this function)
       make: *** [main.o] Error 1
    Please use gcc version 3.o or higher.

  • It does not work for me!
    Tell me what you did and send me the .cgishell* files in your home-directory.
    If you have trouble compiling CGI-Shell please send me the compiler output.

  • Which rights do I have on the server?
    You have the rights of the owner of cgi-shell-server. Normally user-rights.

  • Can I do "bad things" with CGI-Shell?
    You can do "bad things" with almost everything - but that is not why I wrote CGI-Shell. Rather, it intends to help webpage-owners to maintain there page comfortably. If CGI-Shell also makes webhosters pay a little more attention to their servers rights-management - or even better - gives you SSH-access, I am happy, too.

  • How does CGI-Shell work?
    CGI-Shell is client-server-based. When you start cgi-shell, you start a server on your web-server and connect to it - very similar to Telnet or SSH.
    If you want to know it more exactly you have to read the source code. :-)

  • Is CGI-Shell secure?
    At the moment, CGI-Shell is more like Telnet than like SSH. The password-protection is realized with htaccess - so username and password fly without encryption through the web. Also, all other communication between you and the web-server is not encrypted right now. But I want to change this.

  • Which operating systems and platforms are supported?
    I did test it with several linux distributions on i386-machines. Ken Mankoff reported, that he compiled it on Mac OS X after commenting out the line "#include <wait.h>".
    If you sucessfully built CGI-Shell on other platforms please let me know!

  • Under which license is CGI-Shell published?
    GNU General Public License.

  • Where to ask more questions? Where can I say, criticize, praise, suggest something?
    Just write me a mail: <michael at binaervarianz dot de>
>binaervarianz >projects >CGI-Shell