Project

General

Profile

Collabora on Ubuntu 2004 natively » History » Revision 4

Revision 3 (Gareth Eaton, 09/10/2023 05:49 PM) → Revision 4/12 (Gareth Eaton, 08/23/2024 08:32 AM)

h1. How to Manually Install Collabora Online on Ubuntu 20.04 with Nginx Proxy Manager 

 This guide walks you through Debian 11 natively 


 Install the manual installation of Collabora Online on an Ubuntu 20.04 server, with an external Nginx Proxy Manager (NPM) managing SSL necessary packages and reverse proxy settings on a separate server. This setup provides a secure and efficient way to integrate Collabora Online with services like Nextcloud. repositories: 

 h2. Why Use Nginx Proxy Manager on a Separate Server? 
 Using Nginx Proxy Manager on a separate server allows for centralized management of your reverse proxies, which is particularly beneficial when handling multiple services like Nextcloud, Collabora, and others. Nginx Proxy Manager simplifies SSL management with automatic Let's Encrypt certificates and provides an easy-to-use web interface for managing proxy hosts, making it ideal for users who want a straightforward way to secure and manage their web services. 

 h3. *Step 1: Set Up Collabora Online on Ubuntu 20.04* 

 1. **Update and Upgrade Your System**: 
 * Before installing Collabora, make sure your system is up to date: 
 <pre> 
 sudo apt update install gnupg 
 sudo apt upgrade -y apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 0C54D189F4BA284D 
 </pre> 
   

 2. **Install Required Dependencies**: echo 'deb https://www.collaboraoffice.com/repos/CollaboraOnline/CODE-debian11 ./' | sudo tee -a /etc/apt/sources.list 
 * Install the necessary packages for handling HTTPS connections and certificates: 
     
 <pre> sudo apt update 
 sudo apt install -y apt-transport-https ca-certificates gnupg2 curl coolwsd code-brand hunspell 
 </pre> 
    

 3. **Import 

 Open the Collabora CODE Signing Key**: 
 * Download and install the GPG key needed to verify the Collabora packages: 
     
 <pre> 
 cd /usr/share/keyrings 
 sudo wget https://collaboraoffice.com/downloads/gpg/collaboraonline-release-keyring.gpg 
 </pre> 
    

 4. **Add the Collabora Repository**: 
 * Create a repository source Online Server configuration file and add the Collabora repository: 
  
 for editing: 

 <pre> 
 sudo nano /etc/apt/sources.list.d/collaboraonline.sources /etc/coolwsd/coolwsd.xml 
 </pre> 

 Paste Locate the following content into <ssl> section in the file: configuration file. 

 Modify the <enable> and <termination> settings as follows: 

 <pre> 
 Types: deb <ssl desc="SSL settings"> 
     <!-- switches from https:// + wss:// to http:// + ws:// --> 
     <enable type="bool" desc="Controls whether SSL encryption between coolwsd and the network is enabled (do not disable for production deployment). If the default is false, must first be compiled with SSL support to enable." default="true">false</enable>         
     <!-- SSL off-load can be done in a proxy, if so disable SSL, and enable termination below in production --> 
     <termination desc="Connection via proxy where coolwsd acts as working via https, but actually uses http." type="bool" default="true">true</termination> 
 URIs: https://www.collaboraoffice.com/repos/CollaboraOnline/CODE-ubuntu2204 </ssl> 
 Suites: ./ 
 Signed-By: /usr/share/keyrings/collaboraonline-release-keyring.gpg 
 </pre> 

 Save the changes and close exit the file. text editor. 

 5. **Update Restart the Package List**: 
 * Update your package list Collabora Online service to include apply the new repository: 
      ```bash 
      sudo apt update -y 
      ``` configuration: 

 6. **Install Collabora Online**: 
 * Install Collabora Online and its necessary components: 
     
 <pre> 
 sudo apt install -y systemctl restart coolwsd code-brand 
 </pre> 


 h3. **Step 2: Configure 
 These instructions will install Collabora Online** Online Server and configure the SSL settings as required. Don't forget to restart the service after modifying the configuration. 

 1. **Disable HTTPS --- 

 To configure Collabora Online in Collabora**: 
    - Since Nginx Proxy Manager will handle SSL, disable HTTPS within Collabora: 
      ```bash 
      sudo coolconfig set ssl.enable false 
      sudo coolconfig set ssl.termination true 
      ``` 
 2. **Configure Trusted Domains**: 
 * Allow Nextcloud, follow these steps: 

 Log in to your Nextcloud instance to communicate with Collabora: 
     
 <pre> 
 sudo coolconfig set storage.wopi.host nextcloud.example.com 
 </pre> administrator privileges. 

 * Go to the settings page by navigating to https://your-nextcloud-domain.com/settings/admin/richdocuments. Replace `nextcloud.example.com` your-nextcloud-domain.com with the actual domain of your actual Nextcloud domain. instance. 

 3. **Create an Admin Account**: 
 * Set up an admin account Make sure you have access to manage your Collabora instance: 
 <pre> 
 sudo coolconfig set-admin-password 
 </pre> 

 * Follow the prompts to enter a username and password. 

 4. **Restart Collabora Service**: 
 * Restart the service Online server. You will need to apply specify the configuration changes: 
    
 <pre> 
      sudo systemctl restart coolwsd 
      sudo systemctl status coolwsd 
 </pre> 


 h3.    **Step 3: Configure Nginx Proxy Manager** 

 1. **Access Nginx Proxy Manager**: 
 * Open your Nginx Proxy Manager dashboard on URL (and port) of the server where it’s installed. 

 2. **Add a New Proxy Host**: 
 * **Domain Name**: Enter the subdomain you want to use for Collabora (e.g., `collabora.example.com`). 
 * **Forward Hostname/IP**: Enter Online server. Replace https://collabora.your-domain.com with the internal IP address correct URL of your Collabora Online server. 
 * **Forward Port**: Use port `9980`, 

 Save the default for Collabora. 
 * **SSL**: Enable SSL changes, and select "Request a new SSL certificate" using Let's Encrypt. 

 3. **Advanced Configuration**: 
 * In the advanced tab, add the following headers you should now be able to ensure proper proxying: 
     
 <pre> 
      proxy_set_header Upgrade $http_upgrade; 
      proxy_set_header Connection "Upgrade"; 
      proxy_set_header Host $http_host; 
      proxy_read_timeout 36000s; 
 </pre> 


 4. **Save and Apply**: 
 * Save your configuration and ensure that the proxy host is working correctly. 

 ### **Step 4: Integrate use Collabora with Nextcloud** Online for editing documents within Nextcloud. 

 1. **Log in --- 

 Ensure your domain name points to Nextcloud**: 
 * Access your Nextcloud instance and log in with server's IP address. 

 SSL Certificate: Obtain an admin account. SSL certificate for your domain from a certificate authority like Let's Encrypt. 

 2. **Configure Collabora Integration**: 
 * Go Nginx Configuration: 

 Set up a reverse proxy to **Settings** -> **Administration** -> **Collabora Online**. 
 * Enter the forward requests to Collabora Online URL (e.g., `https://collabora.example.com`) in the appropriate field. Server. 
 * Save the Configure SSL settings and point to complete the integration. 


 your SSL certificate files.