Chapter 4 - Advanced configuration

PLEASE NOTE

This Chapter is currently being reworked to match current IPS code. The old version was inaccurate and was therefore removed until a new version is ready. Please watch the IPS site for updated documentation in the near future.

4.1 – Platform Settings

Your IPS server application has a small number of settings valid for the application as a whole, these are called platform settings and do require a full IPS restart if changed. The settings are using to modify the way IPS start up and executes. You will find these settings in the config\ips.cfg configuration file.

4.1.1 – GLOBAL section

The GLOBAL section is the first section in the default configuration file and this section includes the settings in the table below:

Parameter

Description

Default1

Type

DisableConfigCheck2

Enabling this setting will skip the configuration consistency check done whenever IPS is started. This check can automatically find and is possible correct errors within your configuration.

"0" (False)

Optional

DisableObjectCreate2

Enabling this setting will skip the creation of WPS objects or Start Menu items for IPS.

"0" (False)

Optional

DisableConsoleStart2

Enabling this setting will skip the automatic start of a local IPS console process. The console can be started manually at a later time if needed.

"0" (False)

Optional

DisableLogArchiving2

IPS includes a feature which will automatically archive old log files when starting or restarting after a failure situation. If you don't want this archiving feature enable this setting.

"0" (False)

Optional

EnableEMXCompatibility2

If you need to run EMX based applications (OS/2 only) from within IPS you will have to enable this setting as there are a few limitations in the EMX runtime which require IPS to reduce its scaleability some.

"0" (False)

Optional

1Default is the value assumed by IPS when the parameter is missing from the configuration file.
2Any modification to the value of this parameter requires a restart.

4.1.2 – ADMIN section

The ADMIN section is used to configure the built in administrative service component. This component is among others used to server the IPS Console locally or remote. All keywords here have the same meaning as the identical ones in the normal service component sections.

Parameter

Description

Default1

Type

Address2

IP address of the interface the administration service should bind its port to. Leave blank for it to bind to all available local addresses.

Blank (Any address)

Optional

Port2

Port on which the administration service listens for connections on.

"4321"

Optional

ClientAddress

Client IP address and/or host name mask list to allow/deny connections from.

"!*"

Optional

DebugFlag

A number representing a bitmap of debug groups to enable for writing to the log file.

"0"

Optional

Host

Hostname assumed for this service, it is best if this is a valid DNS hostname.

-

Required

LogFlag

A number representing a bitmap of log groups to skip when writing to the log file.

"0"

Optional

Timeout

Any number of second which a client session can be inactive before it disconnected from the service.

"180"

Optional

Password

Password used by the various administrative clients to access this service. The password are stored here in clear text but are never sent over the Internet when a connection is opened.

-

Required

1Default is the value assumed by IPS when the parameter is missing from the configuration file.
2Any modification to the value of this parameter requires a restart.

4.1.3 – DEBUG section

IPS includes a very powerful system to trace down system problems which will help the developer, it should only be used when instructed to by IPS support as it will activate extensive logging which may affect system performance.

Parameter

Description

Default1

Type

Trace2

Enabling this setting will activate extensive debug trace logging.

"0" (False)

Optional

1Default is the value assumed by IPS when the parameter is missing from the configuration file.
2Any modification to the value of this parameter requires a restart.

4.1.4 – UPGRADE section

When new versions of IPS are installed this section provides the information needed by IPS to perform various automated tasks during the upgrade. Even the upgrade itself can be performed automatically from a upgrade server on the Internet.

Parameter

Description

Default1

Type

CurrentVersion

Automatically update field containing currently used IPS version.

Current IPS version2

Read only

CurrentBuild

Automatically update field containing currently used IPS build.

Current IPS build2

Read only

Auto

Not used3

-

-

Frequency

Not used3

-

-

Server

Not used3

-

-

1Default is the value assumed by IPS when the Parameter is missing from the configuration file.
2These values are automatically update by IPS itself and should not be changed manually.
3The automated upgrade service is not yet available.

PLEASE NOTE

This Chapter is currently being reworked to match current IPS code. The old version was inaccurate and was therefore removed until a new version is ready. Please watch the IPS site for updated documentation in the near future.

4.2 – Site Personalities



4.2.1 – Site Personality Settings



4.3 – Security



4.3.1 – Groups



4.3.2 – Accounts



4.3.3 – Object Access



4.4 – Virtual File System

PLEASE NOTE

This Chapter is currently being reworked to match current IPS code. The old version was inaccurate and was therefore removed until a new version is ready. Please watch the IPS site for updated documentation in the near future.

4.5 – Service Components

IPS – as an advanced server offering – supports multiple Internet standard protocols for its operation. The various protocols supported is implemented through a series of service components, one for each main protocol. Each defined service component has its own section in the site personality configuration file and you may have multiple services offering the same protocol support with different configurations within the same site personality as long as they are bound to different IP addresses and/or ports. All of these services has a set of common options as well as their own set of specific options. The common options are listed and described in the table below:

Parameter

Description

Default

Type

Address

IP address of the interface the service should bind its port to. Leave blank for it to bind to all available local addresses. The address should be specified as four decimal numbers separated with only a dot.

Blank (Any address)

Optional

Port

Port which this service should bind to and reply to connection attempts. Standard ports are best for most sites, but you may want to run services on other ports. Please keep in mind that many firewalls could block users for accessing services on non-standard ports.

Standard port for current Protocol setting:

"21" – FTP
"80" – HTTP
"143" – IMAP
"110" – POP
"25" – SMTP

Optional

Protocol

What kind of protocol support will the service provide, possible choices are:

"ftpd" – File Transfer Protocol
"httpd" – HyperText Transfer Protocol
"imap4d" – Internet Message Access Protocol
"pop3d" – Post Office Protocol
"smtpd" – Simple Mail Transfer Protocol

-

Required

ClientAddress

Which client addresses are allowed to access this service and which are not. Specify a list of address and/or FQDN masks to allow deny. The first matching mask is used.

* and ? wild-chars may be used and ! in front reverses the effect and deny access to the clients matching this mask.

"!*"

Optional

DebugFlag

A number representing a bitmap of debug groups to enable for writing to the log file. Keep in mind that any debug logging is of limited use unless you are tracking down a problem and they will generate a lot of disk activity.

Look for possible debug groups in the table below.

"0"

Optional

DisableReverse

Should every connections IP address be looked up in the DNS for logging and filtering purposes? If you disable these lookups you may for instance not use names as masks for the ClientAddress filtering.

"0" (False)

Optional

Host

The service name that the service will identify itself as to the client. This is should basically be the FQDN of the service you are hosting.

-

Required

LogFlag

A number representing a bitmap of log groups to skip when writing to the log file.

Look for possible log groups in the table below.

"0"

Optional

Timeout

Time in seconds the connection can be inactive before it is closed.

"180" – FTP
"300" – HTTP, POP and SMTP
"1800" – IMAP

Optional

CacheMaxCount

The maximum number of documents in the dynamic document cache at any time. (minimum: 4)

"32"

Optional

CacheMaxSize

The maximum total size i kBytes of all the documents in the dynamic document cache at any time. (minimum: 64)

"1024"

Optional

ClientPool

How many client session should IPS keep in a ready-to-run status at any time. (range: 1-99)

"1" – ADMIN
"8" – HTTP
"4" – FTP, IMAP, POP and SMTP

Optional

ClientStack

Size in kBytes of the memory stack for each client session. This parameter should only be modified by advanced users running very special solutions. (range: 16-1024)

"128"

Optional

PoolFillFreq

How often in ms should IPS attempt to fill the client pool. (range: 50-30000)

"250"

Optional

rxOnPass

Path of RexxHook called when the password for a guest session is received. Script should return 0 if okay, or a response to reject the log-in.

-

Optional

rxOnUser

Path of RexxHook called after a user name is received and a user file found. Script should return 0 if log-in are okay, a response to reject.

-

Optional

SendBufferSize

Size in kBytes of the memory buffer used for sending or receiving data from clients between each disk I/O operation. (range:16-4096, maximum: CacheMaxSize / CacheCount * 4)

"64"

Optional

LogLevel groups

The various values which make up a LogLevel setting for the various service types are listed in the table below:

LogLevel group1

Description

FTP

HTTP2

IMAP

POP

SMTP

1

User authentication

USER
PASS

Accepted connections
Ended sessions

-

APOP
USER
PASS

HELO

2

-

APPE
DELE
RETR
RNFR
RNTO
STOR

Rejected connections

-

DELE
RETR

MAIL
RCPT

4

-

CDUP
CWD
LIST
MLSD
NLST
XCUP
XCWD

-

-

LIST
STAT

DATA

8

-

MKD
RMD
XMKD
XRMD

-

-

RSET

RSET

16

-

MDTM
MLST
SIZE
TYPE

-

-

-

-

32

-

PASV
PORT
TYPE

-

-

-

-

64

-

PWD
SITE
SYST
XPWD

-

-

-

-

128

-

-

-

-

-

-

256

-

-

-

-

-

Remote delivery information

512

-

-

-

-

-

Local delivery information

1024

-

-

-

-

-

-

2048

-

-

-

-

-

Delivery error information

4096

-

-

-

-

-

-

1Add together the values to make up a LogLevel setting.
2HTTP service components also supports standardized logging

DebugLevel groups

The table below lists the different DebugLevel values used to make up a DebugLevel setting:

DebugLevel groups1

Description

1

Inbound data

2

Outbound data

4

Inbound buffer data

8

Outbound buffer data

16

System information data

1Add together the values to make up a DebugLevel setting.

4.5.1 – FTP Component

The File Transfer Protocol (FTP) component was the basis of the first version of IPS, it is used to transfer any type of documents between any FTP capable client and/or other FTP capable servers controlled by the same FTP client (Typically called FXP).

In addition to the common component parameters the FTP component includes the parameters listed in the table below:

Parameter

Description

Default

Type

RootDirectory

Basic root directory of FTPd. This value may be overridden by the account value. (VFS format)

"/"

Optional

MaxUserBandwidth

Maximum retrieve bandwidth for each normal user session.

"0"

Optional

MaxAnonBandwidth

Maximum retrieve bandwidth for each guest session.

"0"

Optional

TimeoutMax

Maximum time-out allowed to set with the SITE IDLE command.

"300"

Optional

WelcomeFile

Path of welcome greeting shown to the user before login. (OS format)

-

Required

HideIfNoAccess

Hide files and directories which the user has no access to from directory listings.

"0" (False)

Optional

MinFreeSpace

The minimum number of MBytes free on the disk required to allow incoming files.

"512"

Optional

DisableEA

Disable EA access system. (OS/2 only)

"0" (False)

Optional

DisableDircount

Disable display of subdirectory count.

"0" (False)

Optional

rxOnConnect

Path of RexxHook called when a new user connects. Script should return 0 if connection are okay, or a response if not.

-

Optional

rxOnCommand

Path of RexxHook called when each command is received before it is executed. Script should return 0 or a changed command line.

-

Optional

rxOnRetr

Path of RexxHook called before a file is sent to the user. Script should return 0 if the transfer are to proceed, and a response if it is rejected.

-

Optional

rxOnSite

Path of RexxHook called before executing internal SITE commands, this script could return 0 to allow internal execution of the command or it could reject it by returning an alternative response.

-

Optional

rxOnStor

Path of RexxHook called before a file is received from the user. Script should return 0 if the transfer are to proceed, and a response if it is rejected.

-

Optional


4.5.2 – HTTP Component

The HyperText Transfer Protocol (HTTP) component is used to transfer hypertext documents between the server (IPS) and any HTTP capable client – typically a web browser. These documents are typically public – but they doesn't need to be – and are what makes up the world wide web today.

4.5.3 – IMAP Component

The Internet Message Access Protocol (IMAP) component is still under development and will be included in later versions of IPS.

4.5.4 – POP Component

The Post Office Protocol (POP) component is exactly that – a post office. Messages received by IPS are stored in the users Inbox and the user can retrieve messages from this Inbox with any e-mail client using the POP protocol.

4.5.5 – SMTP Component

The Simple Mail Transfer Protocol (SMTP) component is the basis of all e-mail delivery handled by IPS. It receives messages send by other mail servers to your users as well as send messages from your users to other SMTP servers on the Internet.

PLEASE NOTE

This Chapter is currently being reworked to match current IPS code. The old version was inaccurate and was therefore removed until a new version is ready. Please watch the IPS site for updated documentation in the near future.

Jump to http://www.InetPowerServer.com/