sudo apt-get install build-essential automake autoconf mono-complete liblog4net1.2-cil uuid-dev libxml2-dev mono-apache-server mono-apache-server2 gsoap libapache2-mod-mono libncurses-dev libtool g++-4.3 gcc-4.3 apache2
sudo a2enmod ssl
sudo a2enmod rewrite
See /usr/share/doc/apache2.2-common/README.Debian.gz for ssl information
First set your hostname using the hostname command, then edit the hosts file using tab seperation (all entries per host on one line)
hostname servershostnamegoes here
sudo vim /etc/hosts
127.0.0.1 servernamegoeshere localhost
wget http://forge.novell.com/modules/xfcontent/private.php/flaim/development/flaim/downloads/source/libflaim-4.9.989.tar.gz -O - | tar -xzf -
sed -i "s/\-Werror//" Makefile
sudo make install
wget http://sourceforge.net/projects/ifolder/files/iFolder%20Clients/3.8.0/simias-126.96.36.19928.1.tar.gz/download -O - | tar -xzf -
export CSC2="gmcs -d:MONO -d:MONONATIVE"
export CSC="gmcs -d:MONO -d:MONONATIVE"
export CXX=g++-4.3 *NOTE - The following 3 lines are all one command*
sed -i -e "s+\$(GSOAP_PATH)/wsdl2h+wsdl2h+g" -e "s+\$(GSOAP_PATH)/soapcpp2+soapcpp2+g" -e "s+\$(GSOAP_PATH)/stdsoap2.c+/usr/include/gsoap/stdsoap2.c+g" -e "s+\$(GSOAP_PATH)/stdsoap2.h+/usr/include/stdsoap2.h+g" src/core/libsimias/Makefile.am
sudo make install
The only changes I made during the set up prompts was the choice not to use LDAP and the insertion of my hostname (which we set in the first few steps of this doco), pretty much kept everything else as the default.
You may want to open port 443 on the firewall (below is an example of just opening 443 to my internal network).
iptables -A INPUT -s 192.168.0.0/24 -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
sudo sed -i 's/apache2\/mod_mono.conf/apache2\/mods-enabled\/mod_mono.conf/g' /etc/apache2/conf.d/simias.conf
sudo mkdir -p /var/www/.config/.mono/
sudo chown -R www-data:www-data /var/www/.config/
Locate the ifolder-admin-setup script and run it, make sure that you apply the correct apache user and group eg www-data
Locate ifolder-web-setup (same as above and run it as sudo be sure to enter your external URL instead of accepting …localhost:443 and again make sure that the corrent apache user and group are used.
fix up the conf files
sudo sed -i 's/apache2\/mod_mono.conf/apache2\/mods-enabled\/mod_mono.conf/g' /etc/apache2/conf.d/ifolder_admin.conf
sudo sed -i 's/apache2\/mod_mono.conf/apache2\/mods-enabled\/mod_mono.conf/g' /etc/apache2/conf.d/ifolder_web.conf
then restart apache2
You will have to create a self signed Cert as part of this install if you are choosing SSL when installing iFolder. You will have to Google that but take note of the following during the creation of the cert.
Did not get much joy in the browser so I checked the /var/log/apache2/error.log and saw the following
[warn] RSA server certificate CommonName (CN) `ubuntu’ does NOT match server name!?
To solve this make sure that you have your hostname set as the ServerName in the apache config files that are being used. And most importantly this name must patch the setting called “Common Name (eg, YOUR name) :” that you have to enter while creating your certificate eg running
sudo openssl req -new -x509 -days 365 -nodes -out /etc/ssl/certs/server.cert -keyout /etc/ssl/certs/server.key
During the install of mod_mono I chose yes for the following (the default is no)
Configuration file `/etc/apache2/mods-available/mod_mono.conf'
==> File on system created by you or by a script.
==> File also in package provided by package maintainer.
What would you like to do about it ? Your options are:
Y or I : install the package maintainer's version
N or O : keep your currently-installed version
D : show the differences between the versions
Z : background this process to examine the situation
The default action is to keep your current version.
*** mod_mono.conf (Y/I/N/O/D/Z) [default=N] ? Y