Ubuntu 8.10 Installation guide

LogicalDOC CE 4.0, 4.0.1, 4.0.2, &amp; 4.5 have been successfully installed on Ubuntu 8.10 Server with PostgreSQL 8.3 using Tomcat 6.0.18. This install was on a vanilla install of Ubuntu 8.10 that had PostgreSQL and Tomcat installed during the installation of the operating system. The steps below follow what I did to configure Ubuntu for Logicaldoc.

Add Packages &amp; Update Current Packages
It is assumed that the user is logged in and has sudo privilege. These steps are performed from the command line.

The following packages need to be installed:


 * pgadmin3
 * vim
 * sun-java6-jdk


 * 1) Type sudo apt-get install pgadmin3 vim sun-java6-jdk, and then press Enter
 * 2) Type in the password for the user account
 * 3) Press Enter to accept the install of the new packages.
 * 4) Press Tab to highlight OK, then press Enter to accept terms for Configuring sun-java6-jre
 * 5) Move the cursor to the left to select Yes for agreeing with the DLJ license terms
 * 6) Type sudo apt-get update, press Enter
 * 7) Type sudo apt-get upgrade, press Enter
 * 8) Press Enter to accept the install of the packages that will be upgraded

Enable Syntax Highlighting for VIM
1. Type sudo vim /etc/vim/vimrc, press Enter

2. Scroll down and find the commented out line “syntax on

3. Press I to edit, delete the “

4. Press Esc, then type :wq

5. Press Enter

Switch Java to Sun Java
1. Type update-java-alternatives –l, press Enter to verify that Sun Java 6 is installed

2. Type sudo update-java-alternatives -s java-6-sun, press Enter

Edit the default file for Tomcat
1. Type sudo vim etc/default/tomcat6, press Enter

2. Press I to edit

3. Remove the # to uncomment TOMCAT6_USER=tomcat6

4. Remove the # to uncomment JAVA_HOME=/usr/lib/jvm/openjdk-6-jdk

5. Change JAVA_HOME=/usr/lib/jvm/openjdk-6-jdk to JAVA_HOME=/usr/lib/jvm/java-6-sun

6. Remove the # to uncomment CATALINA_BASE=/var/lib/tomcat6

7. Remove the # to uncomment JAVA_OPTS="-Djava.awt.headless=true -Xmx128M"

8. Change –Xmx128M to –Xmx900M

9. Remove the # to uncomment TOMCAT6_SECURITY=yes

10. Change TOMCAT6_SECURITY=yes to TOMCAT6_SECURITY=no

11. Press Esc, then type :wq

12. Press Enter

Edit the tomcat-users.xml
1. Type sudo vim /etc/tomcat6/tomcat-users.xml, press Enter

2. Scroll down to the &lt;tomcat-users&gt; section

3. Press I to edit

4. Remove the comments &lt;!-- and --&gt;

5. Change the line &lt;role rolename="role1"/&gt; to &lt;role rolename="admin"/&gt;, press Enter

6. Type &lt;role rolename="manager"/&gt;

7. Change the line &lt;user username="both" password="tomcat" roles="tomcat,role1"/&gt; to '&lt;user username="ldocadmin" password="MyN3wP@s5w0d!" roles="admin"/&gt;'

8. Change the line &lt;user username="role1" password="tomcat" roles="role1"/&gt; to '&lt;user username="ldocmanager" password="My2ndN3wP@s5w0rd!" roles="manager"/&gt;'

Note: Change the password to something other than password!

9. Change the password for the tomcat user

10. Press Esc, then type :wq

11. Press Enter

Configure SSL
These steps will create a certificate request that can will either be a self signed certificate or use the certificate request and have it signed be another Certification Authority (CA). Notes will be mentioned for creating a certificate request that will be singed by an Entrust CA.

1.	Type cd /etc/tomcat6, press Enter

2.	Type sudo keytool -genkey -v -alias tomcat -keyalg RSA -keysize 2048 -keystore tomcat.jks -storepass logicaldoc -keypass logicaldoc

3.	Press Enter

4.	Type in the correct value for the prompts that follow.

Note: The first and last name needs to be the FQDN that will be used to access the server. Use the Entrust Reference number for the first & last name and leave the other fields blank if certificate request is going to be signed by an Entrust CA.

5.	Type yes, press Enter

6.	Type sudo keytool -certreq -alias tomcat -keyalg RSA -keystore tomcat.jks -storepass logicaldoc -file tomcat-ssl-request.p10

7.	Press Enter

8.	To generate a self signed certificate type sudo keytool -selfcert -alias tomcat -keystore tomcat.jks, press Enter. Otherwise take the tomcat-ssl-request.p10 to get signed by a CA.

Note: The next steps are only if the certificate request was signed by a CA. It will be assumed that the signed certificate request and CA certificates have been uploaded to the server directory /etc/tomcat6

9.	Type sudo keytool -trustcacerts -import -keystore tomcat.jks -storepass logicaldoc -alias SubCA -file subca.crt

10.	Press Enter

11.	Type sudo keytool -trustcacerts -import -keystore tomcat.jks -storepass logicaldoc -alias RootCA -file rootca.crt

12.	Press Enter

13.	Type sudo keytool -import -trustcacerts -alias tomcat -keystore tomcat.jks -storepass logicaldoc -file logicaldoc.crt

14.	Press Enter

Edit the server.xml
1.	Type sudo /etc/tomcat6/server.xml, press Enter

2.	Press I to edit

3.	Scroll down to <Connector port="8080" protocol="HTTP/1.1"

4.	Change port=”8080” to port=”80”

5.	Change redirectPort="8443" to redirectPort="443"

6.	Scroll down to 

11.	Change redirectPort="8443" to redirectPort="443"

12.	Press Esc, then type :wq

13.	Press Enter

Restart Tomcat 6.0.18 Service
1.	Type sudo /etc/init.d/tomcat6 restart

2.	Press Enter

Change postgres User Password
1.	Type sudo -u postgres psql template1, press Enter

2.	Type ALTER USER postgres with encrypted password 'N3wP@ssw0rd!';

3.	Press Enter

4.	Type \q

5.	Press Enter

Import Additional Schema
1.	Type sudo -u postgres psql < /usr/share/postgresql/8.3/contrib/adminpack.sql

2.	Press Enter

3.	Type sudo -u postgres psql < /usr/share/postgresql/8.3/contrib/pgcrypto.sql

4.	Press Enter

Edit the postgresql.conf
1.	Type sudo vim /etc/postgresql/8.3/main/postgresql.conf, press Enter

2.	Scroll down to #listen_addresses = 'localhost' 

3.	Press I to edit

4.	Remove the # to uncomment listen_addresses = 'localhost' 

5.	Change listen_addresses = 'localhost'  to listen_addresses = '*' 

6.	Scroll down to #password_encryption = on

7.	Remove the # to uncomment password_encryption = on

8.	Press Esc, then type :wq

9.	Press Enter

Edit the pg_hba.conf
1.	Type sudo vim /etc/postgresql/8.3/main/pg_hba.conf

2.	Scroll down toward the bottom

3.	Press I to edit

4.	Use the # to comment out all the lines

5.	 host   all         all         ::1/128               md5

6.	local  all         all                               ident sameuser

7.	local  all         postgres                          ident sameuser

8.	Type the following lines on the last line: local  all         postgres                          trust local  all         postgres         127.0.0.1/32…………..md5 host   all         all         10.60.100.0         255.255.255.0  md5

Note: This will be the local network IP range that the server is on.

9.	Press Esc, then type :wq

10.	Press Enter

Restart PostgreSQL
1.	Type sudo /etc/init.d/postgresql-8.3 restart

2.	Press Enter

Configure Database for Logicaldoc
1.	Type sudo –u postgres createdb logicaldocdb, press Enter'''

2.	Type sudo –u postgres psql logicaldocdb

Note: If prompted for a password, use the postgres password

3.	Press Enter

4.	Type CREATE ROLE logicaldocgroup INHERIT;

5.	Press Enter

6.	Type CREATE ROLE logicaldocservice LOGIN NOINHERIT;

7.	Press Enter

8.	Type GRANT logicaldocgroup TO logicaldocservice;

9.	Press Enter

10.	Type ALTER USER logicaldocservice with encrypted password 'LogicaldocPassword';

11.	Press Enter

12.	Type ALTER DATABASE logicaldocdb OWNER TO logicaldocgroup;

13.	Press Enter

14.	Type \q, press Enter

Upload WAR File
1.	Open a web browser such as Firefox or Internet Explorer

2.	Type https://logicaldoc.mydomain.com/manager/html, press Enter

Note: Point to the server that hosts Logicaldoc using either the FQDN or the IP address.

3.	Type ldocmanager for the username, then type in the password

4.	Click OK

5.	Scroll down to the Deploy section

6.	Click Browse to select the WAR to upload

7.	Browse to where logicaldoc.war is located, click Open

8.	Click Deploy

9.	Message: OK should be displayed up top

Upload Email Plugin
1.	Type cd, press Enter

2.	Type wget http://downloads.sourceforge.net/logicaldoc/logicaldoc-email-4.0.0-plugin.zip?modtime=1232733948&big_mirror=0

3.	press Enter

4.	Type sudo cp logicaldoc-email-4.0.0-plugin.zip /var/lib/tomcat6/webapps/logicaldoc/WEB-INF/plugins/

5.	Type sudo chown tomcat6:tomcat6 /var/lib/tomcat6/webapps/logicaldoc/WEB-INF/plugins/ logicaldoc-email-4.0.0-plugin.zip

6.	Press Enter

Create Directory for Logicaldoc Documents
1.	Type sudo mkdir /opt/Logicaldoc/, press Enter

2.	Type sudo chown tomcat6:tomcat6 /opt/Logicaldoc, press Enter

Setup Logicaldoc
1.	Open the web browser

2.	Type https://logicaldoc.mydomain.com/logicaldoc/setup, press Enter

Note: Point to the server that hosts Logicaldoc using either the FQDN or the IP address

3.	Type ldocadmin for the user name and then type the password

4.	Click OK

5.	Type /opt/Logicaldoc, and then click Continue

6.	Enable the radio button for External database management system, click Continue

7.	Select PostgreSQL 8.x for the database type, fill in the information for the server, user name, password, and then click Continue

8.	Type in the information for the mail server, click Continue

9.	Click the Click here button to proceed with logging into Logicaldoc

Configure Email Plugin
1.	Open a web browser

2.	Type https://logicaldoc.mydomain.com/logicaldoc/setup, press Enter

Note: Point to the server that hosts Logicaldoc using either the FQDN or the IP address

3.	Type ldocadmin for the user name and then type the password

4.	Click OK

5.	Proceed through the setup steps using the same data used previously to configure Logicaldoc

6.	After finishing the setup login to Logicaldoc

7.	Under the Administration column verify that E-mail Accounts is now present under the E-mail option

Modify the web.xml
1.	Type sudo vim /var/lib/tomcat6/webapps/logicaldoc/WEB-INF/web.xml, press Enter

2.	Scroll down to the section:

 com.icesoft.faces.uploadMaxFileSize 52428800 

3.	Press I to edit

4.	Change the param-value 52428800 to 5242880000

5.	Press Esc, then type :wq

6.	Press Enter

Restart Tomcat 6.0.18 Server
1.	Type sudo /etc/init.d/tomcat6 restart

2.	Press Enter

Configure Windows XP Workstations for Webdav
This feature now works with Logicaldoc 4.0.1. I have successfully tested this over SSL and have had no problems.

1.	Double click on My Computer

2.	Navigate to C:\Windows\system32

3.	Locate and double click on webfldrs.msi

4.	Click on Select reinstall mode

5.	Uncheck Repair all detected reinstall problems

6.	Check the following:

a.	Force all files to be reinstalled, regardless of checksum or version

b.	Verify that required user registry entries are present

c.	Verify that required machine registry entries are present

d.	Validate shortcuts

7.	Click OK

8.	Click Reinstall

9.	Click OK

10.	Click Start&rarr;Run

11.	Type regedit, click OK

12.	Naviagate to: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters

13.	Right click into the right field and choose New from the context-menu

14.	Choose DWord-Value

15.	Name the new value UseBasicAuth

16.	Right click on UseBasicAuth and choose Modify

17.	Change the value 0 (disabled) to 1 (enabled)

18.	Click OK

19.	Click File in the top left corner, select Exit to close the Registry

20.	Click Start&rarr;Shut Down

21.	Select Restart, click OK

22.	After the computer Reboots, login to the workstation

23.	Double click on My Network Places

24.	Double click on Add Network Place

25.	A wizard will start, click Next

26.	Select Choose another network location, click Next

27.	Type https://logicaldoc.mydomain.com:443/logicaldoc/webdav/store, click Next

Note: Point to the server that hosts Logicaldoc using either the FQDN or the IP address

28.	Click Yes to proceed for the first Security Alert

29.	Click Yes to proceed for the second Security Alert

30.	Type in the username and password used for authenticating to Logicaldoc, click OK

31.	Type Logicaldoc for the name of the network place, click Next

32.	Click Finish

33.	Click Yes to accept the first Security Alert

34.	Click Yes to accept the second Security Alert

35.	Type in the username and password used for authenticating to Logicaldoc, click OK

Configure Backups
It is assumed that a share has been created and a user account has been provided that will allow read/write access to the share. The share that will be used is called backups, and the user name/password is Logicaldoc/password1234!. An IP or FQDN can be used to connect to the share. At this point in time I have not been able to get the fstab function to correctly work as documented. My workaround is to skip 10.2.1 and use the following line in the fstab //10.60.50.10/backups /mnt/mountpoint cifs user=myuser,password=mypassword,auto 0 0. I have been successful with that edit to the fstab, and will hopefully figure out what is wrong!

Create Mount Directory and Verify Connectivity
1.	Type sudo mkdir /mnt/mountpoint, press Enter

2.	Type '''sudo mount -t cifs -o username=logicaldoc,password=password1234! //10.60.50.10/backups /mnt/mountpoint, press Enter'''

3.	Type ls –l /mnt/mountpoint, and press Enter to verify mount point to Windows share

Create File with for the User Credentials
1.	Type sudo vim /etc/.credentials, press Enter

2.	Press I to add text

3.	Type username=logicaldoc, press Enter

4.	Type password=password1234!

5.	Press Esc, then type :wq

6.	Press Enter

7.	Type sudo chmod 600 /etc/.credentials, press Enter

8.	Type sudo chown root /etc/.credentials, press Enter

Edit the fstab File
1.	Type sudo vim /etc/fstab, press Enter

2.	Press I to add text

3.	Go to the end of the last line and press Enter

4.	Type the following:

//10.60.50.10/backups /mnt/mountpoint cifs credentials=/etc/credentials.windows,mand 0 0
 * 1) Mounts windows share drive backups

5.	Press Esc, then type :wq

6.	Press Enter

Create the Backup Script
1.	Type sudo vim /usr/local/bin/logicaldoc-backup.sh, press Enter

2.	Press I to add text

3.	Type the following

BACKUP_DIR="/mnt/mountpoint" LOGICALDOCFILES="/opt/logicaldoc" FSBACKUP="logicaldocFS" DBBACKUP="logicaldocDB" DATABASE="logicaldocdb" PGUSER="postgres" DATE=`date '+%F'-'%H%M'` /usr/bin/pg_dump -b "-U" $PGUSER $DATABASE | gzip > $BACKUP_DIR/$DBBACKUP.$DATE.gz tar cpzf $BACKUP_DIR/$FSBACKUP.$DATE.tar.gz $LOGICALDOCFILES
 * 1) !/bin/bash

4.	Press Esc, then type :wq

5.	Press Enter

6.	Type sudo chmod +x /usr/local/bin/logicaldoc-backup.sh, press Enter

Add Script to cron.d
1.	Type sudo vim /etc/cron.d/logicaldoc-backup, press Enter

2.	Press I to add text

3.	Type the following:

0 1 * * * root   /usr/local/bin/logicaldoc-backup.sh
 * 1) This script will backup the Logicaldoc File system and the PostgreSQL

4.	Press Esc, then type :wq

5.	Press Enter

Version of CIFS
To find out what version of CIFS is installed use the command below.

1.	Type modinfo cifs

2.	Press Enter

Enable Debug for CIFS
1.	Type sudo –s, press Enter

2.	Type echo 1 > /proc/fs/cifs/cifsFYI, press Enter

3.	Type exit, press Enter

4.	Type more /var/log/syslog, press Enter to see what is being logged in Syslog