Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
D
dclinabox
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Container registry
Model registry
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
OpenVMS
WASD
dclinabox
Commits
5f3220c11421
Commit
5f3220c11421
authored
5 years ago
by
Jean-Francois Pieronne
Browse files
Options
Downloads
Patches
Plain Diff
src/dclinabox/readmore.html initial version
parent
2e674af0a92f
No related branches found
No related tags found
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
src/dclinabox/readmore.html
+557
-0
557 additions, 0 deletions
src/dclinabox/readmore.html
with
557 additions
and
0 deletions
src/dclinabox/readmore.html
0 → 100755
+
557
−
0
View file @
5f3220c1
<HTML>
<HEAD>
<TITLE>
DCL in a box
</TITLE>
<STYLE
TYPE=
"text/css"
>
body { font-family:arial,helvetica; }
h1 {
font-size:150%; font-weight:bold; text-decoration:underline;
}
h2 {
font-size:130%; font-weight:bold; text-decoration:underline;
letter-spacing:1px;
padding-top:1.2em;
}
h3 {
font-size:120%; font-weight:bold;
padding-top:0.8em;
}
hr { color:#888888; background-color:#888888; height:1px; border:0; }
.code {
border-style:solid; border-color:#888888; border-left-width:1;
border-top-width:0; border-right-width:0; border-bottom-width:0;
background-color:#eeeeee;
margin-left:2em;
margin-right:5em;
padding:0.3em;
padding-left:1em;
}
.quote {
border-style:dotted; border-color:#888888; border-width:1;
font-size:90%;
background-color:#eeeeee;
margin-left:2em;
margin-right:5em;
padding:0.3em;
padding-left:1em;
}
.refer {
font-size:90%; width:90%; text-align:right;
}
.variable table, .variable th, .variable td {
border-style:none;
border-width:0;
vertical-align:top;
text-align:left;
background-color:#eeeeee;
}
.variable th { text-decoration:underline; margin:0; padding:5px; }
.variable td { margin:0; padding:1px 5px 1px 5px; }
.dclinabox {
font-size:110%; font-family:monospace; letter-spacing:1px; margin:0 2px 0 2px;
}
.button { border:1px solid slategray; padding:0 4px 0 4px; }
</STYLE>
</HEAD>
<BODY
BGCOLOR=
"#ffffff"
TEXT=
"#000000"
LINK=
"#0000cc"
VLINK=
"#0000cc"
>
<CENTER>
<H1
STYLE=
"font-size:200%; font-family:monospace; font-weight:bold;
word-spacing:-11px; margin-bottom:-9px;"
>
DCL in a box
</H1>
<H3>
Version 1.0.0, 22nd January 2012
</H3>
<!-- happy birthday Emily :-) -->
<P><B>
Copyright
©
2011,2012 Mark G. Daniel
</B>
<BR>
This program, comes with ABSOLUTELY NO WARRANTY.
<BR>
This is free software, and you are welcome to redistribute it under the
<BR>
conditions of the GNU GENERAL PUBLIC LICENSE, version 3, or any later version.
<BR><A
HREF=
"http://www.gnu.org/licenses/gpl.txt"
>
http://www.gnu.org/licenses/gpl.txt
</A>
</CENTER>
<H2
STYLE=
"margin-left:1.5em;"
>
Contents
</H2>
<UL>
<LI><A
HREF=
"#shellinabox"
>
ShellInABox
</A>
<LI><A
HREF=
"#install"
>
Installation
</A>
<LI><A
HREF=
"#config"
>
Configuration
</A>
<LI><A
HREF=
"#custom"
>
Customising
</A>
<LI><A
HREF=
"#bookmarklet"
>
Bookmarklet
</A>
<LI><A
HREF=
"#obfuscation"
>
Obfuscation
</A>
<LI><A
HREF=
"#problems"
>
Problems
</A>
<LI><A
HREF=
"#ackn"
>
Acknowlegements
</A>
</UL>
<BR><HR
ALIGN=
left
SIZE=
1
NOSHADE
><BR>
<noscript>
<span
style=
"background-color:#ffff00;font-style:bold;font-size:120%;"
>
JavaScript required (unsurprisingly)!
</span>
</noscript>
<P><SPAN
STYLE=
"font-size:150%; font-family:monospace; font-weight:bold;
word-spacing:-9px;"
>
DCL in a box
</SPAN>
provides an
<B>
in-browser VT102 terminal emulation
</B>
via a WASD
<A
TARGET=
"_blank"
HREF=
"http://en.wikipedia.org/wiki/Websocket"
>
WebSocket
</A>
scripting application connected to LOGINOUT using the pseudo-terminal API.
WebSocket makes the terminal input/output stream interface particularly
straight-forward and allows a session logged-in via the Web to be maintained
fairly simply.
<P>
Although at the time of first
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
release (January 2012) the WebSocket Protocol had just been published
(
<a
target=
"_blank"
href=
"http://www.rfc-editor.org/rfc/rfc6455.txt"
>
http://www.rfc-editor.org/rfc/rfc6455.txt
</a>
)
and mainstream browser support was fairly limited, the asynchronous,
bidirectional data stream available using WebSocket will quickly make it an
invaluable Web service building block with broad mainstream support. This
initial version of
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
has been developed
using Chrome 16.0.912.75 and Firefox (Aurora) 11.0a2.
<P>
<B>
Does this browser support WebSockets?
<script
language=
"JavaScript"
>
if
(
'
WebSocket
'
in
window
)
if
(
typeof
((
new
WebSocket
(
"
wss://localhost/
"
)).
protocol
)
==
'
undefined
'
)
document
.
write
(
'
<span style="background-color:#ffff00;font-style:bold;
'
+
'
font-size:120%;"> YES ... but not a recent enough version </span></B>
'
);
else
document
.
write
(
'
<span style="background-color:#00ff00;font-style:bold;
'
+
'
font-size:120%;"> YES </span></B>
'
);
else
document
.
write
(
'
<span style="background-color:#ff0000;font-style:bold;
'
+
'
font-size:120%;"> NO! </span></B>
'
);
document
.
write
(
'
<BR><I>
'
+
navigator
.
userAgent
+
'
</I>
'
);
</script>
<P>
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
is based on a JavaScript VT102
emulator from the
<B>
ShellInABox
</B>
project.
<P>
For all things
<TT
STYLE=
"font-size:120%"
>
VT
</TT>
...
<A
TARGET=
"_blank"
HREF=
"http://vt100.net"
>
vt100.net
</A>
<P>
<A
NAME=
"shellinabox"
>
<H2
STYLE=
"letter-spacing:-1px;"
>
Shell In A Box
</H2>
</A>
<P>
Is a Free and Open Source project by Markus Gutschke
<
markus@shellinabox.com
>
.
<BLOCKQUOTE>
<A
TARGET=
"_blank"
HREF=
"http://code.google.com/p/shellinabox/"
>
http://code.google.com/p/shellinabox/
</A>
</BLOCKQUOTE>
<BLOCKQUOTE>
"
Shell In A Box implements a web server that can export arbitrary command
line tools to a web based terminal emulator. This emulator is accessible to any
JavaScript and CSS enabled web browser and does not require any additional
browser plugins. Most typically, login shells would be exported this way.
"
</BLOCKQUOTE>
<P>
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
exports the DCL command-line in a similar way.
<A
NAME=
"install"
>
<H2>
Installation
</H2>
</A>
<UL>
<LI>
Obtain the
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
kit from (or one of
the mirror sites)
<BLOCKQUOTE>
<A
HREF=
"http://wasd.vsm.com.au/wasd/"
>
http://wasd.vsm.com.au/wasd/
</A>
</BLOCKQUOTE>
<LI>
UNZIP the kit
<PRE
CLASS=
"code"
>
$ SET DEFAULT WASD_ROOT:[000000]
$ UNZIP "-V" location:DCLINABOXnnn.ZIP
</PRE>
<LI>
Note that this performs a link-only build against the supplied object
modules. Compilation is also available (just remove the LINK parameter).
<PRE
CLASS=
"code"
>
$ SET DEFAULT WASD_ROOT:[SRC.DCLINABOX]
$ @BUILD_DCLINABOX LINK
</PRE>
<LI>
Copy the
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
application to the
script executable location.
<PRE
CLASS=
"code"
>
$ COPY WASD_EXE:DCLINABOX.EXE CGI_EXE:
</PRE>
<LI>
<A
HREF=
"#config"
>
Configure
</A>
the application.
<P><LI>
Open the example
<A
TARGET=
"_blank"
HREF=
"example.html"
><SPAN
CLASS=
"dclinabox"
>
EXAMPLE.HTML
</SPAN></A>
page and log in!
</UL>
<P>
By default all the required JavaScript, CSS and graphics are located in the
WASD runtime directory
<A
TARGET=
"_blank"
HREF=
"/wasd_root/runtime/dclinabox/"
><TT>
WASD_ROOT:[RUNTIME.DCLINABOX]
</TT></A>
<A
NAME=
"config"
>
<H2>
Configuration
</H2>
</A>
<P>
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
allows remote login from a Web
browser to the server system. This could be a security issue and so the
script disables itself by default. Logical name value DCLINABOX_ENABLE
controls whether the application can be used. Define this system-wide using a
value of "*" to simply allow experimentation. Alternatively provide one or
more comma-separated, dotted-decimal IP address to specify one or more hosts
allowed to use the script, and/or one or more comma-separated IP addresses and
CIDR subnet mask to specify a range of hosts. IPv4 only! For example
<PRE
CLASS=
"code"
>
$ DEFINE /SYSTEM DCLINABOX_ENABLE "*"
$ DEFINE /SYSTEM DCLINABOX_ENABLE "192.168.1.2"
$ DEFINE /SYSTEM DCLINABOX_ENABLE "192.168.1.2,192.168.1.3"
$ DEFINE /SYSTEM DCLINABOX_ENABLE "192.168.1.0/24"
$ DEFINE /SYSTEM DCLINABOX_ENABLE "192.168.1.0/24,192.168.2.2"
</PRE>
<P>
By default the WebSocket, and hence all traffic to and from the DCLinabox
login and session, is only allowed over
<B>
Secure Sockets Layer
</B>
(wss:).
This is the case even when the terminal page is accessed via standard
(unencrypted) HTTP and implies the system must have a working SSL service. To
allow access via unencrypted connections (
<B>
CAUTION
</B>
) add
<TT>
ws:
</TT>
somewhere in the logical name value and if the terminal page is accessed using
standard HTTP the WebSocket will be established using the same service.
<PRE
CLASS=
"code"
>
$ DEFINE /SYSTEM DCLINABOX_ENABLE "ws:,*"
$ DEFINE /SYSTEM DCLINABOX_ENABLE "192.168.1.0/24,ws:,192.168.2.2"
</PRE>
<P>
The logical name DCLINABOX_IDLE allows the number of minutes before
client disconnection to be specified. Define to -1 to to disable idle
diconnection.
<PRE
CLASS=
"code"
>
$ DEFINE /SYSTEM DCLINABOX_IDLE 1440
$ DEFINE /SYSTEM DCLINABOX_IDLE -1
</PRE>
<P>
Also see
<A
HREF=
"#obfuscation"
>
Obfuscation
</A>
.
<A
NAME=
"custom"
>
<H2>
Customising
</H2>
</A>
<P>
A
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
session has user-selectable
characteristics available via a right-click menu.
<P>
The
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
terminal emulator
infrastructure is designed to allow straight-forward application and site
localisation.
<P>
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
operates in one of two modes;
<UL>
<LI>
terminal embedded in an HTML page
<LI>
standalone terminal window
</UL>
Both the embedded terminal and the terminal launcher are simple to incorporate
in a site-local page. The
<A
TARGET=
"_blank"
HREF=
"example.html?httpd=content&type=text/plain"
><SPAN
CLASS=
"dclinabox"
>
EXAMPLE.HTML
</SPAN></A>
page demonstrates both.
<UL>
<LI>
embedded:
<TT>
<
iframe src=
"
/dclinabox/-/dclinabox.html
"><
/iframe
>
</TT>
<LI>
standalone:
<TT>
<
... onclick=
"
openDCLinabox()
"
...
>
</TT>
</UL>
<P>
The standalone terminal
<TT>
openDCLinabox()
</TT>
function will
accept an optional host name (with optional scheme and/or port).
<PRE
CLASS=
"code"
>
<
... onclick=
"
openDCLinabox('the.host.name')
"
...
&
gt
</PRE>
<P>
Configuration of some elements of
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
behaviour is possible using JavaScript variables.
<DIV
STYLE=
"margin:1em 5em 1em 2em;"
>
<TABLE
class=
"variable"
>
<TR><TH
WIDTH=
"15%"
>
Variable
</TH><TH
WIDTH=
"50%"
>
Purpose
</TH><TH
WIDTH=
"25%"
>
Value
</TH></TR>
<TR><TD>
DCLinaboxAnother
</TD>
<TD>
the
<SPAN
CLASS=
"button"
>
^
</SPAN>
button
displayed on a standalone terminal can also be made available on an embedded
terminal
</TD>
<TD><I>
true
</I>
or
<I>
false
</I>
(D)
</TD></TR>
<TR><TD>
DCLinaboxConfig
</TD>
<TD>
specifies a JavaScript file name containing these variables
</TD>
<TD>
(string)
<I>
name
</I>
.JS
</TD></TR>
<TR><TD>
DCLinaboxHost
</TD>
<TD>
specifies the host to which the terminal connects
</TD>
<TD>
(string) host name or address
</TD></TR>
<TR><TD>
DCLinaboxImmediate
</TD>
<TD>
a standlone terminal connects immediately but an embedded terminal must
<SPAN
CLASS=
"button"
>
CONNECT
</SPAN>
with this setting overriding this
</TD>
<TD><I>
true
</I>
or
<I>
false
</I>
(D)
</TD></TR>
<TR><TD>
DCLinaboxMessage
</TD>
<TD>
allows message text (and hence language) customisation
</TD>
<TD>
see
<A
HREF=
"#messages"
>
below
</A></TD></TR>
<TR><TD>
DCLinaboxScriptName
</TD>
<TD>
allows the
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
script to have a
different name
</TD>
<TD>
see
<A
HREF=
"#obfuscation"
>
below
</A></TD></TR>
<TR><TD>
DCLinaboxScroll
</TD>
<TD>
terminal scrollback buffer
</TD>
<TD>
(integer) zero(D) to disable or number of lines
</TD></TR>
<TR><TD>
DCLinaboxSecureAlways
</TD>
<TD>
always connect to the terminal system via SSL
</TD>
<TD><I>
true
</I>
(D) or
<I>
false
</I></TD></TR>
<TR><TD>
DCLinaboxStyle
</TD>
<TD>
specifies a CSS file name containing site specifics
</TD>
<TD>
(string)
<I>
name
</I>
.CSS
</TD></TR>
<TR><TD>
DCLinaboxTitle
</TD>
<TD>
by default a standalone terminal is named
"
DCLinabox:
<I>
host
</I>
"
with this providing a local alternative
</TD>
<TD>
(string) description
</TD></TR>
<TR><TD>
DCLinaboxWidth
</TD>
<TD>
initial terminal width
</TD>
<TD>
(integer) 80(D) or 132
</TD></TR>
</TABLE>
</DIV>
<P>
Common settings can be seen and are available for modification in the file
<A
TARGET=
"_blank"
HREF=
"/dclinabox/-/configinabox.js?httpd=content&type=text/plain"
><SPAN
CLASS=
"dclinabox"
>
CONFIGINABOX.JS
</SPAN></A>
for site-wide configuration, or the JavaScript variable can be assigned using a
<
script
>
..
<
/script
>
element appended to the
<
head
>
..
<
head
>
section of an embedded terminal page or terminal
launcher page to provide page-specific customisation. For example:
<PRE
CLASS=
"code"
>
<
script type="text/javascript"
>
DCLinaboxSecureAlways = true;
DCLinaboxImmediate = true;
DCLinaboxWidth = 132;
DCLinaboxScroll = 200;
<
/script
>
</PRE>
<P>
By default
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
connects to the same
host and port used to access the HTML page containing the embedded terminal or
launcher button/link. It is possible to have the terminal connect to a
different host (which of course must have the
<TT>
/cgiplus-bin/dclinabox
</TT>
application available). This host specification can contain an optional,
colon-delimited port number and the variable used to specify just an alternate
port number. Add the
<TT>
DCLinaboxHost
</TT>
JavaScript variable to the embedded
terminal or launcher page.
<PRE
CLASS=
"code"
>
<
script type="text/javascript"
>
DCLinaboxHost="the.host.name"
<
/script
>
</PRE>
<P>
Alternatively, a host selection dialog can be generated on the embedded
terminal or launcher page.
<PRE
CLASS=
"code"
>
<
span id="selectDCLinaboxHost"
><
script type="text/javascript"
>
selectDCLinaboxHost("one.host.name,two.host.name,three.host.name")
<
/script
><
/span
>
</PRE>
<P>
Optionally, the host specification can include an equate symbol delimitted
description.
<PRE
CLASS=
"code"
>
<
span id="selectDCLinaboxHost"
><
script type="text/javascript"
>
selectDCLinaboxHost("one.host.name=FIRST,two.host.name,three.host.name=3rd host name")
<
/script
><
/span
>
</PRE>
<P>
<A
NAME=
"messages"
>
Customised
</A>
and non English language messages are
configurable. Carefully reproduce the default message object found in
<A
TARGET=
"_blank"
HREF=
"/dclinabox/-/dclinabox.js?httpd=content&type=text/plain"
><SPAN
CLASS=
"dclinabox"
>
DCLINABOX.JS
</SPAN></A>
using desired equivalents and specify as for other configuration elements.
One, some or all may be specified, with absent messages defaulted.
<PRE
CLASS=
"code"
>
<
script type="text/javascript"
>
DCLinaboxMessage = { NOTSUP : 'WebSocket stds inte!',
CONNEC : 'ANSLUTA',
DISCON : 'KOPPLA',
DISURE : 'KOPPLA: r du sker?'
};
<
/script
>
</PRE>
<P>
The file
<A
TARGET=
"_blank"
HREF=
"/dclinabox/-/dclinabox.css?httpd=content&type=text/plain"
><SPAN
CLASS=
"dclinabox"
>
DCLINABOX.CSS
</SPAN></A>
is available for style-sheet customisation of terminal elements (colour, border
size and style, font size, etc.) A local style file may be specified using the
JavaScript variable
<TT>
DCLinaboxStyle
</TT>
.
<A
NAME=
"bookmarklet"
>
<H2>
Bookmarklet
</H2>
</A>
<P>
A
<A
TARGET=
"_blank"
HREF=
"http://en.wikipedia.org/wiki/Bookmarklet"
>
Bookmarklet
</A>
is a snippet of useful JavaScript often stored as the URL of a
bookmark/favorite.
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
provides for
bookmarklet activation allowing standalone terminals to be activated simply by
clicking such a bookmark (or link). The following application allows the
essentials of a
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
activation to be
entered (with appropriate defaults) and the resulting link be added to the
current browser's bookmarks.
<form
action=
"javascript:"
>
<table
border=
"0"
width=
"100%"
>
<tr><th></th><th
align=
"left"
>
Terminal Host
</th><th
align=
"left"
>
Script Name
</th></tr>
<tr>
<td><nobr>
SSL
<input
id=
"termprot"
type=
"checkbox"
value=
"wss:"
checked=
"checked"
></nobr></td>
<td><input
id=
"termhost"
type=
"text"
size=
"25"
></td>
<td><input
id=
"termname"
type=
"text"
size=
"20"
></td>
<td><input
type=
"button"
value=
"reset"
onclick=
"resetBookmarklet()"
></td>
<td
width=
"95%"
>
</td>
</tr>
<tr><td></td><td>
<input
type=
"button"
id=
"makemark"
value=
"Make Bookmarklet"
onclick=
"return makeBookmarklet()"
>
<tr><td></td><td
colspan=
"4"
style=
"padding-top:5px;"
>
<a
id=
"marklink"
name=
"marklink"
style=
"border:1px dotted gray; padding:1px 8px 1px 8px;"
onclick=
"eval(this.href.substr(11));return false;"
></a>
<i>
(click, or drag into bookmarks)
</i>
</td></tr>
<tr><td></td><td
colspan=
"4"
style=
"padding-top:5px;"
>
<textarea
id=
"markurl"
onclick=
"this.select()"
style=
"display:inline; font-family:monospace;
border:1px dotted gray; padding:1px 8px 1px 8px;"
>
</textarea><nobr>
<i>
(copy-and-paste as required)
</i></nobr>
</td></tr>
</table>
<script
language=
"JavaScript"
>
var
termprot
=
document
.
getElementById
(
'
termprot
'
);
var
termhost
=
document
.
getElementById
(
'
termhost
'
);
var
termname
=
document
.
getElementById
(
'
termname
'
);
var
marklink
=
document
.
getElementById
(
'
marklink
'
);
var
markurl
=
document
.
getElementById
(
'
markurl
'
);
function
resetBookmarklet
()
{
termprot
.
checked
=
true
;
termhost
.
value
=
window
.
location
.
host
;
termname
.
value
=
'
DCLinabox
'
;
marklink
.
innerHTML
=
'
bookmarklet link
'
;
markurl
.
innerHTML
=
'
bookmarklet URL
'
;
marklink
.
removeAttribute
(
'
href
'
);
return
false
;
}
function
makeBookmarklet
()
{
var
params
=
'
status=0,toolbar=0,location=0,menubar=0,resizable=0,
'
+
'
scrollbars=0,height=100,width=100
'
;
if
(
termprot
.
checked
)
var
protocol
=
'
wss://
'
;
else
var
protocol
=
'
ws://
'
;
var
URL
=
window
.
location
.
protocol
+
'
\
/
\
/
'
+
window
.
location
.
host
+
'
/dclinabox/-/dclinabox.html
\
#
'
+
protocol
+
termhost
.
value
+
'
/cgiplus-bin/
'
+
termname
.
value
;
var
markhref
=
'
javascript:window.open(
\'
'
+
URL
+
'
\'
,
\'
_blank
\'
,
\'
'
+
params
+
'
\'
)
'
;
var
marktitle
=
termname
.
value
+
'
:
'
+
termhost
.
value
;
marklink
.
href
=
markurl
.
innerHTML
=
markhref
;
marklink
.
innerHTML
=
marktitle
;
return
false
;
}
resetBookmarklet
();
</script>
</FORM>
<A
NAME=
"obfuscation"
>
<H2>
Obfuscation
</H2>
</A>
<P>
With a public system it may be necessary to reduce nuisance-value access
attempts and/or an attack vector. The obvious approach in a Web-based
environment might be to make the
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
script subject to authorisation. This is not possible with WebSockets where
there is no RFC-defined authorisation scheme, access-control relies on the
underlying WebSocket application - which of course
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
has with the LOGINOUT
username/password dialog.
<P>
In a somewhat
<I>
security though obscurity
</I>
approach (or more like
<I>
don't make youself an easy target
</I>
), the DCLINABOX.EXE file may be
alternately named. It just means the well-known
<TT>
/cgiplus-bin/dclinabox
</TT>
path will not exist and is akin to changing
from the well-known SSH port number to reduce that obvious attack vector. Just
use a less-than-obvious (or access-controlled) customised terminal page (or
bookmarklet), with a different script executable file name, and add that script
name to the
<
head
>
..
<
/head
>
section of the HTML terminal file as
with other per-terminal configuration variables.
<PRE
CLASS=
"code"
>
<
script type="text/javascript"
>
DCLinaboxScriptName="anexample"
<
/script
>
</PRE>
<P>
The script accessed will then be
<TT>
/cgiplus-bin/anexample
</TT>
and the
script file name
<TT>
CGI_EXE:ANEXAMPLE.EXE
</TT>
.
<P>
The logical names reflect the executable name and so in this case would be
<TT>
ANEXAMPLE_ENABLE
</TT>
, etc.
<A
NAME=
"problems"
>
<H2>
Problems?
</H2>
</A>
<UL>
<LI>
With the
<SPAN
CLASS=
"dclinabox"
>
DCLinabox
</SPAN>
kit ... Mark.Daniel@wasd.vsm.com.au
<LI>
The info-WASD mailing list
</UL>
<A
NAME=
"ackn"
>
<H2>
Acknowlegements
</H2>
</A>
<P>
Many thanks to Markus Gutschke
<
markus@shellinabox.com
>
for the
original
<B>
ShellInABox
</B>
project and for making it Free and Open Source via
the GPL. Furthermore, the
<TT>
vt100.js
</TT>
implementation appears to be
particularly rigorous, so thanks again.
<BR><HR
ALIGN=
left
SIZE=
1
NOSHADE
><BR>
</BODY>
</HTML>
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment