Installing iFolder Server on openSUSE 11.1 & 11.2

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

Preparation

whats needed:

  • openSUSE 11.1 or 11.2 install media (preferably the DVD)
  • iFolder repository (listed in this writeup)
  • internet access
  • 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.

    gensslcert

    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:// is ok as no pages are setup just yet

    Now to configure iFolder

    You can leave most defaults, one thing I'd recommend is creating a separate volume for iFolder data.

    Setup considerations:
    * 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

    Enjoy!!

    "Appendix"

    Additional tip, increase the webpage timeout:
    http://www.novell.com/documentation/ifolder3/admin/?page=/documentation/...

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