iFolder is a superb solution to keep your files synchronized (using delta-sync) on multiple computers/laptops as single user or in groups and in a secure manner. Content can be accessed from any system offering an internet connection using a standard browser or iFolder client (clients are available on Linux, Mac & Windows).
More info on the open source iFolder project : http://www.kablink.org/
On a running openSUSE 11.x system, you can have your iFolder Server up and running within 15 minutes.
Note: running iFolder on openSUSE 11.2 works, if you also want to run other web applications on your Linux box, check to see if those apps are already supported on 11.2
As base openSUSE install I've chosen 11.2 with GNOME as DE (a DE is not required, but easy when needing to manage the system). As iFolder utilizes Mono, GNOME seems a natural choice. Quick pointers on a base install : Base install openSUSE. Also disable IPv6 if not used.
No special openSUSE configuration is needed, though I will recommend two things:
1) add extra packages: kernel-source, gcc, gcc++ (I always add these packages in case something needs to get compiled)
2) disable or remove the Beagle search services (not necessary on 11.2)
Add iFolder Server repository & install packages
(check OBS for latest 11.1/11.2 version : Search openSUSE software , current repos are listed at the bottom of this page)
Following commands should be run in a terminal. Text after the '#' is purely meant as comment
su - #switch to root
zypper ar http://download.opensuse.org/repositories/network:/ifolder:/Factory/openSUSE_11.1 "iFolder-Server Factory Repo" #adds the openSUSE 11.1 iFolder server repository, for 11.2 change 11.1 to... you got it! ;)
zypper ref #refresh zypper's db, choose 'a' to trust the factory repository key
zypper lr #List current repositories, check the repo is listed
zypper install apache2 ifolder3-enterprise novell-ifolder-enterprise-plugins yast2-http-server #this will install all needed packages
NOTE: When installing the packages mentioned above, zypper will add/upgrade these dependencies automatically (possible change vendor message, that's ok!):
apache2-mod_mono, apache2-prefork, apache2-utils, mono-core, mono-data, mono-data-sqlite, mono-web, mono-winforms, ifolder3-enterprise, libapr-util1, libapr1, log4net, novell-ifolder-enterprise-plugins, xsp
configuring Apache for SSL
To configure iFolder, SSL configuration is needed for Apache, also certificates must be generated.
1) First let's generate the self-signed certificate.
The easy way to do this is to run the script already in place for this gensslcert.
NOTE: this generated self-signed cert is valid for one year. After this period the certificate expires and you'll need to rerun gensslcert and also re-run the iFolder configuration scripts to import the newly generated SSL cert.
2) Now to configure Apache to use SSL, Enter Yast2 > run the HTTP server module (this was added when we installed the yast2-http-server package). This is a three step process:
- Run through the basic configuration and accept all the default settings and screens, set the service to start and click finish
- Once again open the YaST > HTTP server module and go to the Server Modules tab. Chose the SSL module and click on Toggle Status to change it to Enabled.
- Copy the apache2 vhost ssl template file to a normal config file. This template file has all the settings needed for the default host to correctly run a SSL port.
UPDATE: small typo, previous cp example was missing .conf
cp /etc/apache2/vhosts.d/vhost-ssl.template /etc/apache2/vhosts.d/vhost-ssl.conf )
Restart the Apache service to activate this change
service apache2 restart
& verify the https page works and no errors are returned.
The access forbidden on https://
Now to configure iFolder
You can leave most defaults, one thing I'd recommend is creating a separate volume for iFolder data.
* The default data store is /var/simias/data.
Creating a mount point for this path is one option but you can also
change the path when running the simias-server-setup.
* when asked to use SSL, NONSSL or BOTH - go for BOTH
leave other values default
* system name & description can be modified as pleases
* If you have an LDAP(v3) source you wish to use for provisioning users, go ahead - otherwise choose N (no)
* configure apache - YES!
simias-server-setup #basic simias config, follow the screens
service apache2 restart #reload Apache with the added Simias configuration.
Now let's check if the Simias page is up, goto 'http://[ip server]/simias10', login with your inputted admin credentials - a page should show, the resource not found error is ok!
Now lets finish the configuration by setting up the admin and iFolder pages.
ifolder-admin-setup #iFolder admin page config, follow the defaults
ifolder-web-setup #iFolder web config, follow the defaults
service apache2 restart #yet again, reload the configuration
~ ALL DONE! ~
If you've kept the default portal names offered by the configuration/setup scripts, you should be able to access these pages:
1) https://[ip server]/admin , this is for administration
If you haven't setup iFolder to use LDAP you can create new user accounts and, in all cases, set limits and view the server configuration and reports.
2) https://[ip server]/ifolder, this is your user portal
3) You can also install one of the iFolder clients and point them to https://[ip server]/ifolder
Additional tip, increase the webpage timeout:
iFolder Server repositories (openSUSE):
Stable 3.7 version: http://download.opensuse.org/repositories/Mono:/UIA:/iFolder/MonoOpenSUS...
latest (3.8) snapshot : http://download.opensuse.org/repositories/network:/ifolder:/server_snaps...
iFolder Client repositories (openSUSE):
Stable 3.7 version : http://download.opensuse.org/repositories/network:/ifolder:/Factory/open...
latest (3.8) snapshot: http://download.opensuse.org/repositories/network:/ifolder:/client_snaps...