PhpWebFtp

From SME Server
Jump to navigation Jump to search

Maintainer

jpl

Description

This contribution for smeserver adds a web frontend which provides FTP connection with your SME server based upon the php GNU GPL application phpwebftp.

You can access your SME server FTP panel with your browser at url https://myserver.mydomain/webftp/

Access to the FTP frontend is only possible via https (http requests are redirected as https requests). You must provide your SME login and password.

 

Two params can be set in the webftp record of the SME configuration db :

MaxFilesSize nnnnnn : sets the maximum size in bytes of transferred files (default is 20000000)

ResumeDownload true|false : to enable/disable resuming of transferred files (default is true)

Requirements

  Note:
The FTP service has to be enabled in your installation (Default is disabled), either in the server-manager or by the command line below


config setprop ftp status enabled LoginAccess private access private
signal-event remoteaccess-update

Installation

This contrib is held in smecontribs repository, so the following commands will install on your smeserver.

 yum install --enablerepo=smecontribs smeserver-phpwebftp

You will then need to activate the database changes etc. The 'official' way is to perform

signal-event post-upgrade;  signal-event reboot

Uninstall

yum remove smeserver-phpwebftp


Configuration

thanks to config setprop webftp **** you will be able to change some options:

config show webftp
webftp=configuration
   ForceFtpVirtualLocalhost=yes
   MaxFileSize=20000000
   ResumeDownload=true
   status=enabled


ForceFtpVirtualLocalhost default yes

config setprop webftp ForceFtpVirtualLocalhost yes

yes: will override DefaultRoot directive defined for each users

no : will allow ftp connection as if an external ftp client were used: with respect to DefaultRoot directive

MaxFileSize default 20000000

config setprop webftp MaxFileSize 20000000

max size in octets you will allow to transfer thanks to php web ftp . Be carrefull you are also limited to PHP PostMaxSize and UploadMaxFilesize directives.


ResumeDownload default true

config setprop webftp ResumeDownload true

true: allow resume download false: do not allow resuming

status default enabled

config setprop webftp status enabled

enabled: allow php webftp to work

disabled : prevents access to phpwebftp

Chroot of users

you can chroot users in their home if you do not want they can see folder they don't own. For that you can install the remote-user-access contribs

see Remoteuseraccess#Global_Settings if the contribs is already installed

You can globally set FTP chroot with the following

You can chroot all users to their home directory with the command.

config setprop ftp ChrootDir home

or an ibay (where the ibay name is mission)

config setprop ftp ChrootDir mission

or anywhere on the filesystem ibay

config setprop ftp ChrootDir /opt

to return to default settings of /home/e-smith/files/

config delprop ftp ChrootDir

then enable

expand-template /etc/proftpd.conf

known problems and bugs =

after installation : "Invalid language entered. Exiting script error when trying to connect".

solution :

expand-template /home/httpd/html/webftp/config.inc.php

Source

The source for this contrib can be found in the smeserver CVS .

Bugs

Please raise bugs under the SME-Contribs section in bugzilla and select the smeserver-phpwebftp component or use this link .