Article delegate-en/2718 of [1-5169] on the server localhost:119
  upper oldest olders older1 this newer1 newers latest
search
[Top/Up] [oldest] - [Older+chunk] - [Newer+chunk] - [newest + Check]
[Reference:<_A2708@delegate-en.ML_>]
Newsgroups: mail-lists.delegate-en

[DeleGate-En] Re: How to use delegate as an authenticating telnet proxy ?
07 Aug 2004 02:25:48 GMT feedback@delegate.org (Yutaka Sato)
The DeleGate Project


On 07/21/04(23:43) you "Sunil S" <sunilandresmi@hotmail..> wrote
in <_A2708@delegate-en.ML_>
 |I needed to let a few users connect to a telnet server in our private 
 |network from Internet. Before the user gets the challenge from the real 
 |server, I wanted them to first authenticate to the telnet proxy.
 |
 |If I run (after adding users to -telnet with -Fauth)
 |
 |delegate -P2323 SERVER=telnet://real-server ADMIN=me@mydomain.. 
 |AUTHORIZER=-telnet:* RELIABLE="-a/*"
 |
 |clients get thrown out with log message "not reliable".  I did not find a 
 |suitable "AUTH=" option to be used in this scenario (for telnet proxying).
 |
 |Can you please tell me if it is possible to use delegate to meet my 
 |requirement and if so how to go about it?

AUTHORIZER has not been applied to Telnet-DeleGate which is bound to
a specific Telnet server as SERVER=telnet://server.  It will be applied
to such Telnet-DeleGate with the enclosed patch.
The patch will be applied to the next release (delegate8.9.6-pre14)

Cheers,
Yutaka
--
  D G   Yutaka Sato <y.sato@delegate.org> http://delegate.org/y.sato/
 ( - )  National Institute of Advanced Industrial Science and Technology
_<   >_ 1-1-4 Umezono, Tsukuba, Ibaraki, 305-8568 Japan
Do the more with the less -- B. Fuller


*** dist/delegate8.9.6-pre13/src/telnet.c	Thu Jun 17 08:27:09 2004
--- src/telnet.c	Sat Aug  7 11:20:46 2004
***************
*** 1568,1573 ****
--- 1568,1595 ----
  		return proxy_telnet(Conn);
  	}
  
+ 	if( CTX_auth(Conn,NULL,NULL) ) /* with AUTHORIZER */
+ 	{
+ 		FILE *fc = fdopen(FromC,"r");
+ 		FILE *tc = fdopen(ToC,"w");
+ 		char auser[256],ahost[256];
+ 		int dport = DFLT_PORT;
+ 
+ 		write(ToC,NOPstr,2);
+ 		scanCommands(DtoC,NOPstr,2);
+ 
+ 		auser[0] = ahost[0] = 0;
+ 		DFLT_PORT = 0; /* to escape "already authorized" */
+ 		if( doAUTH0(Conn,fc,tc,"telnet",DST_HOST,dport,auser,ahost,getline,NULL) == EOF ){
+ 			return;
+ 		}
+ 		DFLT_PORT = dport;
+ 		fcloseFILE(fc);
+ 		fcloseFILE(tc);
+ 	}
+ 	if( ToC < 0 || ToS < 0 )
+ 		connect_to_serv(Conn,FromC,ToC,0);
+ 
  	if( ToC < 0 || ToS < 0 )
  		return;
  

  admin search upper oldest olders older1 this newer1 newers latest
[Top/Up] [oldest] - [Older+chunk] - [Newer+chunk] - [newest + Check]
@_@V