NextCloud – Cài đặt Nextcloud Office trên Ubuntu 22.04

Tác giả: 29/06/2023

Tiếp theo phần hướng dẫn cài đặt Nextcloud trên ubuntu 22.04, hôm nay Nhân Hòa sẽ cùng các bạn cài đặt Nextcloud Office ( tên gọi cũ là collabora online)

Điểm mạnh của Collabora Online

Hiện tại, ở máy chủ của mình đã gỡ OnlyOffice và chỉ còn cài đặt Collabora Online, vì một số lý do sau:

  • So sánh giữa Collabora và OnlyOffice thì mình không đề cập đến, tuy nhiên, ứng dụng Collabora đã được Nextcloud tích hợp với cái tên “Nextcloud Office”, mình nghĩ Collabora Online sẽ nhận được sự hỗ trợ tốt hơn từ phía Nextcloud.
  • OnlyOffice hay Collabora Online tuy cũng đều hỗ trợ định dạng của Microsoft Office, tuy nhiên đến ngay cả các phiên bản Office khác nhau cũng không hiển thị được chuẩn xác nên OnlyOffice hay Collabora Online cũng không thể hơn được. Do đó việc hỗ trợ tốt hơn hay không với định dạng của Microsoft Office cũng không có ý nghĩa lắm.
  • Collabora Online hỗ trợ rất nhiều định dạng tệp, đặc biệt là hỗ trợ rất tốt định dạng ODF của LibreOffice, mà hiện tại mình chỉ còn sử dụng LibreOffice cho nhu cầu cá nhân => đây là lý do chính mà mình chuyển qua Collabora Online.

Bước 1: Cài Collabora Online từ Repo

echo 'deb https://www.collaboraoffice.com/repos/CollaboraOnline/CODE-ubuntu2204 ./' | sudo tee /etc/apt/sources.list.d/collabora.list

Sau đó chạy lệnh sau để tải xuống và nhập khóa công khai Collabora Online, khóa này cho phép trình quản lý gói APT xác minh tính toàn vẹn của các gói được tải xuống từ kho lưu trữ này.

apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 0C54D189F4BA284D

Vì kho lưu trữ này sử dụng kết nối HTTPS nên cần cài đặt gói apt-transport-https và ca-certificates để trình quản lý gói APT có thể thiết lập kết nối an toàn đến kho lưu trữ.

apt install apt-transport-https ca-certificates

Cập nhập package và cài đặt

apt update
apt install coolwsd code-brand

Bước 2: Cấu hình Collabora Online WebSocket Daemon

Sau khi cài đặt xong, bạn có thể kiểm tra trạng thái của coolwsd bằng lệnh

systemctl status coolwsd

Theo mặc định, coolwsd cho phép kết nối TLS. Tuy nhiên, nó không tìm thấy tệp chứng chỉ TLS, do đó khởi động không thành công. Tốt hơn hết là tắt TLS trong coolwsd và sử dụng TLS ở Reverse Proxy. Tệp cấu hình coolwsd được đặt tại /etc/coolwsd/coolwsd.xml. Tuy nhiên, đây là một tệp XML, không dễ đọc và chỉnh sửa. Chúng ta có thể sử dụng công cụ coolconfig để thay đổi cấu hình.

Chạy lệnh sau để tắt TLS trong coolwsd.

sudo coolconfig set ssl.enable false
#Và kích hoạt ngưng TSL trong Reverse Proxy
#coolconfig set ssl.termination true

Theo mặc định, coolwsd chỉ cho phép các máy chủ đã biết truy cập dịch vụ của mình. Để cho phép Nextcloud truy cập dịch vụ, hãy chạy lệnh sau để thêm tên máy chủ Nextcloud của bạn vào whitelist.

coolconfig set storage.wopi.host nextcloud.itvn.xyz

Bật tài khoản quản trị cho coolwsd với lệnh sau. Bạn sẽ cần cài tên đăng nhập và mật khẩu cho tài khoản quản trị này.

sudo coolconfig set-admin-password
systemctl restart coolwsd

systemctl enable coolwsd

Bước 3: Cài đặt Reverse Proxy

vi /etc/nginx/conf.d/collabora.conf

Thêm vào, thay itvn.xyz bằng domain của bạn nhé

server {
listen 80;
listen [::]:80;
server_name collabora.itvn.xyz;

error_log /var/log/nginx/collaboraoffice.error;
access_log /var/log/nginx/collaboraoffice.access;

# static files
location ^~ /browser {
proxy_pass http://127.0.0.1:9980;
proxy_set_header Host $http_host;
}

# WOPI discovery URL
location ^~ /hosting/discovery {
proxy_pass http://127.0.0.1:9980;
proxy_set_header Host $http_host;
}

# Capabilities
location ^~ /hosting/capabilities {
proxy_pass http://127.0.0.1:9980;
proxy_set_header Host $http_host;
}

# main websocket
location ~ ^/cool/(.*)/ws$ {
proxy_pass http://127.0.0.1:9980;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $http_host;
proxy_read_timeout 36000s;
}

# download, presentation and image upload
location ~ ^/(c|l)ool {
proxy_pass http://127.0.0.1:9980;
proxy_set_header Host $http_host;
}

# Admin Console websocket
location ^~ /cool/adminws {
proxy_pass http://127.0.0.1:9980;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $http_host;
proxy_read_timeout 36000s;
}
}


apt install certbot python3-certbot-nginx -y 
certbot -d collabora.itvn.xyz -m admin@itvn.xyz --agree-tos 
systemctl restart nginx

Config Nextcloud kết nối Collabora

vi /var/www/nextcloud/config/config.php

Thêm vào đoạn sau

'trusted_domains' =>
array (
0 => 'nextcloud.itvn.xyz',
),

Bước 4: tích hợp Collabora Online vào Nextcloud

Trong Nextcloud dashboard, vào phần Apps (https://nextcloud.itvn.xyz > settings >apps).
Tiếp theo, vào phần Office & Text, tìm Nextcloud Office app và click vào “Download and Enable” (Chú ý: tên ứng dụng Collabora Online đã được đổi tên thành Nextcloud Office)


Sau khi ứng dụng được vào, vào Nextcloud Settings -> Administration -> chọn Nextcloud Office. Mặc định, Nextcloud sử dụng “built-in CODE server”, nó không được phù hợp lắm (mà mình cũng thử dùng tuy nhiên …không cài được). Lựa chọn “Use your own server” và nhập vào domain của Collabora Online của bạn (chú ý: bao gồm cả https:// prefix) và nhấn Save.

Check thử 1 file word tải lên

Như vậy Nhân Hòa đã hướng dẫn các bạn cài Nextcloud Office tích hợp vào Next Cloud.

Hẹn gặp lại các bạn tại các bài viết sau tại wiki.nhanhoa.com

Trả lời