PageViews: 16,430 hits / 336 nets
home updates download manual documents feedback search
DeleGateIcon

Reference Manual of DeleGate

SIMPLE PLAIN SHTML
DeleGate reference manual version 9.9

The Reference Manual of DeleGate version 9.9 (+10.X)

 Copyright
Copyright (c) 1994-2000 Yutaka Sato <ysato AT etl.go.jp> <y DOT sato AT delegate.org>
Copyright (c) 1994-2000 Electrotechnical Laboratory (
ETL), AIST, MITI
Copyright (c) 2001-2014 National Institute of Advanced Industrial Science and Technology (AIST)
AIST-Product-ID: 2000-ETL-198715-01, H14PRO-049, H15PRO-165, H18PRO-443

Permission to use this material for evaluation, copy this material for your own use, and distribute the copies via publicly accessible on-line media, without fee, is hereby granted provided that the above copyright notice and this permission notice appear in all copies. AIST makes no representations about the accuracy or suitability of this material for any purpose. it is provided "as is", without any express or implied warranties.


This document is written based on the latest version of DeleGate version 9.X, and partially on version 10.X. Comments about this document are expected to be directed to mailto:feedback@delegate.org to be open and shared at http://www.delegate.org/feedback/. Watch DeleGate Home Page at http://www.delegate.org/ to see the latest status. Beginners are recommended to read a short tutorial at http://www.delegate.org/delegate/tutorial/ also. A collection of usage examples at http://www.delegate.org/delegate/HowToDG.shtml might be helpful to see what you can do with DeleGate. A list of related documents is at http://www.delegate.org/documents/.



 _menu
[ help search decomp parts skeleton frame ] ... these links are active only when accessed via origin HTTP-DeleGate


 PERMUTED INDEX

PERMUTED INDEX


 INDEX

INDEX

--------- --------- --------- --------- --------- --------- --------- ---------
DELEGATED(8)                MAINTENANCE COMMANDS                   DELEGATED(8)

 NAME

NAME

    delegated - DeleGate server

 SYNOPSIS
SYNOPSIS
 DESCRIPTION
DESCRIPTION
 OPTIONS

OPTIONS

 entrance

 -P option
   -P option  --  entrance port(s) to the DeleGate
              ==  -Pport[,port]*
        port  ==  [host:]portNum[/udp][/admin][/protocolName]
     portNum  ==  number[-number]

 -Q option
   -Q option* --  entrance port to the DeleGate
              ==  -Qport
    -Q option can be used to specify multiple entrance ports separately in multiple options. For example, a set of of options "-Q21 -Q80 -Q1080" is equivalent to a single option "-P21,80,1080".

 -f option
   -f option  --  foreground execution
              ==  -f[v]

 -r option
   -r option  --  restart

 -v option
   -v option  --  logging level control
              ==  -v[vdtsau]

 -d option
   -d option  --  debugging of sub components
              ==  -d[hst]

 -D option
   -D option  --  disabling sub components
              ==  -D[t]

 -S option
   -S option  --  watch SIGCHLD signal

 -T option
   -T option  --  trace system calls
              ==  -T[xsdt]*

 -F option
   -F option  --  extra function
              ==  -Ffunction

 -- option
   -- option  --  hiding command line arguments
    If specified, command line arguments before "--" are left visible to ps(1) command (with pstat(2) system call) on most of Unix systems. Without this, any arguments are hidden by default.

 Parameter option
   parameter  ==  name=value

 Conditional Parameter
   conditional parameter == (condition)parameter

 -e option
   -e option  ==  -ename=value

 Terminology
Terminology
 Parameters Category

PARAMETERS


 General

General

    Parameters in this category are used to control common attributes of DeleGate independently of the purpose of usage or target application protocol.

    name value format functionality
    -- ---------- ------------------ ----------------------------------
    SERVER proto://host:port client-side protocol and default server
    ADMIN user@host.domain E-mail addr. of the admin. of this DeleGate
    + OWNER user[/group] with who's access right this DeleGate runs
    * CRON crontab-spec cron compatible scheduler of actions
    * INETD inetd-conf inetd like server configuration notation
    * HOSTLIST name:hostList define a named HostList
    * CLUSTER protocol:hostList define a cluster of servers
    * CMAP map-spec mapping table about the current connection
    + DYLIB patternList file-name patterns of dynamic libraries
    + LDPATH dir;dir;... search path for DYLIB
    LIBPATH dir:dir:... search path for library files
    DATAPATH dir:dir:... search path for data files
    DGPATH dir:dir:... search path for SUBSTITUTION resources
    * DYCONF conditions:path dynamic configuration based on request
    DGCONF dir/file the file of configuration parameters
    DGOPTS option;option;... list of command line options
    PORT portList reserve entrance ports like -P option


 Routing

Routing


 Access control

Access control


 Resource usage restriction

Resource usage restriction

    These parameters can be useful where available resources are in severe condition; when the host of DeleGate is heavy loaded, network bandwidth is narrow, or response from server can be slow.

    -- ---------- ------------------ ----------------------------------
    * MAXIMA what:number maxima of parallel sessions and etc.
    * TIMEOUT what:seconds timeout of connection and etc.
    * DELAY what:seconds delay for penalty
    * CHOKE Delay:Clnt:UA:Ref choking robots


 Cache control

Cache control


 Mount

Mount


 Data conversion

Data conversion

    Parameters to control built-in converter for text type data.

    -- ---------- ------------------ ----------------------------------
    * CHARCODE JIS|EUC|SJIS|UTF8 character conversion for Japanese text
    * CHARMAP [jis|ucs]:a-z/A-Z map character to character in text data
    HTMLCONV deent|enent|pre decode/encode between HTML & plain text
    MIMECONV thru|charcode control MIME encoder/decoder


 Filter control

Filter control

    Insert a filter program on the way to/from client or server to convert data transmitted between them.

    -- ---------- ------------------ ----------------------------------
    FCL filterCommand filter between client and DeleGate
    FTOCL filterCommand filter from DeleGate to client
    FFROMCL filterCommand filter from client to DeleGate
    FSV filterCommand filter between server and DeleGate
    FTOSV filterCommand filter from DeleGate to server
    FFROMSV filterCommand filter from server to DeleGate
    FMD filterCommand filter between MASTER and this DeleGate
    FTOMD filterCommand filter from this DeleGate to MASTER
    FFROMMD filterCommand filter from MASTER to this DeleGate
    XCOM filterCommand execute a command as a server
    XFIL filterCommand execute a filter as a server


 Local file usage

Local file usage

 Logging

 Host name resolution

Host name resolution


 Protocol specific
Protocol specific
    -- ---------- ------------------ ----------------------------------
    * HTTPCONF what:conf HTTP specific configuration
    FILETYPE suffix:fileType mapping from filename to data type & etc.
    CGIENV name,name,... environment variables to be passed to CGI
    * ICPCONF icpServerConfig configuration as an ICP server
    * FTPCONF what[:conf] FTP specific configuration
    * NNTPCONF what:conf NNTP specific configuration
    * SMTPCONF what:conf SMTP specific configuration
    SMTPGATE dirPath SMTP to SMTP/NNTP g.w. configuration
    * DNSCONF what:conf configuration as a DNS server
    * SOCKSTAP proto[:[dst][:src]] interpret the protocol over SOCKS

 PARAMETERS

 SERVER
SERVER parameter*   ==  SERVER=protocol[://host[:portNum]][:-:MountOptions]
           portNum  ==  [+|-]number
                    --  default: SERVER=delegate

 ADMIN
ADMIN parameter     ==  ADMIN=user@host.domain
                    --  default: built in at compile time

 OWNER
OWNER parameter*    ==  OWNER=user[/group][:srcHostList]
                    --  default: OWNER="nobody/nogroup"
                    --  restriction: super-user only on most of Unix
                    --  restriction: setting the user of a service on Windows

 CRON
CRON parameter*     ==  CRON="crontab-spec"
       crontab-spec ==  minute hour day month dayOfWeek action
                    --  default: none

 INETD
INETD parameter*    ==  INETD="inetd-conf"
        inetd-conf  ==  port sockType proto waitStat uid execPath argList
              port  ==  [host:]portNum
          sockType  ==  stream | dgram
             proto  ==  tcp | udp
          waitStat  ==  nowait ("wait" is not yet supported)
                    --  default: none

 HOSTLIST
HOSTLIST parameter* ==  HOSTLIST=listName:HostList

 CLUSTER
CLUSTER parameter*  ==  CLUSTER=[protoList]:ServerList
        ServerList  ==  [/R,]Server[,ServerList]
            Server  ==  Host[..Port]

 CMAP

 Connection map
CMAP parameter*     ==  CMAP=resultStr:mapName:connMap
           connMap  ==  ProtoList:dstHostList:srcHostList
                    --  default: none

 TLSCONF
TLSCONF parameter*  ==  TLSCONF=tlsConf[,tlsConf]*
           tlsConf  ==  what:value
                    --  default: TLSCONF=scache:do,xcache:do

 TLS negotiation control
STLS parameter*     ==  STLS=stlsSpecs[,sslwayCom][:connMap]
         stlsSpecs  ==  [-]stlsSpec[/im][/ssl][,stlsSpecs]
          stlsSpec  ==  fsv | fcl | mitm | imimSec
         sslwayCom  ==  {sslway [-Vrfy] [-CApath dir] ...}
           connMap  ==  ProtoList:dstHostList:srcHostList
                    --  default: none
                    --  restriction: applicable to HTTP, FTP, SMTP, POP, IMAP, SOCKS
                    --  required: SSLway

 certificates repository
CERTDIR parameter   ==  CERTDIR=dir
                    --  default: ${ETCDIR}/certs
                    --  version: DeleGate/9.8.0 + OpenSSL0.9.8g or laters

 DGCONF
DGCONF parameter    ==  DGCONF=dir/file
                    --  default: DGCONF='${EXECDIR}/${EXECNAME}.conf'

 DYCONF
DYCONF parameter*   ==  DYCONF=[conditions]parameters
        parameters  ==  file:path | cgi:path | arg:{listOfParameters}
                    --  default: none

 DYLIB
DYLIB parameter     ==  DYLIB=libfilePattern[,libfilePattern]*
                    --  default: DYLIB='dglib*.so,lib*.so,dglib*.dylib,lib*.dylib'

 LDPATH
LDPATH parameter    ==  LDPATH=dirPath[;dirPath]*
                    --  default: LDPATH='${LIBDIR};${EXECDIR};${HOME}/lib;/usr/lib;/lib'

 LIBPATH

 STARTDIR

 LIBDIR

 EXECDIR
LIBPATH parameter   ==  LIBPATH=dirPath[:dirPath]*
                    --  default: LIBPATH='.:${STARTDIR}:${LIBDIR}:${EXECDIR}:${ETCDIR}'

 DATAPATH
DATAPATH parameter  ==  DATAPATH=dirPath[:dirPath]*
                    --  default: DATAPATH='.:${DGROOT}:${STARTDIR}

 DGPATH
DGPATH parameter    ==  DGPATH=dirPath[:dirPath]*
                    --  default: DGPATH='+:.:${HOME}/delegate:${EXECDIR}:${ETCDIR}'

 DGSIGN
DGSIGN parameter    ==  DGSIGN=signatureSpec
                    --  default: DGSIGN="V.R.P/Y.M.D"

 DGOPTS
DGOPTS parameter    ==  DGOPTS=opt[,opt]*
                    --  default: none

 SOCKOPT
SOCKOPT parameter*  ==  SOCKOPT=[no]name[:value]
                    --  default: reuse

 PORT
PORT parameter      ==  PORT=port[,port]*
              port  ==  [host:]portNum[/udp]
           portNum  ==  number[-number]
                    --  default: none

 FORWARD
FORWARD parameter*  ==  FORWARD=gatewayURL[-_-connMap]
        gatewayURL  ==  gwproto://[user:pass@]gwhost[:gwport]
           connMap  ==  protoList:dstHostList:srcHostList
                    --  default: none

 ROUTE
ROUTE parameter*    ==  ROUTE=proto://host:port/-_-dstHostList:srcHostList
                    --  default: none

 MASTER
MASTER parameter*   ==  MASTER=host:port[/masterControl][:dstHostList]
                    --  default: none

 MASTERP
MASTERP parameter   ==  MASTERP=[host:port]
                    --  default: none

 RPORT
RPORT parameter     ==  RPORT={tcp|udp}[:host]
                    --  default: none

 PROXY
PROXY parameter*    ==  PROXY=host:port[:dstHostList]
                    --  default: none
                    --  restriction: applicable to HTTP, FTP, Telnet

 SOCKS

 Socks
SOCKS parameter*    ==  SOCKS=host[:[port][/socksOpt][:dstHostList[:srcHostList]]]
          socksOpt  ==  [ -4 | -r ]*
                    --  default: none

 SSLTUNNEL
SSLTUNNEL parameter ==  SSLTUNNEL=host:port
                    --  default: none

 VSAP
VSAP parameter      ==  VSAP=host:port
                    --  default: none

 YYMUX
YYMUX parameter*    ==  YYMUX=host[:port][:connMap]
           connMap  ==  ProtoList[:dstHostList[:srcHostList]]
                    --  default: none

 YYCONF
YYCONF parameter*   ==  YYCONF=name[:value]
                    --  default: none

 CONNECT
CONNECT parameter*  ==  CONNECT=connSeq[:connMap]
           connSeq  ==  connType[,connType]*
          connType  ==  cache|icp|proxy|master|https|vsap|direct|socks|udp
           connMap  ==  ProtoList[:dstHostList[:srcHostList]]
                    --  default: CONNECT="c,i,m,h,y,v,s,d:*:*:*"

 SRCIF
SRCIF parameter*    ==  SRCIF=host[:[port][:connMap]]
           connMap  ==  ProtoList:dstHostList:srcHostList
                    --  default: SRCIF="*:*:*:*:*"

 TUNNEL

 tunnel
TUNNEL parameter    ==  TUNNEL=tunnelType:script
        tunnelType  ==  tty7
                    --  default: none

 PERMIT
PERMIT parameter*   ==  PERMIT=connMap
           connMap  ==  ProtoList:dstHostList:srcHostList
                    --  default: none

 REJECT
REJECT parameter*   ==  REJECT=connMap
           connMap  ==  ProtoList:dstHostList:srcHostList
                    --  default: none

 REMITTABLE
REMITTABLE parameter == REMITTABLE=ProtoList
                    --  default: REMITTABLE="*" for generalist
                    --  default: REMITTABLE="." for specialist

 REACHABLE
REACHABLE parameter* ==  REACHABLE=dstHostList
                    --  default: REACHABLE="*" (any host is reachable)

 RELIABLE
RELIABLE parameter* ==  RELIABLE=srcHostList
                    --  default: RELIABLE=".localnet"

 RELAY
RELAY parameter*    ==  RELAY=relayTypeList[:connMap]
     relayTypeList  ==  relayType[,relayType]*
         relayType  ==  proxy | delegate | vhost | no | nojava | noapplet
           connMap  ==  ProtoList:dstHostList:srcHostList
                    --  default: RELAY="delegate,nojava:*:*:.localnet"
                                 RELAY="vhost,nojava:http:{*:80}:.localnet"
                                 RELAY="proxy:*:*:*"

 SCREEN
SCREEN parameter ==  SCREEN={reject|accept}
                    --  default: none

 AUTH
AUTH parameter*     ==  AUTH=what:authProto:who
                    --  default: none

 AUTHORIZER
AUTHORIZER parameter* ==  AUTHORIZER=authServList[@realmValue][:connMap]
       authServList  ==  [authForw,]authServ[,authServ]* | & | *
           authForw  ==  -map{inPat}{localPat}{fwdPat} | -strip | -fwd
           authServ  ==  authHost[/portNum][(reprUser)]
           authHost  ==  hostName | hostAddr
         realmValue  ==  word | {words separated with space}
            connMap  ==  ProtoList:dstHostList:srcHostList
                    --  default: none
                    --  restriction: applicable to Telnet, FTP, NNTP, SMTP, IMAP,
                                     Socks, SockMux, and HTTP

 MYAUTH
MYAUTH parameter*   ==  MYAUTH=username:password[:connMap]
                    --  default: none
                    --  restriction: applicable to Socks, VSAP, SMTP, and HTTP

 RIDENT
RIDENT parameter    ==  RIDENT=ridentType[,ridentType]*
       ridentType   ==  client | server
                    --  default: none

 MAXIMA
MAXIMA parameter*   ==  MAXIMA=what:number,...
                    --  default: MAXIMA=listen:20,ftpcc:2,...

 TIMEOUT
TIMEOUT parameter*  ==  TIMEOUT=what:seconds,...
                    --  default: TIMEOUT=dns:10,acc:10,con:10,lin:30,...

 DELAY
DELAY parameter*    ==  DELAY=what:seconds
                    --  default: DELAY=reject:60,unknown:60,...

 CHOKE
CHOKE parameter*    ==  CHOKE=Choking:Client:Ua:Referer:Url:Server:Protocol
                    --  default: none

 MOUNT
MOUNT parameter*    ==  MOUNT="vURL rURL [MountOptions]"
                    --  default: MOUNT="/* SERVER_URL*"

 MountOptions
MountOptions == option[,option]*

 URICONV
URICONV parameter*  ==  URICONV={convSpec|defElem|defAttr}
          convSpec  ==  convList:attrList
           defElem  ==  defelem:+,elemnameList
           defAttr  ==  defattr:+,attrnameList
                    --  default: it will be shown by URICONV=dump

 BASEURL
BASEURL parameter   ==  BASEURL=URL
                    --  default: none

 DELEGATE
DELEGATE parameter  ==  DELEGATE=gwHost:Port[:ProtoList]
                    --  default: DELEGATE=currentHost:currentPort

 COUNTER
COUNTER parameter   ==  COUNTER=listOfCounterControl
    counterControl  ==  do | total | acc | ssi | ref | err | ro | no | mntpV
                    --  default: COUNTER=no
                    --  restriction: applicable to HTTP, SMTP, FTP and DNS

 COUNTERDIR
COUNTERDIR parameter  ==  COUNTERDIR=dirPath
                    --  default: COUNTERDIR='${ADMDIR}/counts[date+/year%y/week%W]'

 CACHE
CACHE parameter*    ==  CACHE=cacheControl[,cacheControl]*[:connMap]
      cacheControl  ==  do | no | ro
           connMap  ==  ProtoList[:[dstHostList][:srcHostList]]
                    --  default: none
                    --  restriction: applicable to HTTP, FTP, NNTP and Gopher

 EXPIRE
EXPIRE parameter*   ==  EXPIRE=validity[/custody][:connMap]
           connMap  ==  ProtoList:dstHostList:srcHostList
          validity  ==  period
           custody  ==  period
            period  ==  Num[d|h|m|s]
                    --  default: EXPIRE=1h

 CACHEFILE
CACHEFILE parameter ==  CACHEFILE=fileNameSpec
                    --  default: CACHEFILE='$[server:%P/%L/%p]'

 ICP
ICP parameter*      ==  ICP=icpServerList[:icpServerSpec[:connMap]]
     icpServerList  ==  icpServer[,icpServer]*
         icpServer  ==  icpHost[/icpType/proxyPort/icpPort]
     icpServerSpec  ==  icpOptions:proxyPort:icpPort
           connMap  ==  ProtoList:dstHostList:srcHostList
                    --  default: none
                    --  restriction: applicable to {HTTP,FTP}-DeleGate

 CHARCODE
CHARCODE parameter* ==  CHARCODE=[inputCode/]outputCode[:[tosv][:connMap]]
        outputCode  ==  charCode
          charCode  ==  iso-2022-jp | euc-jp | shift_jis | utf-8 | us-ascii |
                               JIS | EUC | SJIS | UTF8 | ASCII | guess
           connMap  ==  [ProtoList][:[dstHostList][:[srcHostList]]]
                    --  restriction: applicable to HTTP, FTP, SMTP, POP,
                                     NNTP, Telnet, Tcprelay
                    --  default: none

 CHARMAP
CHARMAP parameter*  ==  CHARMAP=mapType:charMap[,charMap]*[:tosv]
           mapType  ==  ascii | ucs | jis | ucsjis | jisucs
           charMap  ==  inCharCode1[-inCharCode2]/outCharCode2[-[outCharCode2]]
          charCode  ==  hexa-decimal code | single ASCII character
                    --  default: none

 HTMLCONV
HTMLCONV parameter  ==  HTMLCONV=convList
          convList  ==  conv[,conv]*
              conv  ==  deent | enent | fullurl
                    --  default: HTMLCONV=deent

 MIMECONV
MIMECONV parameter  ==  MIMECONV=mimeConv[,mimeConv]
          mimeConv  ==  thru | charcode | nospenc
                                    | textonly | alt:first | alt:plain
                    --  default: none
                    --  MIMECONV="" if CHARCODE parameter is given

 FCL

 FTOCL

 FFROMCL

 FMD

 FTOMD

 FFROMMD

 FSV

 FTOSV

 FFROMSV

 filter-params
FCL parameter       ==  FCL=filterCommand
FTOCL parameter     ==  FTOCL=filterCommand
FFROMCL parameter   ==  FFROMCL=filterCommand
FSV parameter       ==  FSV=filterCommand
FTOSV parameter     ==  FTOSV=filterCommand
FFROMSV parameter   ==  FFROMSV=filterCommand
FMD parameter       ==  FMD=filterCommand
FTOMD parameter     ==  FTOMD=filterCommand
FFROMMD parameter   ==  FFROMMD=filterCommand
filterCommand       ==  [-s,][-p,][-w,]command
                    --  default: none

 XCOM

 XFIL
XCOM parameter      ==  XCOM=filterCommand
XFIL parameter      ==  XFIL=filterCommand
                    --  default: none

 CHROOT
CHROOT parameter    ==  CHROOT=dirPath
                    --  default:  none
                    --  restriction: super-user only on most of Unix

 DGROOT
DGROOT parameter    ==  DGROOT=dirPath
                    --  default: if ${STARTDIR}/DGROOT exists then use it, or
                                  on Unix: '/' if CHROOT is set or
                                           '${HOME}/delegate' or
                                           '/var/spool/delegate-${OWNER}' or
                                           '/tmp/delegate-${OWNER}'
                               on Windows: '/Program Files/DeleGate'

 SHARE
SHARE parameter     ==  SHARE=dirPatternList
                    --  default: empty

 UMASK
UMASK parameter     ==  UMASK=mask
                    --  default: the value of umask(2)

 VARDIR
VARDIR parameter    ==  VARDIR=dirPath
                    --  default: VARDIR='${DGROOT?&:/var/spool/delegate}'

 CACHEDIR
CACHEDIR parameter  ==  CACHEDIR=dirPath
                    --  default: CACHEDIR='${VARDIR}/cache'

 ETCDIR
ETCDIR parameter    ==  ETCDIR=dirPath
                    --  default: ETCDIR='${VARDIR}/etc'

 ADMDIR
ADMDIR parameter    ==  ADMDIR=dirPath
                    --  default: ADMDIR='${VARDIR}/adm'

 LOGDIR
LOGDIR parameter    ==  LOGDIR=dirPath
                    --  default: LOGDIR='${VARDIR}/log'
                    --  v10-default: LOGDIR='log[date+/y%y/m%m/%d]'

 LOGFILE

 PROTOLOG

 ERRORLOG

 TRACELOG
LOGFILE parameter   ==  LOGFILE=[LogFilename]
PROTOLOG parameter  ==  PROTOLOG=[LogFilename][:logFormat]
ERRORLOG parameter  ==  ERRORLOG=LogFilename
TRACELOG parameter  ==  TRACELOG=LogFilename
                    --  default: LOGFILE='${LOGDIR}/${PORT}'
                    --  default: PROTOLOG='${LOGDIR}/${PORT}.${PROTO}'
                    --  default: ERRORLOG='${LOGDIR}/errors.log'
                    --  default: TRACELOG='${LOGDIR}/ptrace.log'

 SYSLOG
SYSLOG parameter*   ==  SYSLOG=[syslogOpts,][syslogServ]
        syslogOpts  ==  syslogOpt[,syslogOpts]
         syslogOpt  ==  -vt | -vs | -vS | -vH | -fname
                    --  default: none

 LogFilename and Aging

LogFilename and dirPath Substitution for Aging


 EXPIRELOG
EXPIRELOG parameter ==  EXPIRELOG=LogFilename
                    --  default: EXPIRELOG='${LOGDIR}/expire.log'

 WORKDIR

 ACTDIR

 TMPDIR

 PIDFILE
WORKDIR parameter   ==  WORKDIR=dirPath
                    --  default: WORKDIR='${VARDIR}/work/${PORT}'
ACTDIR parameter    ==  ACTDIR=dirPath
TMPDIR parameter    ==  TMPDIR=dirPath
PIDFILE parameter   ==  PIDFILE=fileName
                    --  default: ACTDIR='${DGROOT}/act'
                    --  default: TMPDIR=system dependent
                    --  default: PIDFILE='${ACTDIR}/pid/${PORT}'

 HOSTS
HOSTS parameter*    ==  HOSTS=nameList[/addrList]
          nameList  ==  name | {name[,name]*}
          addrList  ==  addr | {addr[,addr]*}
                    --  default: HOSTS=localhost/127.0.0.1

 RESOLV
RESOLV parameter    ==  RESOLV=[resolver[,resolver]*]
          resolver  ==  resType[:[resParam][:[queryHostList][:clientHostList]]]
           resType  ==  cache | file | nis | dns | sys
                    --  default: RESOLV=cache,file,nis,dns,sys

 RES_WAIT
RES_WAIT parameter  ==  RES_WAIT=seconds:hostname
                    --  default: RES_WAIT="10:WWW.DeleGate.ORG"

 RES_CONF
RES_CONF parameter  ==  RES_CONF=URL
                    --  default: RES_CONF="file:/etc/resolv.conf"
                        or from registry (on Windows)

 RES_NS
RES_NS parameter    ==  RES_NS=nsList
            nsList  ==  dnsServ[,nsList]
           dnsServ  ==  dnsServer[//socksV5Host] | END.
                    --  default: depend on RES_CONF

 RES_AF
RES_AF parameter    ==  RES_AF=afOrder
            afOrder ==  46 | 64 | 4 | 6
                    --  default: 46

 RES_RR
RES_RR parameter    ==  RES_RR=HostList
                    --  default: RES_RR="*"

 RES_VRFY
RES_VRFY parameter  ==  RES_VRFY=""
                    --  default: none

 RES_DEBUG
RES_DEBUG parameter ==  RES_DEBUG=number
                    --  default: none

 ProtoList
PROTOLIST
       ProtoList  ==  [!]protoSpec[,ProtoList]
       protoSpec  ==  protocolName[/[portNumList][/methodList]]
    A ProtoList is a list of protocol names. Reserved name "*" means all of protocols. If "!" or "-" is prefixed, the protocol is excluded from the protocol list.

 HostList
HOSTLIST
        HostList  ==  [!][-iType]hostSpec[,HostList]
           iType  ==  {h|a|c|*}/[iType]
        hostSpec  ==  [{userList}@]hostSpec[/netMask]
        userList  ==  userNamePattern[,userNamePattern]*
        hostSpec  ==  hostNamePattern | hostAddrPattern
 userNamePattern  ==  [*]uname[*]
 hostNamePattern  ==  [*]hname[*]
 hostAddrPattern  ==  IPaddressPattern | IPrange
         netMask  ==  IPaddress | maskLength

 Substitution

 Parameter Substitution
PARAMETER SUBSTITUTION
 CFI and CFI script

CFI AND CFI SCRIPT


 Proxying by URL Redirection

PROXYING BY URL REDIRECTION


 Protocol Specific Issue and Examples
PROTOCOL SPECIFIC ISSUE AND EXAMPLES

Common Notation

    # delegated ...
    implies invoking DeleGate by super-user to use a privileged port number
    % delegated ...
    implies invoking DeleGate by non super-user
    firewall% delegated ...
    implies running DeleGate on a host belongs to your site and reachable to/from internet
    internal% delegated ...
    implies running DeleGate on a internal host in your site which is isolated from internet
    external% ...
    implies doing something on a host external to your site

 TCPrelay

TCPrelay


 UDPrelay

UDPrelay


 DGAuth server

DGAuth server


 PAM server

PAM server


 FTPxHTTP server

FTPxHTTP server


 YYsh server

YYsh server


 YYMUX server

YYMUX server


 multiplexed SOCKS/MASTER/PROXY over SockMux
SOCKMUX parameter*  ==  SOCKMUX=host:port:option[,option]*
            option  ==  acc | con | ssl
                    --  default: none
                    --  status: tentative

 SockMux configuration
SOXCONF parameter*  ==  SOXCONF=confSpec[,confSpec]*
                    --  default: none

 SockMux protocol

 SockMux server

SockMux server


 SockMux over HTTP
HTMUX parameter     ==  HTMUX=sv[:[hostList][:portList]]
                     |  HTMUX=cl:host:port
                     |  HTMUX=px:host:port
                    --  restriction: requires CAPSKEY
                    --  default: none

 Encrypted Capability List
CAPSKEY parameter*  ==  CAPSKEY=opaque
                    --  default: none

 Socks server

Socks server


 SOCKSTAP parameter
SOCKSTAP parameter*  ==  SOCKSTAP=ProtoList[:[dstHostList][:[srcHostList][:params]]]
                     --  default: none

 HTTP proxy/server

HTTP proxy/server


 HTTP Transfer Log Format

HTTP Transfer Log Format


 HTTPCONF parameter
HTTPCONF parameter  ==  HTTPCONF=what:conf

 FILETYPE
FILETYPE parameter  ==  FILETYPE=suffix:gopherType:altText:iconName:contentType
                    --  default: FILETYPE=".txt:0:TXT:text:text/plain"
                                 FILETYPE=...

 CGIENV
CGIENV parameter    ==  CGIENV=name[,name]*
                    --  default: CGIENV="*"

 MountOptions for HTTP-DeleGate
MountOptions for HTTP-DeleGate

 AUTH parameter for HTTP-DeleGate

AUTH parameters for HTTP-DeleGate


 Configuration of DeleGate by Users

Configuration of DeleGate by Users


 Server Side Include in SHTML files

Server Side Include in SHTML files


 ICP proxy/server

ICP proxy/server


 ICPCONF
ICPCONF parameter*  ==  ICPCONF={icpMaxima|icpConf}
         icpMaxima  ==  para:N|hitage:N|hitobjage:N|hitobjsize:N|timeout:N
           icpConf  ==  icpOptions:ProtoList:dstHostList:srcHostList
                    --  default: ICPCONF=para:2,hitage:1d,...

 FTP server

FTP proxy/server


 FTPCONF
FTPCONF parameter*  ==  FTPCONF=ftpControl[:{sv|cl}]
           ftpControl  ==  nopasv | noport | noxdc | rawxdc
                    --  default: none

 FTP Transfer Log Format

FTP Transfer Log Format


 Telnet proxy/server

Telnet proxy/server


 Telnet gateway to SSH server

SSH/Telnet gateway


 POP proxy

POP proxy


 IMAP proxy

IMAP proxy


 SMTP proxy/server

SMTP proxy/server


 SMTPCONF
SMTPCONF parameter* ==  SMTPCONF=what:conf
                    --  default: SMTPCONF=bgdatasize:64K

 SMTPGATE
SMTPGATE parameter  ==  SMTPGATE=dirPath
                    --  default: SMTPGATE='${ETCDIR}/smtpgate'

 NNTP proxy/server

NNTP proxy/server


 MountOptions for NNTP
MountOptions for NNTP

 NNTPCONF
NNTPCONF parameter* ==  NNTPCONF=what:conf
                    --  default: NNTPCONF=upact:600/300/120

LDAP proxy

Whois proxy

X proxy

Gopher proxy

SSL proxy

DNS (Domain Name System) proxy/server

DNSCONF parameter*  ==  DNSCONF=what:value

CU-SeeMe proxy

RESERVED NAMES

AF_LOCAL SOCKETS

CUSTOMIZATION

DEFENSE AGAINST ATTACKERS

ENCRYPTED CONFIGURATION

PLATFORM SPECIFIC ISSUE

GENTLE RESTART

FUNCTIONS Version 10 Specific

FILES

Acronyms SEE ALSO

AUTHOR

FEEDBACK

DISTRIBUTION

HELP [ help search decomp parts skeleton frame ]
DeleGate Version 9.9.10 + 10.0.0     Last change: September 28, 2014
--------- --------- --------- --------- --------- --------- --------- ---------