Controller: /nodeworx/ftp
=========================
:Required Permissions: FTP
Action: ``autoRestart``
-----------------------
:Added in Version: 4.7.0-339
:Description: Set the FTP server auto-restart status.
Input Parameters
^^^^^^^^^^^^^^^^^
.. list-table::
:widths: auto
:header-rows: 1
* - Name
- Type
- Required?
- Example Values
- Default Values
- Notes
* - ``ftp_autorestart``
- integer
- No*
- 1, 0
- 0
- With this option on you can have FTP restarted automatically if FTP goes down unexpectedly.
* - ``cascade_to_nodes``
- integer
- No
- 1
-
- Selecting this option causes the action to be replayed on all nodes of the cluster automatically, as if you had logged in to each node manually
\* indicates that it's actually required, but probably already has a valid default value.
Action: ``fail``
----------------
:Added in Version: 4.7.0-339
:Description: Magic function - test for failure mechanism.
Action: ``isRunning``
---------------------
:Added in Version: 4.7.0-339
:Description: Checks if the service is running or not.
Sample Output
^^^^^^^^^^^^^
.. code-block::
array (
'status' => 0,
'payload' => true,
'reply_code' => 205,
)
Action: ``isRunningOnNode``
---------------------------
:Added in Version: 4.7.0-339
:Description: Checks if the service is running on a specific node (Clustering only).
Input Parameters
^^^^^^^^^^^^^^^^^
.. list-table::
:widths: auto
:header-rows: 1
* - Name
- Type
- Required?
- Example Values
- Default Values
- Notes
* - ``node_id``
- string
- No*
-
-
-
\* indicates that it's actually required, but probably already has a valid default value.
Action: ``killSessions``
------------------------
:Added in Version: 4.8.0-393
:Description: Kill ftp sessions.
Input Parameters
^^^^^^^^^^^^^^^^^
.. list-table::
:widths: auto
:header-rows: 1
* - Name
- Type
- Required?
- Example Values
- Default Values
- Notes
* - ``sessions``
- struct (integer)
- Yes
-
-
-
Action: ``listFtpSessions``
---------------------------
:Added in Version: 4.8.0-393
:Description: List Ftp Sessions.
Sample Output
^^^^^^^^^^^^^
.. code-block::
array (
'status' => 0,
'payload' =>
array (
),
'reply_code' => 205,
)
Action: ``listGeneralName``
---------------------------
:Added in Version: 4.7.0-339
:Description: Lists the "normal" name - ie "web server" instead of "httpd".
Sample Output
^^^^^^^^^^^^^
.. code-block::
array (
'status' => 0,
'payload' => '##LG_FTPSERVER##',
'reply_code' => 205,
)
Action: ``listPortNumbers``
---------------------------
:Added in Version: 4.7.0-339
:Description: Lists a string of the port numbers that this service uses, comma-seperated.
Sample Output
^^^^^^^^^^^^^
.. code-block::
array (
'status' => 0,
'payload' => '21, 24',
'reply_code' => 205,
)
Action: ``listPortNumbersArray``
--------------------------------
:Added in Version: 4.7.0-339
:Description: Lists array of port numbers and ranges that this service uses.
Sample Output
^^^^^^^^^^^^^
.. code-block::
array (
'status' => 0,
'payload' =>
array (
0 => 21,
1 => 24,
),
'reply_code' => 205,
)
Action: ``listRequiredPermissions``
-----------------------------------
:Added in Version: 4.7.0-339
:Description: Lists an array of permissions required to control the service.
Sample Output
^^^^^^^^^^^^^
.. code-block::
array (
'status' => 0,
'payload' =>
array (
0 => 'FTP',
),
'reply_code' => 205,
)
Action: ``listServiceInfo``
---------------------------
:Added in Version: 4.7.0-339
:Description: Lists the service name, ports, page, and status.
Sample Output
^^^^^^^^^^^^^
.. code-block::
array (
'status' => 0,
'payload' =>
array (
'id' => 'proftpd',
'name' => '##LG_FTPSERVER##',
'ports' => '21, 24',
'page' => '/nodeworx/ftp',
'ctrl' => '/nodeworx/ftp',
'is_running' => 1,
),
'reply_code' => 205,
)
Action: ``listServiceName``
---------------------------
:Added in Version: 4.7.0-339
:Description: Lists the service name - ie "httpd" instead of "web server".
Sample Output
^^^^^^^^^^^^^
.. code-block::
array (
'status' => 0,
'payload' => 'proftpd',
'reply_code' => 205,
)
Action: ``listServicePage``
---------------------------
:Added in Version: 4.7.0-339
:Description: Lists the page that controls the service.
Sample Output
^^^^^^^^^^^^^
.. code-block::
array (
'status' => 0,
'payload' => '/nodeworx/ftp',
'reply_code' => 205,
)
Action: ``queryAutoRestart``
----------------------------
:Added in Version: 5.1.0-838
:Description: Displays the information available to the action "autoRestart".
Sample Output
^^^^^^^^^^^^^
.. code-block::
array (
'status' => 0,
'payload' =>
array (
'ftp_autorestart' => '0',
),
'reply_code' => 205,
)
Action: ``queryEditConf``
-------------------------
:Added in Version: 5.1.0-838
:Description: Displays the information available to the action "editConf".
Sample Output
^^^^^^^^^^^^^
.. code-block::
array (
'status' => 0,
'payload' =>
array (
'file' => '/etc/proftpd.conf',
'file_content' => '####
## InterWorx-CP Proftpd config
####
##
# Global Environment
##
ServerName "InterWorx-CP :: FTP Server"
ServerType standalone
ServerIdent on "FTP Server Ready"
PassivePorts 50000 51000
ListOptions -a
DefaultServer on
DeferWelcome on
SyslogLevel debug
UseReverseDNS off
UseFtpUsers off
IdentLookups off
WtmpLog off
ScoreboardFile /var/run/proftpd/proftpd-scoreboard
DisplayLogin /etc/motd
SetEnv TZ :/etc/localtime
PidFile /var/run/proftpd/proftpd.pid
##
# Basic Defaults
##
Port 21
Umask 022
##
# Timeouts
##
TimeoutLogin 120
TimeoutIdle 600
TimeoutNoTransfer 900
TimeoutStalled 3600
TimeoutSession 0
##
# security stuff
##
MaxInstances 30
RootLogin off
##
# The user/group we run as
##
User proftpd
Group proftpd
##
# Logging formats
##
TransferLog NONE
LogFormat default "%h %l %u %t \\"%m %f\\" %s %b"
LogFormat auth "%v [%P] %h %t \\"%r\\" %s"
LogFormat xfer "%h %l %u %t \\"%m %f\\" %s %b"
LogFormat byte "%u %b"
## system log
SystemLog /var/log/proftpd/auth.log
##
# Global settings
##
##
# Basic stuff
##
DisplayLogin welcome.msg
DisplayChdir readme
ShowSymlinks on
AllowOverwrite on
TimesGMT off
AuthOrder mod_sql.c mod_auth_pam.c mod_auth_unix.c
##
# File upload/download resume
##
AllowRetrieveRestart on
AllowStoreRestart on
##
# SQL Authentication
##
SQLAuthenticate users*
SQLConnectInfo iworx_ftp@127.0.0.1:2307 iworx_ftp gQ74Q4Oo9QHz
SQLAuthTypes bcrypt Crypt
SQLUserWhereClause "1"
SQLMinUserUID 500
SQLMinUserGID 500
SQLDefaultUID 65533
SQLDefaultGID 65533
CreateHome off
SQLUserInfo users username password uid gid homedir shell
SQLGroupInfo groups groupname gid members
##
# Security stuff
##
MaxLoginAttempts 3
RequireValidShell off
MaxClients 25
## chroot everyone
DefaultRoot ~ !wheel
## hide root\'s stuff
HideUser root
HideGroup root
HideGroup wheel
##
# Logging
##
## xfer log
ExtendedLog /var/log/proftpd/xfer.log READ,WRITE xfer
SFTPEngine on
SFTPLog /var/log/proftpd/sftp.log
ServerIdent off
# Configure the server to listen on the normal SSH2 port, port 22
Port 24
# Configure both the RSA and DSA host keys, using the same host key
# files that OpenSSH uses.
HostKeyGroup ssh_keys
SFTPHostKey /etc/ssh/ssh_host_rsa_key
#SFTPHostKey /etc/ssh/ssh_host_dsa_key
# Configure the file used for comparing authorized public keys of users.
SFTPAuthorizedUserKeys file:~/.sftp/authorized_keys
# Enable compression
SFTPCompression delayed
# Allow the same number of authentication attempts as OpenSSH.
#
# It is recommended that you explicitly configure MaxLoginAttempts
# for your SSH2/SFTP instance to be higher than the normal
# MaxLoginAttempts value for FTP, as there are more ways to authenticate
# using SSH2.
MaxLoginAttempts 6
TLSEngine on
TLSLog /var/log/proftpd/tls.log
TLSProtocol SSLv23 # this selects the latest crypt version
TLSOptions NoSessionReuseRequired # this is REALLY important for WinClients
# Are clients required to use FTP over TLS when talking to this server?
TLSRequired off
# Server\'s certificate
TLSRSACertificateFile /etc/pki/tls/certs/proftpd.pem
TLSRSACertificateKeyFile /etc/pki/tls/certs/proftpd.pem
# CA the server trusts
TLSCACertificateFile /etc/pki/tls/certs/proftpd.pem
# Authenticate clients that want to use FTP over TLS?
TLSVerifyClient off
',
),
'reply_code' => 205,
)
Action: ``queryServerOptions``
------------------------------
:Added in Version: 5.1.0-838
:Description: Displays the information available to the action "serverOptions".
Sample Output
^^^^^^^^^^^^^
.. code-block::
array (
'status' => 0,
'payload' =>
array (
'maxinstances' => '30',
'maxclients' => '25',
'maxclientsperuser' => '0',
'timeoutlogin' => '120',
'timeoutidle' => '600',
'timeoutnotransfer' => '900',
'timeoutstalled' => '3600',
'timeoutsession' => '0',
'maxloginattempts' => '3',
'tlsrequired' => '0',
'showsymlinks' => '1',
'allowretrieverestart' => '1',
'allowstorerestart' => '1',
),
'reply_code' => 205,
)
Action: ``querySftpOptions``
----------------------------
:Added in Version: 5.1.0-838
:Description: Displays the information available to the action "sftpOptions".
Sample Output
^^^^^^^^^^^^^
.. code-block::
array (
'status' => 0,
'payload' =>
array (
'port' => '24',
'maxloginattempts' => '6',
'sftpengine' => '1',
),
'reply_code' => 205,
)
Action: ``reroute``
-------------------
:Added in Version: 4.7.0-339
:Description: Action to re-route from the current controller to a different one.
Input Parameters
^^^^^^^^^^^^^^^^^
.. list-table::
:widths: auto
:header-rows: 1
* - Name
- Type
- Required?
- Example Values
- Default Values
- Notes
* - ``controller``
- string
- Yes
- Index, Overview, Users, Lang, Apikey, Plugins, Twofactorauth, Notice, Siteworx, Shell, Packages, Backup, Import, Softaculous, Reseller, ResellerPackages, ResellerBandwidthhistory, Http, Phpextensions, Ftp, Sshd, MailMta, MailSmtp, MailSmtp2, MailSend, MailMda, MailMsa, MailDovecot, MailSpam, MailVirus, MailMailman, MailQueue, Mysql, MysqlRemote, MysqlPhpmyadmin, Dns, DnsZone, DnsRecord, DnsSync, Nfs, NfsExport, NfsMount, Health, Cron, Firewall, Ssl, Logs, Settings, Updates, Rrd, ...
-
-
Action: ``restart``
-------------------
:Added in Version: 4.7.0-339
:Description: Restart the service.
Input Parameters
^^^^^^^^^^^^^^^^^
.. list-table::
:widths: auto
:header-rows: 1
* - Name
- Type
- Required?
- Example Values
- Default Values
- Notes
* - ``cascade_to_nodes``
- integer
- No
- 1
-
- Selecting this option causes the action to be replayed on all nodes of the cluster automatically, as if you had logged in to each node manually
Action: ``restartOnNode``
-------------------------
:Added in Version: 4.7.0-339
:Description: Restarts the service on a specific node (Clustering only).
Input Parameters
^^^^^^^^^^^^^^^^^
.. list-table::
:widths: auto
:header-rows: 1
* - Name
- Type
- Required?
- Example Values
- Default Values
- Notes
* - ``node_id``
- string
- No*
-
-
-
\* indicates that it's actually required, but probably already has a valid default value.
Action: ``rrdGraph``
--------------------
:Added in Version: 4.7.0-339
:Description: Set the FTP connections RRD graph display in the web interface.
Input Parameters
^^^^^^^^^^^^^^^^^
.. list-table::
:widths: auto
:header-rows: 1
* - Name
- Type
- Required?
- Example Values
- Default Values
- Notes
* - ``rrd``
- integer
- No*
- 1, 0
- 0
- Use the dropdown to turn the FTP server activity graph on or off
\* indicates that it's actually required, but probably already has a valid default value.
Action: ``serverOptions``
-------------------------
:Added in Version: 4.7.0-339
:Description: Update FTP server settings.
Input Parameters
^^^^^^^^^^^^^^^^^
.. list-table::
:widths: auto
:header-rows: 1
* - Name
- Type
- Required?
- Example Values
- Default Values
- Notes
* - ``maxinstances``
- integer
- No*
-
- 30
- Sets the maximum number of child processes to be spawned
* - ``maxclients``
- integer
- No*
-
- 25
- The total number of FTP clients allowed to connect to the FTP server.
* - ``maxclientsperuser``
- integer
- No*
-
- 0
- The total number of FTP clients allowed to connect from a given user id.
* - ``timeoutlogin``
- integer
- No*
-
- 120
- Sets the login timeout
* - ``timeoutidle``
- integer
- No*
-
- 600
- Sets the idle timeout
* - ``timeoutnotransfer``
- integer
- No*
-
- 900
- Sets the connection without transfer timeout
* - ``timeoutstalled``
- integer
- No*
-
- 3600
- Sets the timeout on stalled downloads
* - ``timeoutsession``
- integer
- No*
-
- 0
- Sets a timeout for an entire session
* - ``maxloginattempts``
- integer
- No*
-
- 3
- Sets how many password attempts are allowed before disconnection
* - ``tlsrequired``
- integer
- No*
- 1, 0
- 0
- Toggle whether FTPS (secure FTP) is required on this server
* - ``showsymlinks``
- integer
- No*
- 1, 0
- 1
- Toggle the display of symlinks
* - ``allowretrieverestart``
- integer
- No*
- 1, 0
- 1
- Allow clients to resume uploads
* - ``allowstorerestart``
- integer
- No*
- 1, 0
- 1
- Allow clients to resume downloads
* - ``cascade_to_nodes``
- integer
- No
- 1
-
- Selecting this option causes the action to be replayed on all nodes of the cluster automatically, as if you had logged in to each node manually
\* indicates that it's actually required, but probably already has a valid default value.
Action: ``sftpOptions``
-----------------------
:Added in Version: 4.9.0-427
:Description: Update SFTP server settings.
Input Parameters
^^^^^^^^^^^^^^^^^
.. list-table::
:widths: auto
:header-rows: 1
* - Name
- Type
- Required?
- Example Values
- Default Values
- Notes
* - ``port``
- integer
- No*
-
- 24
- The port used for the SFTP service.
* - ``maxloginattempts``
- integer
- No*
-
- 6
- Sets how many password attempts are allowed before disconnection
* - ``sftpengine``
- integer
- No*
- 1, 0
- 1
- The current status of the SFTP engine.
* - ``cascade_to_nodes``
- integer
- No
- 1
-
- Selecting this option causes the action to be replayed on all nodes of the cluster automatically, as if you had logged in to each node manually
\* indicates that it's actually required, but probably already has a valid default value.
Action: ``start``
-----------------
:Added in Version: 4.7.0-339
:Description: Start the service.
Input Parameters
^^^^^^^^^^^^^^^^^
.. list-table::
:widths: auto
:header-rows: 1
* - Name
- Type
- Required?
- Example Values
- Default Values
- Notes
* - ``cascade_to_nodes``
- integer
- No
- 1
-
- Selecting this option causes the action to be replayed on all nodes of the cluster automatically, as if you had logged in to each node manually
Action: ``startOnBoot``
-----------------------
:Added in Version: 4.7.0-339
:Description: Set the FTP server start-on-boot status.
Input Parameters
^^^^^^^^^^^^^^^^^
.. list-table::
:widths: auto
:header-rows: 1
* - Name
- Type
- Required?
- Example Values
- Default Values
- Notes
* - ``ftp_startonboot``
- integer
- No*
- 1, 0
- 1
- If set to 'Yes', FTP will be automatically started when the server starts up
* - ``cascade_to_nodes``
- integer
- No
- 1
-
- Selecting this option causes the action to be replayed on all nodes of the cluster automatically, as if you had logged in to each node manually
\* indicates that it's actually required, but probably already has a valid default value.
Action: ``startOnNode``
-----------------------
:Added in Version: 4.7.0-339
:Description: Starts the service on a specific node (Clustering only).
Input Parameters
^^^^^^^^^^^^^^^^^
.. list-table::
:widths: auto
:header-rows: 1
* - Name
- Type
- Required?
- Example Values
- Default Values
- Notes
* - ``node_id``
- string
- No*
-
-
-
\* indicates that it's actually required, but probably already has a valid default value.
Action: ``stop``
----------------
:Added in Version: 4.7.0-339
:Description: Stop the service.
Input Parameters
^^^^^^^^^^^^^^^^^
.. list-table::
:widths: auto
:header-rows: 1
* - Name
- Type
- Required?
- Example Values
- Default Values
- Notes
* - ``cascade_to_nodes``
- integer
- No
- 1
-
- Selecting this option causes the action to be replayed on all nodes of the cluster automatically, as if you had logged in to each node manually
Action: ``stopOnNode``
----------------------
:Added in Version: 4.7.0-339
:Description: Stops the service on a specific node (Clustering only).
Input Parameters
^^^^^^^^^^^^^^^^^
.. list-table::
:widths: auto
:header-rows: 1
* - Name
- Type
- Required?
- Example Values
- Default Values
- Notes
* - ``node_id``
- string
- No*
-
-
-
\* indicates that it's actually required, but probably already has a valid default value.
Action: ``win``
---------------
:Added in Version: 4.7.0-339
:Description: Magic function - test for testing success mechanism.