Difference between revisions of "PhpWebFtp"

From SME Server
Jump to navigationJump to search
m
 
(13 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
{{Warning box|This contribs uses a php interface that is not maintained anymore, please choose an alternative like [[Nextcloud]] while not directly using the ftp technology, it is allowing similar access to files.}}
 +
 
=== Maintainer ===
 
=== Maintainer ===
 
[mailto:jean-paul@leclere.org jpl]
 
[mailto:jean-paul@leclere.org jpl]
 +
 +
=== Version ===
 +
{{ #smeversion: smeserver-phpwebftp}}
 +
  
 
=== Description ===
 
=== Description ===
Line 18: Line 24:
  
 
=== Requirements ===
 
=== Requirements ===
You need nothing else than smeserver-phpwebftp package.
+
 
 +
{{Note box|The FTP service has to be enabled in your installation '''(Default is disabled)''', either in the [[SME_Server:Documentation:Administration_Manual:Chapter11#FTP|server-manager]] or by the command line below}}
 +
 
 +
config setprop ftp status enabled LoginAccess private access private
 +
signal-event remoteaccess-update
  
 
=== Installation ===
 
=== Installation ===
Line 29: Line 39:
  
 
  signal-event post-upgrade;  signal-event reboot
 
  signal-event post-upgrade;  signal-event reboot
 +
 +
or
 +
expand-template /home/httpd/html/webftp/config.inc.php
 +
expand-template /etc/httpd/conf/httpd.conf
 +
service httpd-e-smith restart
  
 
=== Uninstall ===
 
=== Uninstall ===
Line 35: Line 50:
  
 
=== Configuration ===
 
=== Configuration ===
thanks to db configuration setprop webftp **** you will be able to change some options:
+
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
 
'''ForceFtpVirtualLocalhost''' default yes
 +
config setprop webftp ForceFtpVirtualLocalhost yes
 +
 +
yes: will override DefaultRoot directive defined for each users <br />
  
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
 
no : will allow ftp connection as if an external ftp client were used: with respect to DefaultRoot directive
  
 
'''MaxFileSize''' default 20000000
 
'''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.
 
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
 
'''ResumeDownload''' default true
 +
config setprop webftp ResumeDownload true
 
true: allow resume download
 
true: allow resume download
 
false: do not allow resuming
 
false: do not allow resuming
  
 
'''status''' default enabled
 
'''status''' default enabled
enabled: allow php webftp to work
+
config setprop webftp status enabled
 +
enabled: allow php webftp to work<br />
 +
 
 
disabled : prevents access to phpwebftp
 
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 [[Remoteuseraccess|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
 +
 +
 +
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 ====
 
=== known problems and bugs ====
Line 67: Line 113:
 
Please raise bugs under the SME-Contribs section in [http://bugs.contribs.org/enter_bug.cgi?product=SME%20Contribs bugzilla]
 
Please raise bugs under the SME-Contribs section in [http://bugs.contribs.org/enter_bug.cgi?product=SME%20Contribs bugzilla]
 
and select the smeserver-phpwebftp component or use {{BugzillaFileBug|product=SME%20Contribs|component=smeserver-phpwebftp|title=this link}}.
 
and select the smeserver-phpwebftp component or use {{BugzillaFileBug|product=SME%20Contribs|component=smeserver-phpwebftp|title=this link}}.
 +
{{#bugzilla:columns=id,product,version,status,summary |sort=id |order=desc |component=smeserver-phpwebftp|noresultsmessage="No open bugs found."}}
 +
 +
 +
===Changelog===
 +
Only released version in smecontrib are listed here.
 +
 +
{{ #smechangelog: smeserver-phpwebftp}}
 +
 +
<noinclude>
 +
[[Category:Administration:Remote Access]]
  
<noinclude>[[Category: Contrib]] [[Category:Administration:Remote Access]]</noinclude>
+
[[Category:Deprecated Contrib]]
 +
</noinclude>

Latest revision as of 18:09, 15 August 2023

Warning.png Warning:
This contribs uses a php interface that is not maintained anymore, please choose an alternative like Nextcloud while not directly using the ftp technology, it is allowing similar access to files.


Maintainer

jpl

Version

Contrib 9:
smeserver-phpwebftp
The latest version of smeserver-phpwebftp is available in the SME repository, click on the version number(s) for more information.



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.

Smeserver-phpwebftp2.png

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

Important.png 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

or

expand-template /home/httpd/html/webftp/config.inc.php
expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith restart

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


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 .

IDProductVersionStatusSummary
10437SME Contribs9.2CONFIRMEDalternative to unmaintained phpwebftp script


Changelog

Only released version in smecontrib are listed here.