Intelligent Pack: Configuring
From CFTP
This explains configuration for the latest Version 1.13
The plug-in is configured in the file conf/beans.xml located in your server's home directory.
Contents |
Control Connection
Class name IntelControlConnection
<bean id="controlConnection" class="com.coldcore.coloradoftp.plugin.intellipack.connection.IntelControlConnection"... <constructor-arg index="0" value="8192"/> </bean>
Properties you may apply:
timeout
User inactivity timeout in seconds after log in. User will be disconnected if inactive for too long. By default it is set to 0 – no timeout.
loginTimeout
User inactivity timeout in seconds prior to log in. User will be disconnected if inactive for too long. By default it is set to 0 – no timeout.
As this class extends GenericControlConnection it also inherits its properties: sleep, bufferSize.
Data Connection
Class name IntelDataConnection
<bean id="dataConnection" class="com.coldcore.coloradoftp.plugin.intellipack.connection.IntelDataConnection"... <constructor-arg index="0" value="8192"/> </bean>
Properties you may apply:
timeout
User inactivity timeout in seconds. Data connection will be aborted if no data transferred for too long. By default it is set to 0 – no timeout.
localIpRegexp
Regular expression to determine if a connection is Local or Remote based on its IP address. Any connection with the IP address matching this regular expression will be considered as Local Connection (inside your local network), and as Remote Connection otherwise (outside of your local network). By default it is set to 192.168.* – all addresses starting with 192.168.
totalSpeedLocal
Data transfer speed limit to apply to all Local Connections together (bytes/sec). FTP server will restrict its traffic on your network card serving local clients so that the traffic will not go beyond this value. By default it is set to 0 – no limit.
totalSpeedRemote
Data transfer speed limit to apply to all Remote Connections together (bytes/sec). FTP server will restrict its traffic on your network card serving remote clients so that the traffic will not go beyond this value. By default it is set to 0 – no limit.
In case if you are using a singe network card for Local and Remote Connections then the total traffic FTP server may produce on your network card will be the sum of Local and Remote limits.
As this class extends GenericDataConnection it also inherits its properties: sleep, bufferSize.
Control Connector
Class name IntelControlConnector
<bean id="controlConnector" class="com.coldcore.coloradoftp.plugin.intellipack.connection.IntelControlConnector"> </bean>
Properties you may apply:
maxConnections
Limit on simultaneously open control connections. This is the amount of users FTP server may handle, no new control connections will be allowed once this limit is reached (your FTP server will print a message and disconnect an incoming connection). By default it is set to 0 – no limit.
connectionsPerHost
Limit on simultaneously open control connection that have the same IP address. This is the amount of users FTP server may handle that come from the same host (machine), no new control connections will be allowed from the host the once this limit is reached (your FTP server will print a message and disconnect an incoming connection). Although this is required to prevent one user from transferring many files in parallel leaving no traffic for others, it is not recommended to set the limit, as two users may use the same network gateway and will have the same IP address, this plug-in will think that this is the same user. By default it is set to 0 – no limit.
ipMap
This map allows or forbids connections based on IP addresses. Key is a regular expression of an IP address and a value is a Boolean (true to allow, false to forbid). Every new connection IP address will be compared with every key in the map until the first match is found. If the value for that key is TRUE then the connection will be accepted by the FTP server, otherwise a message will be printed and the connection will be terminated.
As this class extends GenericControlConnector it also inherits its properties: sleep, port.
File Command Wrapper
Class name IntelFileCommandWrapper
<bean id="storCommand"
class="com.coldcore.coloradoftp.plugin.intellipack.command.IntelFileCommandWrapper"...
<constructor-arg index="0">
<bean class="com.coldcore.coloradoftp.command.impl.ftp.StorCommand"...
</constructor-arg>
<property name="maxDataConnections" value="400"/>
</bean>
Properties you may apply:
constructor
Pass an existing FTP command you wish to wrap.
maxDataConnections
Limit simultaneous open data connection. This is required to prevent your system running out of file descriptors and to have reasonable traffic per user. It is recommended to wrap any FTP command that might create a new data connection. By default it is set to 0 – no limit.
PASV Command
Class name IntelPasvCommand
<bean id="pasvCommand"
class="com.coldcore.coloradoftp.plugin.intellipack.command.IntelFileCommandWrapper"...
<constructor-arg index="0">
<bean class="com.coldcore.coloradoftp.plugin.intellipack.command.IntelPasvCommand"...
<property name="localIp" value="192.168.0.1"/>
<property name="remoteIp" value="87.192.164.15"/>
</bean>
</constructor-arg>
<property name="maxDataConnections" value="400"/>
</bean>
Properties you may apply:
localIpRegexp
This property is not displayed in the example. It defines a regular expression to determine if connection is Local or Remote based on its IP address. Any connection with the IP address matching this regular expression will be considered as Local Connection (inside your local network), and as Remote Connection otherwise (outside of your local network). This property must be the same as in localIpRegexp for Data Connection (IntelDataConnection) described earlier. By default it is set to 192.168.* – all addresses starting with 192.168.
localIp
Server IP address for incoming Local Data Connections (inside your local network). FTP client will attempt to connect to this address for the next file transfer operation.
remoteIp
Server IP address for incoming Remote Data Connections (outside of your local network). FTP client will attempt to connect to this address for the next file transfer operation.
You may set the same server IP address for both Local and Remote Connections.
Return to Plug-in: Intelligent Pack