geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jason Dillon <ja...@planet57.com>
Subject Re: What is GShell?
Date Wed, 04 Oct 2006 06:14:19 GMT
On Oct 3, 2006, at 10:12 AM, Paul McMahan wrote:
> OK I should have guessed that windows was the culprit. I jumped over
> to debian and now all is fine.  GShell looks very promising!!  I love
> the idea of being able to telnet or ssh into the server and run
> commands remotely.  As a matter of fact this appears to provide a
> vital improvement that Geronimo users have been asking for: the
> ability to remotely administer a running server (see the "Swing
> console?" thread from 9/17/2006).

Yup, that is the general idea. :-)


> A few questions :
> -  what's the security model?

Mostly this is TBD.  I plan on adding some sort of login context to  
allow users to login (for ssh this will be the ssh auth callback, for  
telnet it will have to be a custom login handler).  Once credentials  
are established, then it should be possible to limit the set of  
commands that are enabled for a user.  I am sure there is much more  
than can be done here too.  But at the moment, I've only planned to  
get a simple login implemented and have not done much more design of  
a richer model.


> -  will GShell share a common code path with the console and the CLI
> for handling things like deployment?

Yes, well... yes for the CLI, as I hope to eventually replace the  
existing CLI tools with command plugins into gshell, so they will be  
one and the same.  I am not really sure what the web console is  
doing, but we should definitely share as much as possible.... where  
possible.

It should be possible to define a simple interface (or set o  
interfaces) for each admin bit in the console... and provide a  
portlet and gshell command (or set of commands) to adapt to the  
interface.

I think this will be easy(ish) to do... more so once the webconsole  
is more xtensible/pluggbale, and when admin portlets are split up  
into modules that are specific to the function they provide.

It certainly would be nice to have one-to-one mappings for admin  
functionality between the webconsole and gshell commands... but there  
is still work on both sides before that would be possible... but it  
is kind of a longer term goal.


> -  which subsystems of geronimo will GShell depend on and how will it
> access them? e.g. will it be wrappered as a gbean and use the kernel
> to get access to them?  mainly I'm wondering if (unlike the console)
> it will be able to administer components running in the server without
> a having a run-time dependency against them.

Um, well I am in the process of writing a few simple GBeans to run/ 
manage the server components of GShell (the telnet/ssh server and the  
config and monitoring aspects that they bring in).  Short of that  
there are no dependencies on Geronimo.

I am thinking that a simple GBean to mange the start/stop of the  
server (ie, start/stop the telnet/ssh connector), which will manage  
the basic port config as well as the more advanced ssh config  
needed.  And then a simple portlet to control the gbean, to list who  
is logged in, maybe even allow sessions to be terminated and such.

May need to introduce some extra command sets which are G specific...  
or augment the script command to know more about the G namespace, so  
that we can register some more helpful variables to allow some  
meaningful/useful scripts to be written.

But, so far these are just ideas in my head... some with TODO  
comments in code... I have not had enough time to get anymore  
significant work done on gshell after the initial flurry of code I  
dropped in over a week or so.

I hope that once all this build muck is over and done with that I can  
get back into the GShell groove... clean it up and get it integrated  
into the server.

Anyways... ideas and suggestions are welcome :-)

--jason


Mime
View raw message