个人工具

UbuntuHelp:IFolderEnterpriseServer

来自Ubuntu中文

跳转至: 导航, 搜索

The ifolderServer are mainly compose of Simias module running as a server under apache. Apache must support ASP.Net pages, it's means that mod_mono pluging are need. Note : This HowTo are based on the existing HOWTO present on the iFolder official web page. Because the wiki of iFolder official website are read only, I write my own and update it for the current version of Ubuntu. (January 2, 2008)

Gutsy Gibbon (7.10)

This section describe all step to setup a iFolder 3.6 server running under Gutsy Gibbon (7.10).

Install Dependencies

Before going any further, you must ensure that you have the universe repository enabled. Otherwise, apt-get will show you some errors. Execute this command to install the required dependencies.

sudo apt-get install build-essential automake autoconf libflaim-dev libflaim4.1 uuid-dev uuid libtool libncurses5-dev  libxml2-dev pkg-config libtool

Fix libflaim

I don't know why, but the current version of Simias look for the file libfl.a and libfl.so. This file correspond to the libflaim.a and libflaim.so respectively. Maybe, under openSUSE the flaim library create this file and Ubuntu team thought it's was a better idea to rename this file ! Why not ! To fix this, you have to create a symbolic link with this command.

sudo ln -s /usr/lib/libflaim.a /usr/lib/libfl.a 
sudo ln -s /usr/lib/libflaim.so /usr/lib/libfl.so

Install mono

I have already try to run iFolder 3.6 with the current version of mono present in the repository of Ubuntu Gutsy and it's failed. (Janurary 2, 2008) So, it's a better choice to compile mono ourself. To do this, you have to download the newer version of mono. Go to this page to download the appropriate version.

wget http://go-mono.com/sources/mono/mono-XXX.tar.bz2

Extract the content of this archive by executing this command.

tar jxf mono*

Before compiling mono, you have to install some dependencies of mono

sudo apt-get install build-essential pkg-config libglib2.0-dev bison

Compile & install it

cd mono*
./configure
make
sudo make install

Install XSP

XSP is a small server to run asp.net pages. It's a component need to run asp.net pages under Apache. Get back in your home directory.

cd ~

Retrive the source from mono web sites. I recommend you get the same version for XSP than mono.

wget http://go-mono.com/sources/xsp/xsp-XXX.tar.bz2

Extract hte content of this archive with this command.

tar jxf xsp*

Compile it and install it with this command.

cd xsp*
./configure
make
sudo make install

Install mod_mono

Notes : To correctly running mod_mono, you must install XSP. Install this extra dependecies.

sudo apt-get install apache2 apache2-prefork-dev

Get back in your home directory.

cd ~

Retrive the source from mono web sites. I recommend you get the same version for XSP than mono.

wget http://go-mono.com/sources/mod_mono/mod_mono-1.2.6.tar.bz2

Extract hte content of this archive with this command.

tar jxf mod_mono*

Compile it and install it with this command

cd mod_mono*
./configure
make
sudo make install

Setup Apache2

If you follow the instllation of mod_mono, Apache2 are install and work with mod_mono. It's could be a good idea to restart apache to enable mod_mono.

sudo /etc/init.d/apache2 restart 

Create /etc/apache2/uid.conf file with this content. This file are use by Simias configuration tool to know the user and group used by Apache.

User www-data 
Group www-data

Execute this command the enable the rewrite module.

sudo a2enmod rewrite

Getting sources

For the time being, you will have to get the source from the projects subversion server until the iFolder team releases a tarball of version 3.6. To proceed, you have to install subversion with this command line.

sudo apt-get install subversion

Now it's time to checkout source code from the SVN server. You only have to download both the simias project. This step can take a lot of time. By executing the following command, a new directory named simias will be created containing source codes of simias.

cd ~
svn co https://forgesvn1.novell.com/svn/simias/trunk/simias simias

Compile

You have to configure simias with the autogen.sh script. You can set the installation directory by changing prefix value. I chose to install it in /usr/local. The simiasdatadir argument define the location where user data will be store. the sysconfdir argument define the location of configuration file of Simias (not all files).

 cd simias/
./autogen.sh --prefix=/usr/local --with-simiasdatadir=/var/lib/simias --sysconfdir=/etc  --with-runasserver

If the script exit without any error and display something like Now type 'make' to compile Simias, you can continue and execute this next command that will compile Simias.

 make

Install

Finally, you must install it by executing this command. A good alternative is to install it by using the checkinstall tool that will create a .deb file. This way it's more easy to remove it. If your not sure, just execute the following command.

 sudo make install

If all of this command exit without any error, it's mean that Simias are install correctly. You can continue by configuring Simias.

Setup environment

Before executing the Simias configuration tool, it's better to execute this set of command that define some permission setting to directory.

sudo mkdir -p /var/www/.config/.mono/ 
sudo chown -R www-data:www-data /var/www/.config/
sudo mkdir -p /var/lib/simias
sudo chown -R www-data:www-data /var/lib/simias
sudo chmod -R 770 /var/lib/simias

Configuring the server

It's now the time to configure the server. This tool will create a configuration file for Apache and place it in /etc/apache2/conf.d/simias.conf.

sudo simias-server-setup

[...]

----- SERVER'S DATA PATH -----
Path to the servers data files

Server's Data Path? []: /var/lib/simias

----- SERVER NAME -----
The name of this server

Server Name? [Host1]: iFolderServer

----- PUBLIC URL -----
Public URL of this Simias Server

Public URL? [http://192.168.0.100/simias10]: http://192.168.0.100/simias10

----- PRIVATE URL -----
Private URL of this Simias Server

Private URL? [http://192.168.0.100/simias10]: http://192.168.0.100/simias10

----- SLAVE SERVER -----
Insall into existing Simias Domain

Slave Server? [N]: N

----- SYSTEM NAME -----
A name used to identify the Simias system to users

System Name? [iFolder]: iFolderServer

----- System Description -----
A detailed description of the simias system for users

System Descritpion? [iFolder Entreprise System]: iFolder Entreprise System

----- USE KEY RECOVERY AGENT -----
Use Key Recovery Agents to Recovery the encryption
Key if the user forgets the pass-phrase used for encryption?

Use Key Recovery Agent? [Y]: N

----- USE LDAP -----
Use LDAP to provide and anthentucate users?

Use LDAP? [Y]: N

----- SYSTEM ADMIN -----
The Simias default administrator. If the system if
configured to use an external identify source, the
distinguished name (dn) should be used.

System Admin? [admin]: admin
System Admin Password? [novell]: simias

----- CONFIGURE APACHE -----
Configure Simias to run behind Apache

Configure Apache? [N]: Y

At this time, there still some bug in this configuration tool. For this reason, you have to edit the file /etc/apache2/conf.d/simias.conf as follow. I suggest you use nano text editor (sudo pico /etc/apache2/conf.d/simias.conf).

Include /etc/apache2/conf.d/mod_mono.conf

Become:

Include /etc/apache2/mod_mono.conf

It's now time to start apache server.

sudo /etc/init.d/apache2 start

You can check if it's working by browsing to http://exemple.com/simias10. A dialog box should appear asking you to enter your login information. You must give the one you enter in the configuration of Simias (user:admin, pass:simias). You should see an HTTP error 404. When browsing to http://exemple.com/simias10/DomainService.asmx you should see a page listing API information.

Setup iFolder Admin WebAccess

To configure and manage iFolder Server you can install a web application that will run behind Apache. There is a small configuration tool to easily configure it.

sudo ifolder-admin-setup

[...]
----- WEB Alias -----
Web Alias for iFolder Web Admin

Web Alias? [/admin]: /admin --> Define the path to access the application (http://exemple.com/admin)

----- REQUIRE SSL -----
Require a secure connection between the browser and
the iFolder Web Admin application

Require SSL? [Y]: Y

----- IFOLDER URL -----
The host or ip address of the iFolder server that will 
be used by the iFolder Web Admin application

iFolder URL? [http://localhost]: http://localhost --> Because it's possible to install the web application to an other server than simias server you must provide the url of the simias server.

----- REDIRECT USRL -----
Redirect URL for iChain / AccessGateway

Redirect URL? []:

----- REQUIRE SERVER SSL -----
Require a secure connection between the iFolder Server and the iFolder WebAdmin application

Require Server SSL? [N]: N --> If the web application running on the same computer than the simias server, SSL are not require. Otherwise it's recommend.

Like the other tool, there still some bug in the file created. Use a text editor and edit the file /etc/apache2/conf.d/ifolder_admin.conf as follow. I suggest you use nano text editor (sudo pico /etc/apache2/conf.d/ifolder_admin.conf).

Comment line:
# LoadModule rewrite_module /usr/lib/apache2/mod_rewrite.so

It's now time to restart apache server.

sudo /etc/init.d/apache2 restart

Setting up iFolder WebAccess

Also, there is a web application to browse and upload files. It's a very usefull tool when you don't have the iFolder client.

sudo ifolder-web-setup

[...]
----- WEB Alias -----
Web Alias for iFolder Web Admin

Web Alias? [/ifolder]: /ifolder --> Define the path to access the application (http://exemple.com/admin)

----- REQUIRE SSL -----
Require a secure connection between the browser and
the iFolder Web Admin application

Require SSL? [Y]: Y

----- IFOLDER URL -----
The host or ip address of the iFolder server that will 
be used by the iFolder Web Admin application

iFolder URL? [http://localhost]: http://localhost --> Because it's possible to install the web application to an other server than simias server you must provide the url of the simias server.

----- REDIRECT USRL -----
Redirect URL for iChain / AccessGateway

Redirect URL? []:

----- REQUIRE SERVER SSL -----
Require a secure connection between the iFolder Server and the iFolder WebAdmin application

Require Server SSL? [N]: N --> If the web application running on the same computer than the simias server, SSL are not require. Otherwise it's recommend.

Like the other tool, there still some bug in the file created. Use a text editor and edit the file /etc/apache2/conf.d/ifolder_web.conf as follow. I suggest you use nano text editor (sudo pico /etc/apache2/conf.d/ifolder_web.conf).

Comment line:
# LoadModule rewrite_module /usr/lib/apache2/mod_rewrite.so

Don't forget to restart the apache server.

sudo /etc/init.d/apache2 restart

Troubleshooting

A minor bug if you are not using a recovery agent is at line 531 in src/core/CollectionStore/Store.cs Change it from:

if (raPath != String.Empty && raPath != "")

To:

if (raPath != String.Empty && raPath != "" && raPath != null)

This might also apply to Dapper, but this has not been verified yet. - While restarting apache, ... must restart mono server

Dapper Drake (6.06)

This section present how to compile, install and configure Simias module. Finally, it's explain how to configure apache to work with Simias.

Getting sources

Until some one release a tar.gz for a specific version of iFolder, you have to get the source from the SVN server. To proceed ensure you have subversion package install by executing sudo apt-get install subversion. The following command will create a new directory named simias where every file will be download. I recommend you to execute this command in your home folder.

svn co https://forgesvn1.novell.com/svn/simias/trunk/simias simias

2008 February 28: A solution for fixing an error that might occur when running is can be read about here, see also troubleshooting for gutsy, as this is the same: [1]

Install Dependencies

Before going any further, you must ensure that you have enable universe repository. Any way, if it's not the case apt-get will show you some errors. Execute this command to install every dependencies.

sudo apt-get install liblog4net-cil uuid uuid-dev libxml2 libxml2-dev automake1.9 libncurses5-dev libcommoncpp2-1.3c2a libstdc++5 libtool pkg-config build-essential mono-mcs libflaim4 libflaim-dev libmono-dev

Fix libflaim

I don't know why, but the current version of Simias look for the file libfl.a and libfl.so. This file correspond to the libflaim.a and libflaim.so respectively. Maybe, under openSUSE the flaim library create this file and Ubuntu thought it's was a better idea to rename this file ! Why not ! To fix this, you have to create a symbolic link with this command.

 sudo ln -s /usr/lib/libflaim.a /usr/lib/libfl.a
sudo ln -s /usr/lib/libflaim.so /usr/lib/libfl.so

Also, you must edit the file /usr/lib/pkgconfig/libflaim.pc to change name to look like Name (notice the capital letter). According to this bug it's will never be fixed for Dapper Drake. Otherwise, you will get an error while compiling.

name: libflaim

become

Name: libflaim

Compile

You have to configure simias installation with the autogen.sh script. You can set the installation directory by changing prefix value. I chose to install it in /usr/local. The simiasdatadir argument define the location where user data will be store. the sysconfdir argument define the location of configuration file of Simias (not all files).

 cd simias/
./autogen.sh --prefix=/usr/local --with-simiasdatadir=/var/lib/simias --sysconfdir=/etc  --with-runasserver

If the script exit without any error and display something like Now type 'make' to compile Simias, you can continue and execute this next command that will compile Simias.

 make

Install

Finally, you must install it by executing this command. A good alternative is to install it by using the checkinstall tool that will create a .deb file. This way it's more easy to remove it. If your not sure, just execute the following command.

 sudo make install

If all of this command exit without any error, it's mean that Simias are install correctly. You can continue by configuring Simias.

Setup Apache2

You have to get a proper installation of Apache 2. If it's not already done, install Apache 2 by executing the following command.

sudo apt-get install apache2

Also, you need to install other package to support asp.net. Just execute this command to do so. Everything will be configure for you.

sudo apt-get install libapache2-mod-mono mono-apache-server mono-apache-server2

Then, restart apache and check if it's running well by browsing it.

 sudo /etc/init.d/apache2 restart

Finally create the file /etc/apache2/uid.conf with this content. This file are use by Simias configuration tool to know the user and group used by Apache.

User www-data
Group www-data

Setup environment

Before executing the Simias configuration tool, it's better to execute this set of command that define some permission setting to directory.

sudo mkdir -p /var/www/.config/.mono/
sudo chown -R www-data:www-data /var/www/.config/
sudo mkdir -p /var/lib/simias
sudo chown -R www-data:www-data /var/lib/simias
sudo chmod -R 770 /var/lib/simias
sudo mkdir /var/log/ifolder3
sudo chown -R www-data:www-data /var/log/ifolder3

IMPORTANT stop apache service.

sudo /etc/init.d/apache2 stop

Configuring the server

It's now the time to configure the server. This tool will create a configuration file for Apache and place it in /etc/apache2/conf.d/simias.conf.

sudo simias-server-setup

[...]

At this time, there still some bug in this configuration tool. For this reason, you have to edit the file it's create and change the location of mod_mono.conf file.

Include /etc/apache2/mod_mono.conf

Become 

Include /etc/apache2/mods-enabled/mod_mono.conf

It's now time to start apache server.

sudo /etc/init.d/apache start

You can check if it's working by browsing to http://exemple.com/simias10. A dialog box should appear asking you to enter your login information. You must give the one you enter in the configuration of Simias. You should see an HTTP error 404. When browsing to http://exemple.com/simias10/DomainService.asmx you should see a page with some information.

Setup iFolder Admin WebAccess

Setting up iFolder WebAccess

Troubleshooting

- While restarting apache, ... must restart mono server

Needs Packaging

There is a demand for a package in the launchpad

Other resources

Some documentation on the iFolder Wiki for configuring iFolder Enterprise Server on Dapper. You can find it here. Novells repository is on 26.feb.2008 version 6995, which contains a minor SSL bug. You can download RPM|ifolder sources where 6984 ssl update has been reverted. See the ifolder|mailinglist for posting, and (hopefully) a reply from Novell at some point. The mailing list requires registration.

Windows Client

You can download the latest Windows client from ifolder.com if you have a enviorment where you sync windows clients to a linux server. On build 6995 and the above mentioned RPM sources, the OES2 release windows client (3.6.7263) has been verified to work.