|
|
FtpServerMBean documentation
Bean Description
>
List of attributes
>
List of operations
>
Attributes declaration
>
Operations declaration
Bean Description
Description : Server management
Type : net.sbbi.jafs.config.FtpServer
Domain : servers
ClassName : net.sbbi.jafs.management.FtpServerMBean
List of attributes
activeDownRangePort,
activeSessionsCount,
activeUpRangePort,
authenticationRealm,
closedMessage,
disclamerMessage,
loginMessage,
logoutMessage,
maxSessionsNumber,
maxSessionsNumberPerIP,
networkInterface,
open,
pasv,
pasvAllowFXP,
pasvDownRangePort,
pasvNATMappingsOnTheFly,
pasvUpRangePort,
pendingChanges,
reverseLookup,
serverFirewallPort,
serverPort,
serverRoot,
socketConnectTimeout,
SSLCertsConfName,
SSLDefaultProt,
SSLNeedCert,
SSLServer,
timeOutNotIdentified,
WANAccess,
warnClientsDuringShutdown
List of operations
applyChanges,
changePortsRange,
changeServerPort,
closeServer,
closeServerMsg,
deleteFileSystemEntry,
getAvailableCiphers,
getAvailableCommands,
getConfiguredCiphers,
getConfiguredCommands,
getConfiguredIPBlackListParsers,
getFileSystemEntries,
getIPBlackListParsers,
getUsers,
manageBlackList,
manageCipher,
manageCommand,
manageCommandSetting,
manageFileSystemEntry,
manageUser,
manageUserBindToFileSystem,
openServer,
stop
Attributes declaration
| pendingChanges |
|
| Description | Flag to indicate if some changes currently require a call to the "applyChanges" operation to be validated |
|
| Type | boolean |
|
| Writeable | false |
| open |
|
| Description | Tells if server is open |
|
| Type | java.lang.Boolean |
|
| Writeable | false |
| serverPort |
|
| Description | The server listening port |
|
| Type | java.lang.Integer |
|
| Writeable | false |
| serverFirewallPort |
|
| Description | The server port on the firewall |
|
| Type | java.lang.Integer |
|
| Writeable | false |
| reverseLookup |
|
| Description | Search the computer name of connecting clients |
|
| Type | java.lang.Boolean |
|
| Writeable | true |
| timeOutNotIdentified |
|
| Description | The connection timeout for non identified clients sessions in seconds |
|
| Type | int |
|
| Writeable | true |
| maxSessionsNumber |
|
| Description | The maximum number of session on this server |
|
| Type | int |
|
| Writeable | true |
| maxSessionsNumberPerIP |
|
| Description | The maxmimum number of session per IP address |
|
| Type | int |
|
| Writeable | true |
| warnClientsDuringShutdown |
|
| Description | Warn connected clients that their transferts is stopping due to server shutdown |
|
| Type | java.lang.Boolean |
|
| Writeable | true |
| activeSessionsCount |
|
| Description | The number of active sessions on the server |
|
| Type | int |
|
| Writeable | false |
| SSLNeedCert |
|
| Description | Flag to require a signed certificate for every SSL/TLS connection on the server |
|
| Type | java.lang.Boolean |
|
| Writeable | true |
| SSLCertsConfName |
|
| Description | This let you define what server certificate/CA allowed certs/CRL check config entry name defined in the service configuration file must be used with the server. A null value will take the first config entry |
|
| Type | java.lang.String |
|
| Writeable | true |
| SSLDefaultProt |
|
| Description | This is the default protocol type that will be used for new encrypted connections on an implicit server, the values depends of your JRE but usually SSL or TLS works |
|
| Type | java.lang.String |
|
| Writeable | true |
| SSLServer |
|
| Description | Setting to define if the server only accepts incoming secure sockets (true) or not (false) |
|
| Type | java.lang.Boolean |
|
| Writeable | true |
| authenticationRealm |
|
| Description | The server JAAS authentication module, the value must correspond to a defined JAAS configuration entry |
|
| Type | java.lang.String |
|
| Writeable | true |
| disclamerMessage |
|
| Description | The disclamer message returned to client after an authentification, use \n for line breaks |
|
| Type | java.lang.String |
|
| Writeable | true |
| loginMessage |
|
| Description | The first message returned to clients, use \n for line breaks |
|
| Type | java.lang.String |
|
| Writeable | true |
| logoutMessage |
|
| Description | The logout message, use \n for line breaks |
|
| Type | java.lang.String |
|
| Writeable | true |
| networkInterface |
|
| Description | The server network interface identifier, WARNING : you must call the "applyChanges" operation to validate the change. |
|
| Type | java.lang.String |
|
| Writeable | true |
| closedMessage |
|
| Description | The message returned to clients when the server is closed, use \n for line breaks |
|
| Type | java.lang.String |
|
| Writeable | true |
| serverRoot |
|
| Description | The server root, WARNING : you must call the "applyChanges" operation to validate the change. |
|
| Type | java.lang.String |
|
| Writeable | true |
| WANAccess |
|
| Description | Allow clients coming from the WAN (internet) to have access on the server |
|
| Type | java.lang.Boolean |
|
| Writeable | true |
| pasv |
|
| Description | Allows or not PASV command use for clients, WARNING : you must call the "applyChanges" operation to validate the change. |
|
| Type | java.lang.Boolean |
|
| Writeable | true |
| pasvAllowFXP |
|
| Description | Allows FXP transferts, setting this to true can create potential security issues in PASV mode. |
|
| Type | java.lang.Boolean |
|
| Writeable | true |
| socketConnectTimeout |
|
| Description | The timeout for a client in seconds to create the data connection. |
|
| Type | int |
|
| Writeable | true |
| pasvNATMappingsOnTheFly |
|
| Description | When set to true, if a NAT mapper is defined in the network interface used by the server, the ports will be open on the router after a PASV command, if set to false all ports in the passive ports range will be opened during server startup, WARNING : you must call the "applyChanges" operation to validate the change. |
|
| Type | java.lang.Boolean |
|
| Writeable | true |
| pasvUpRangePort |
|
| Description | Passive mode available ports stop range |
|
| Type | int |
|
| Writeable | false |
| pasvDownRangePort |
|
| Description | Passive mode available ports start range |
|
| Type | int |
|
| Writeable | false |
| activeUpRangePort |
|
| Description | Active mode available source ports stop range |
|
| Type | java.lang.Integer |
|
| Writeable | false |
| activeDownRangePort |
|
| Description | Active mode available source ports start range |
|
| Type | java.lang.Integer |
|
| Writeable | false |
Operations declaration
| applyChanges |
|
| Description | This operation validates all changes who needs a server restart. |
|
| Return type | void |
|
| Impact | ACTION |
| changePortsRange |
|
| Description | Change the passive and active mode available ports range, WARNING : you must call the "applyChanges" operation to validate the change. |
|
| Return type | void |
|
| Impact | ACTION |
|
| Parameters |
| pasvDownRange | type: int | The new passive mode available ports start range |
| pasvUpRange | type: int | The new passive mode available ports stop range |
| activeDownRange | type: int | The new active mode available source ports start range, 0 for a free source port |
| activeUpRange | type: int | The new active mode available source ports stop range, 0 for a free source port |
|
| changeServerPort |
|
| Description | Changes the server listening port during runtime. |
|
| Return type | void |
|
| Impact | ACTION |
|
| Parameters |
| port | type: int | The new server listening port |
| firewallPort | type: int | The server firewall/router port that will be mapped to the server port, only used if UPNP is enabled |
|
| closeServer |
|
| Description | Closes the server |
|
| Return type | void |
|
| Impact | ACTION |
| closeServerMsg |
|
| Description | Closes the server with a given message |
|
| Return type | void |
|
| Impact | ACTION |
|
| Parameters |
| message | type: java.lang.String | The closed message |
| closeSessions | type: java.lang.Boolean | A boolean value to close active sessions (true) or not (false) |
|
| deleteFileSystemEntry |
|
| Description | Deletes a server file system configuration entry, return true if the config entry is removed, false otherwise |
|
| Return type | boolean |
|
| Impact | ACTION |
|
| Parameters |
| entryId | type: java.lang.String | The id of the master configuration entry |
| path | type: java.lang.String | The path of the config entry to be removed from the master configuration entry, insert an empty value if you want to delete the whole master configuration entry |
|
| getAvailableCiphers |
|
| Description | Returns a list of available ciphers for SSL or TLS sockets on the server. |
|
| Return type | java.lang.String[] |
|
| Impact | INFO |
| getAvailableCommands |
|
| Description | Lists all the available FTP commands or features class names. |
|
| Return type | java.lang.String[] |
|
| Impact | INFO |
|
| Parameters |
| type | type: java.lang.String | The FTP commands type, C for basic FTP commands, F for features. |
|
| getConfiguredCiphers |
|
| Description | Lists the configured SSL/TLS ciphers on the server |
|
| Return type | java.lang.String[] |
|
| Impact | INFO |
| getConfiguredCommands |
|
| Description | Lists all the installed FTP commands or features names on the server. |
|
| Return type | net.sbbi.jafs.config.CommandConfig[] |
|
| Impact | INFO |
|
| Parameters |
| type | type: java.lang.String | The FTP commands type, C for basic FTP commands, F for features. |
|
| getConfiguredIPBlackListParsers |
|
| Description | Returns a list of all the configured IP blacklist parser entries on the server. |
|
| Return type | net.sbbi.jafs.config.BlackListConfig[] |
|
| Impact | INFO |
| getFileSystemEntries |
|
| Description | Retreive the server file system configuration entries |
|
| Return type | net.sbbi.jafs.config.FileSystemRights[] |
|
| Impact | INFO |
| getIPBlackListParsers |
|
| Description | Lists all the available IP block lists parsers class names. |
|
| Return type | java.lang.String[] |
|
| Impact | INFO |
| getUsers |
|
| Description | Retreive the server user config entries |
|
| Return type | net.sbbi.jafs.config.User[] |
|
| Impact | INFO |
| manageBlackList |
|
| Description | IP block lists management |
|
| Return type | boolean |
|
| Impact | ACTION |
|
| Parameters |
| operation | type: java.lang.String | The operation type, A to add, D to delete, U to update the entry |
| name | type: java.lang.String | The IP blocklist configuration entry name |
| location | type: java.lang.String | The location of the list as an URL |
| parserClassName | type: java.lang.String | The list parser class name (can be retreived via the getIPBlackListParsers method) |
| rescantime | type: java.lang.Integer | The list rescan time in hours |
|
| manageCipher |
|
| Description | Adds a SSL/TLS cipher to the allowed server list. |
|
| Return type | boolean |
|
| Impact | ACTION |
|
| Parameters |
| operationType | type: java.lang.String | The operation type, A to add and D to delete. |
| cipherName | type: java.lang.String | The cipher name to add, I.E SSL_RSA_WITH_RC4_128_MD5. Use the listCiphers operation to retreive the names of available ciphers for the JRE. |
|
| manageCommand |
|
| Description | This operation allows you to add/remove/update FTP commands or features implementations, WARNING : you must call the "applyChanges" operation to validate the change. |
|
| Return type | boolean |
|
| Impact | ACTION |
|
| Parameters |
| operation | type: java.lang.String | The operation type, A to add, D to delete, U to update. |
| type | type: java.lang.String | The command type, C for a generic FTP command, F for an FTP feature. |
| commandName | type: java.lang.String | The FTP protocol command name (ABOR,RETR,PORT...), this is the name that will be used by FTP clients to communicate with the server. |
| className | type: java.lang.String | The command class name, implementing the net.sbbi.jafs.commands.CommandInterface interface for a generic FTP command or the net.sbbi.jafs.commands.FeatCommandInterface interface. A list of available class names can be obtained with the "listAvailableCommands" operation. |
| location | type: java.lang.String | The java binaries location (http://www.myhost.com/myCode.jar), provide a null value if the binaries are in the local classpath. |
|
| manageCommandSetting |
|
| Description | This operation allows you to add/remove/update FTP commands or features implementations settings, WARNING : you must call the "applyChanges" operation to validate the change. |
|
| Return type | boolean |
|
| Impact | ACTION |
|
| Parameters |
| operation | type: java.lang.String | The operation type, A to add, D to delete, U to update. |
| type | type: java.lang.String | The command type, C for a generic FTP command, F for an FTP feature. |
| commandName | type: java.lang.String | The FTP protocol command name (ABOR,RETR,PORT...), this is the name that will be used by FTP clients to communicate with the server. |
| settingName | type: java.lang.String | The setting name. |
| settingValue | type: java.lang.String | The setting value. |
|
| manageFileSystemEntry |
|
| Description | Adds or modify a file system configuration entry |
|
| Return type | void |
|
| Impact | ACTION |
|
| Parameters |
| entryId | type: java.lang.String | The entry identifier |
| readFile | type: boolean | Rights to read a file |
| overwriteFile | type: boolean | Rights to overwrite an existing file |
| deleteFile | type: boolean | Rights to delete a file |
| renameFile | type: boolean | Rights to rename a file |
| ratioDisabled | type: boolean | Disable the ratio for files download even if the user account has ratio set on. |
| createFile | type: boolean | Rights to create a file |
| hiddenFile | type: boolean | Rights to access hidden file |
| deleteDirectory | type: boolean | Rights to delete a directory |
| createDirectory | type: boolean | Rights to create a directory |
| renameDirectory | type: boolean | Rights to rename a directory |
| listDirectoryContent | type: boolean | Rights to list the directory content |
| path | type: java.lang.String | The path on the server where the rights should be applied I.E : /mydir , /, /mydir/myfile.txt, note that the path does not include the server root path ( I.E /var/ftp/pub ) |
| fileType | type: java.lang.String | The type of files extensions allowed to be uploaded in the defined path, delimited by commas I.E txt,jpeg,mp3. Insert an empty value to allow all type of files. |
|
| manageUser |
|
| Description | Manage server users |
|
| Return type | boolean |
|
| Impact | ACTION |
|
| Parameters |
| operationType | type: java.lang.String | The operation type, A to add, D to delete( provide the username ), U to update user settings, return true or false according to operation success |
| userName | type: java.lang.String | The user name ( can be a regular expression ) for this user config entry. |
| ipAddress | type: java.lang.String | The IP address ( 201.0 , 201.0.0.1 ... ) for user access restriction, emtpy value for no restrictions |
| account | type: java.lang.Boolean | Defines if this user has an account or not, if set to true, the byte credits will be assigned to the user name, if set to false, it will be assigned to the client IP. |
| maxConnectionsNumber | type: int | The maximum number of connections allowed for this user, -1 for infinite value. |
| timeout | type: int | The connection timeout in seconds |
| maxUploadRate | type: int | The user maximum allowed upload rate in KByte/s, -1 for an unlimited value |
| maxDownloadRate | type: int | The user maximum allowed download rate in KByte/s, -1 for an unlimited value |
| isRatio | type: java.lang.Boolean | Enables or not the byte credits use for file downloads. |
| ratioScale | type: int | The amount ratio of bytes given when ratio enabled, 2 mean that for each byte uploaded 2 bytes will be given for download. |
| baseCredits | type: long | The base credits amount ( in bytes ) available to the user the first time it connects |
| homeDir | type: java.lang.String | The user home directory, set this with a path if you do not want to give access to the server root for the given user. You can use the $USERHOME and $UNRE:$regexp:$UNRE keywords to evaluate the path with the provided session user name. |
| secureControlTransport | type: java.lang.String | Provide "true" if the user require a secure control connection, "false" if secure control connection is forbidden, null or "" value for ftp session choice. |
| secureDataTransport | type: java.lang.String | Provide "true" if the user require a secure data connection, "false" if secure data connection is forbidden, null or "" value for ftp session choice. |
|
| manageUserBindToFileSystem |
|
| Description | Binds or unbind a user to a file system configuration entry |
|
| Return type | boolean |
|
| Impact | ACTION |
|
| Parameters |
| operation | type: java.lang.String | The operation type, A to add a bind, D to delete it |
| userName | type: java.lang.String | The username ( can be a regular expression ) to bind or to unbind |
| entryId | type: java.lang.String | The file system configuration entry id |
|
| openServer |
|
| Description | Opens the server |
|
| Return type | void |
|
| Impact | ACTION |
| stop |
|
| Description | Stops the server and removes it from the administration console |
|
| Return type | void |
|
| Impact | ACTION |
|