Date: Mon, 28 Jun 2010 13:36:04 GMT From: Olivier Cochard-Labbé <olivier@cochard.me> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/148211: New port: www/shellinabox, Publish command line shell through AJAX interface Message-ID: <201006281336.o5SDa4qE020926@www.freebsd.org> Resent-Message-ID: <201006281340.o5SDe3uM021553@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 148211 >Category: ports >Synopsis: New port: www/shellinabox, Publish command line shell through AJAX interface >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Mon Jun 28 13:40:03 UTC 2010 >Closed-Date: >Last-Modified: >Originator: Olivier Cochard-Labbé >Release: 8.1-RC1 >Organization: >Environment: FreeBSD d630.bsdrp.net 8.1-RC1 FreeBSD 8.1-RC1 #71: Fri Jun 18 09:23:17 CEST 2010 root@d630.bsdrp.net:/usr/obj/usr/src/sys /DellD630 amd64 >Description: Hi, here is a new port: www/shellinabox Shell In A Box is a web server that can export arbitary command line tools to a web based terminal emulator. This port creates a user and a group "shellinabox": I've used the UID/GID 139 that seem available. The diff file for /usr/ports/UIDs and GIDs are included: cd /usr/ports/www/shellinabox patch ../../UIDs UIDs.diff patch ../../GIDs GIDs.diff The users tests results and comments are on the FreeBSD port mailing-list: http://lists.freebsd.org/pipermail/freebsd-ports/2010-June/062067.html It's work on FreeBSD 7.3, 8.0 and 8.1. On 9-current there is a compilation error related to the new utmpx subsystem changes included in 9-current, but I don't have 9-current for testing/fixing it. One user have a problem for starting it under Virtualbox, but I wasn't able to reproduce his error. >How-To-Repeat: >Fix: Patch attached with submission follows: # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # shellinabox # shellinabox/Makefile # shellinabox/pkg-descr # shellinabox/distinfo # shellinabox/files # shellinabox/files/shellinaboxd.in # shellinabox/pkg-plist # shellinabox/UIDs.diff # shellinabox/GIDs.diff # echo c - shellinabox mkdir -p shellinabox > /dev/null 2>&1 echo x - shellinabox/Makefile sed 's/^X//' >shellinabox/Makefile << '4c2789fc20c838f62d4fb65647442462' X# New ports collection makefile for: shellinabox X# Date created: 25 june 2010 X# Whom: Olivier Cochard-Labbe <olivier@cochard.me> X# X# $FreeBSD$ X# X XPORTNAME= shellinabox XPORTVERSION= 2.10 XCATEGORIES= www XMASTER_SITES= ${MASTER_SITE_GOOGLE_CODE} XDISTNAME= ${PORTNAME}-${PORTVERSION} X XMAINTAINER= olivier@cochard.me XCOMMENT= Publish command line shell through AJAX interface X XHAS_CONFIGURE= yes XCONFIGURE_ARGS= \ X --prefix=${PREFIX} \ X --infodir=${PREFIX}/${INFO_PATH} \ X --mandir=${MANPREFIX}/man X XLICENSE= GPLv2 XLICENSE_FILE= ${WRKSRC}/COPYING X XUSE_RC_SUBR= shellinaboxd XUSERS= shellinabox XGROUPS= shellinabox X XMAN1= shellinaboxd.1 X XPORTDOCS= AUTHORS ChangeLog INSTALL README COPYING GPL-2 NEWS TODO \ X black-on-white.css monochrome.css color.css white-on-black.css X Xpost-install: X @${MKDIR} ${PREFIX}/etc/shellinabox X @${CHMOD} 700 ${PREFIX}/etc/shellinabox X @${CHOWN} shellinabox:shellinabox ${PREFIX}/etc/shellinabox X X.include <bsd.port.mk> 4c2789fc20c838f62d4fb65647442462 echo x - shellinabox/pkg-descr sed 's/^X//' >shellinabox/pkg-descr << 'ef769dc6c8c796318d8dbca538de1c78' XShell In A Box is a web server that can export arbitary command line tools to a Xweb based terminal emulator X XWWW: http://code.google.com/p/shellinabox/ ef769dc6c8c796318d8dbca538de1c78 echo x - shellinabox/distinfo sed 's/^X//' >shellinabox/distinfo << '1cc9c9e296e9f167ad399d552435c13f' XMD5 (shellinabox-2.10.tar.gz) = 0e144910d85d92edc54702ab9c46f032 XSHA256 (shellinabox-2.10.tar.gz) = 9a2dfa14fcb050de6f450b3b53522f2106cdef4a5591e3e41bd00de1e11d43cb XSIZE (shellinabox-2.10.tar.gz) = 513430 1cc9c9e296e9f167ad399d552435c13f echo c - shellinabox/files mkdir -p shellinabox/files > /dev/null 2>&1 echo x - shellinabox/files/shellinaboxd.in sed 's/^X//' >shellinabox/files/shellinaboxd.in << '2815a5ab0be5ef5cf0212c458d395ef7' X#!/bin/sh X X# $FreeBSD$ X# X# Shell in a Box Daemon startup script X# X# PROVIDE: shellinaboxd X# REQUIRE: login X# KEYWORD: shutdown X X# X# Add the following to /etc/rc.conf[.local] to enable this service X# X# shellinaboxd_enable="YES" X# X# You can fine tune others variables too: X# shellinaboxd_fib="NONE" X# shellinaboxd_pidfile="/var/run/shellinabox.pid" X# shellinaboxd_port="4200" X# shellinaboxd_certdir="%%PREFIX%%/etc/shellinabox" X# shellinaboxd_flags="" X Xshellinaboxd_setfib() { X sysctl net.fibs >/dev/null 2>&1 || return 0 X X case "$shellinaboxd_fib" in X [Nn][Oo][Nn][Ee]) X ;; X *) X command="setfib -F ${shellinaboxd_fib} ${command}" X ;; X esac X} X X. /etc/rc.subr X Xname="shellinaboxd" Xrcvar=`set_rcvar` X Xcommand="%%PREFIX%%/bin/${name}" Xstart_precmd="shellinaboxd_setfib" X Xload_rc_config $name X Xshellinaboxd_enable=${shellinaboxd_enable:-"NO"} Xshellinaboxd_fib=${shellinaboxd_fib:-"NONE"} Xshellinaboxd_port=${shellinaboxd_port:-"4200"} Xshellinaboxd_certdir=${shellinaboxd_certdir:-"%%PREFIX%%/etc/shellinabox"} X Xpidfile=${shellinaboxd_pidfile:-"/var/run/shellinaboxd.pid"} X Xrequired_dirs="${shellinaboxd_certdir}" X Xcommand_args="--group=shellinabox --user=shellinabox --port=${shellinaboxd_port} --cert=${shellinaboxd_certdir} --background=${pidfile}" X Xrun_rc_command "$1" 2815a5ab0be5ef5cf0212c458d395ef7 echo x - shellinabox/pkg-plist sed 's/^X//' >shellinabox/pkg-plist << 'afba1e76039bbb082bb92c6c746f09d1' Xbin/shellinaboxd X@exec mkdir -p %D/etc/shellinabox X@exec chmod 777 %D/etc/shellinabox X@exec chown nobody %D/etc/shellinabox X@unexec rmdir %D/etc/shellinabox 2>/dev/null || echo "If you are permanently removing this port, you should do a ``rm -rf %%PREFIX%%/etc/shellinabox`` to remove the SSL certificate left." | fmt afba1e76039bbb082bb92c6c746f09d1 echo x - shellinabox/UIDs.diff sed 's/^X//' >shellinabox/UIDs.diff << 'dd5054c365b08bad9b9bb3624e235982' X--- UIDs.orig 2010-06-28 13:02:46.000000000 +0200 X+++ UIDs 2010-06-28 13:03:38.000000000 +0200 X@@ -78,6 +78,7 @@ X dhcpd:*:136:136::0:0:ISC DHCP daemon:/nonexistent:/usr/sbin/nologin X mpd:*:137:137::0:0:MusicPD pseudo-user:/usr/local/var/mpd:/usr/sbin/nologin X wolfpack:*:138:138::0:0:Wolfpack Empire Server:/usr/local/share/wolfpack:/usr/sbin/nologin X+shellinabox:*:139:139::0:0:Shell In A Box:/nonexistent:/usr/sbin/nologin X cricket:*:141:80::0:0:Cricket Monitoring User:/usr/local/cricket:/usr/sbin/nologin X ladvd:*:142:142::0:0:Ladvd User:/var/empty:/usr/sbin/nologin X dovecot:*:143:143::0:0:Dovecot User:/var/empty:/usr/sbin/nologin dd5054c365b08bad9b9bb3624e235982 echo x - shellinabox/GIDs.diff sed 's/^X//' >shellinabox/GIDs.diff << 'bb4eeafd5e678cd5d32a72b2e10a7cd7' X--- GIDs.orig 2010-06-28 13:02:56.000000000 +0200 X+++ GIDs 2010-06-28 13:04:02.000000000 +0200 X@@ -70,6 +70,7 @@ X dhcpd:*:136: X mpd:*:137: X wolfpack:*:138: X+shellinabox:*:139: X ladvd:*:142: X dovecot:*:143: X rbldns:*:153: bb4eeafd5e678cd5d32a72b2e10a7cd7 exit >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201006281336.o5SDa4qE020926>