Cách cài đặt SOGo Groupware trên Debian 10

theanh

Administrator
Nhân viên
SOGo là một máy chủ nhóm cộng tác, mã nguồn mở và miễn phí được phát hành theo GNU GPL/LGPL v2 trở lên. Nó đi kèm với một giao diện dựa trên web đơn giản và dễ sử dụng và hỗ trợ nhiều máy khách gốc. Nó cung cấp hỗ trợ Microsoft ActiveSync gốc và cũng hỗ trợ các thiết bị di động như Apple iPhone, Android, Windows Phone và BlackBerry.

Tính năng
  • Hỗ trợ nhiều ngôn ngữ.
  • Chia sẻ thư, lịch và sổ địa chỉ của bạn với những người dùng khác.
  • Đặt báo thức cho các sự kiện quan trọng và nhận thông báo trực tiếp từ trình duyệt của bạn.
  • Nhận thông báo trên màn hình.
  • Soạn thư HTML bằng trình soạn thảo văn bản phong phú nội tuyến hoàn chỉnh.
  • Hỗ trợ nhiều tài khoản thư.
  • Nhập và xuất lịch và hộp thư.
  • Hỗ trợ xác thực hai yếu tố.
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt máy chủ nhóm SOGo trên Debian 10.

Điều kiện tiên quyết​

  • Máy chủ chạy Debian 10.
  • Máy chủ được cấu hình mật khẩu gốc.

Bắt đầu​

Trước khi bắt đầu, bạn nên cập nhật và nâng cấp máy chủ lên phiên bản mới nhất. Bạn có thể thực hiện bằng cách chạy lệnh sau:
Mã:
apt-get update -y
apt-get upgrade -y
Sau khi máy chủ được cập nhật, hãy khởi động lại để áp dụng tất cả các thay đổi.

Cài đặt và cấu hình MariaDB​

SOGo sử dụng MariaDB/MySQL làm cơ sở dữ liệu phụ trợ. Vì vậy, bạn sẽ cần cài đặt nó trong máy chủ của mình. Bạn có thể cài đặt bằng cách chỉ cần chạy lệnh sau:
Mã:
apt-get install mariadb-server -y
Sau khi MariaDB được cài đặt, bạn sẽ cần bảo mật cài đặt MariaDB. Bạn có thể thực hiện bằng cách chạy tập lệnh sau:
Mã:
mysql_secure_installation
Trả lời tất cả các câu hỏi như hiển thị bên dưới để đặt mật khẩu gốc:
Mã:
Nhập mật khẩu hiện tại cho gốc (nhập nếu không có):OK, mật khẩu đã sử dụng thành công, tiếp tục...Đặt mật khẩu gốc? [C/N] CXóa người dùng ẩn danh? [C/N] CKhông cho phép đăng nhập gốc từ xa? [C/N] CXóa cơ sở dữ liệu thử nghiệm và quyền truy cập vào cơ sở dữ liệu đó? [C/N] CTải lại bảng đặc quyền ngay bây giờ? [Y/n] Y
Sau khi MariaDB của bạn được bảo mật, hãy đăng nhập vào MariaDB bằng lệnh sau:
Mã:
mysql
Sau khi đăng nhập, hãy tạo cơ sở dữ liệu và người dùng cho SOGo bằng lệnh sau:
Mã:
MariaDB [(none)]> CREATE DATABASE sogo;
MariaDB [(none)]> GRANT ALL ON sogo.* TO 'sogo'@'localhost' IDENTIFIED BY 'password';
Tiếp theo, hãy thay đổi cơ sở dữ liệu thành SOGo và tạo một bảng bắt buộc rồi chèn một số giá trị bằng lệnh sau:
Mã:
MariaDB [(none)]> USE sogo;
MariaDB [sogo]> TẠO BẢNG sogo_users (c_uid VARCHAR(10) KHÓA CHÍNH, c_name VARCHAR(10), c_password VARCHAR(32), c_cn VARCHAR(128), mail VARCHAR(128));
MariaDB [sogo]> CHÈN VÀO sogo_users VALUES ('admin', 'admin', MD5('password'), 'Hitesh', '[emailprotected]');
Tiếp theo, xóa các đặc quyền và thoát khỏi MariaDB bằng lệnh sau:
Mã:
MariaDB [sogo]> xóa các đặc quyền;
MariaDB [sogo]> exit;
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cài đặt SOGo​

Theo mặc định, SOGo không có trong kho lưu trữ mặc định của Debian 10 nên bạn sẽ cần tải xuống từ trang web chính thức của họ. Bạn có thể xem tất cả các gói tạiTrang tải xuống SopeTrang tải xuống SogoBạn cũng có thể tải xuống thủ công bằng lệnh sau:
Mã:
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sogo/sogo_5.0.1.20201110-1_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sogo/sogo-activesync_5.0.1.20201110-1_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sogo/sogo-dbg_5.0.1.20201110-1_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sogo/sogo-dev_5.0.1.20201110-1_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsbjson2.3-dev_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsbjson2.3_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-appserver4.9-dev_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-appserver4.9_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-core4.9-dev_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-core4.9_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-gdl1-4.9-dev_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-gdl1-4.9_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-ldap4.9-dev_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-ldap4.9_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-mime4.9-dev_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-mime4.9_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-xml4.9-dev_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-xml4.9_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope4.9-dev_4.9.r1664.20201103_all.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-appserver_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-dbg_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-gdl1-mysql_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-gdl1-postgresql_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-libxmlsaxdriver_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-stxsaxdriver_4.9.r1664.20201103_amd64.deb
Sau khi tải xuống tất cả các gói, hãy cài đặt tất cả chúng bằng cách chạy lệnh sau:
Mã:
dpkg -i *.deb
Sau khi chạy lệnh trên, bạn sẽ nhận được lỗi phụ thuộc. Bạn có thể cài đặt tất cả các phụ thuộc bị thiếu bằng cách chạy lệnh sau:
Mã:
apt-get install -f
Sau khi tất cả các phụ thuộc được cài đặt, hãy khởi động dịch vụ SOGo và cho phép nó khởi động khi khởi động lại hệ thống bằng lệnh sau:
Mã:
systemctl start sogo
systemctl enable sogo
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cài đặt và cấu hình Apache Web Server​

Tiếp theo, bạn sẽ cần cài đặt và cấu hình máy chủ web Apache để phục vụ SOGo thông qua cổng 80. Bạn có thể cài đặt nó bằng cách chạy lệnh sau:
Mã:
apt-get install apache2 -y
Sau khi máy chủ web Apache được cài đặt, hãy chạy lệnh sau để kích hoạt tất cả các mô-đun cần thiết:
Mã:
a2enmod proxy proxy_http headers rewrite
Tiếp theo, hãy kích hoạt Tệp máy chủ ảo mặc định của SOGo với lệnh sau:
Mã:
a2enconf SOGo.conf
Tiếp theo, bạn sẽ cần chỉnh sửa tệp cấu hình máy chủ ảo SOGo và thay thế kết nối https bằng http và 443 bằng cổng 80:
Mã:
nano /etc/apache2/conf-enabled/SOGo.conf
Tìm các dòng sau:
Mã:
RequestHeader set "x-webobjects-server-port" "443" RequestHeader set "x-webobjects-server-url" "https://%{HTTP_HOST}e" env=HTTP_HOST
Và thay thế chúng bằng lệnh sau:
Mã:
RequestHeader set "x-webobjects-server-port" "80" RequestHeader set "x-webobjects-server-url" "http://%{HTTP_HOST}e" env=HTTP_HOST
Lưu và đóng tệp sau đó kiểm tra máy chủ Apache xem có lỗi cú pháp nào không bằng cách chạy lệnh sau:
Mã:
apachectl configtest
Nếu mọi thứ đều ổn, bạn sẽ nhận được kết quả sau:
Mã:
Cú pháp OK
Cuối cùng, khởi động lại dịch vụ Apache để áp dụng các thay đổi:
Mã:
systemctl restart apache2
Bạn cũng có thể xác minh trạng thái của dịch vụ Apache bằng lệnh sau:
Mã:
systemctl status apache2
Bạn sẽ nhận được kết quả sau:
Mã:
? apache2.service - Máy chủ HTTP Apache Đã tải: đã tải (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thu 2020-11-12 04:17:37 UTC; 14 giây trước Tài liệu: https://httpd.apache.org/docs/2.4/ Tiến trình: 15278 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) PID chính: 15282 (apache2) Nhiệm vụ: 55 (giới hạn: 4701) Bộ nhớ: 17,2M CGroup: /system.slice/apache2.service ??15282 /usr/sbin/apache2 -k start ??15283 /usr/sbin/apache2 -k start ??15284 /usr/sbin/apache2 -k start12 tháng 11 04:17:37 debian10 systemd[1]: Đang khởi động Máy chủ HTTP Apache...
Lúc này, máy chủ web Apache đã được cài đặt và cấu hình. Bây giờ bạn có thể tiến hành bước tiếp theo.

Cấu hình SOGo​

Tiếp theo, bạn sẽ cần cấu hình SOGo để sử dụng MariaDB để xác thực, xác định cấu hình SOGo, thư mục OCS, phiên COS và tên siêu người dùng. Bạn có thể thực hiện bằng cách chỉnh sửa tệp cấu hình chính của SOGo:
Mã:
nano /etc/sogo/sogo.conf
Thêm các dòng sau trước dòng cuối cùng }:
Mã:
SOGoProfileURL = "mysql://sogo:password@localhost:5432/sogo/sogo_user_profile";OCSSFolderInfoURL = "mysql://sogo:password@localhost:5432/sogo/sogo_folder_info";OCSSessionsFolderURL = "mysql://sogo:password@localhost:5432/sogo/sogo_sessions_folder";SOGoPasswordChangeEnabled = CÓ;SOGoUserSources = ( { type = sql; id = users; viewURL = "mysql://sogo:[emailprotected]:3306/sogo/sogo_users"; canAuthenticate = CÓ; isAddressBook = KHÔNG; userPasswordAlgorithm = md5; } ); SOGoPageTitle = SOGo; SOGoVacationEnabled = CÓ; SOGoForwardEnabled = CÓ; SOGoSieveScriptsEnabled = CÓ; SOGoMailAuxiliaryUserAccountsEnabled = CÓ; SOGoTrustProxyAuthentication = KHÔNG; SOGoXSRFValidationEnabled = CÓ; SOGoSuperUsernames = (admin); // Đây là một mảng - giữ nguyên dấu ngoặc đơn!
Lưu và đóng tệp khi bạn hoàn tất, sau đó khởi động lại dịch vụ SOGo để áp dụng các thay đổi:
Mã:
systemctl restart sogo
Bây giờ bạn có thể xác minh trạng thái của dịch vụ SOGo bằng cách chạy lệnh sau:
Mã:
systemctl status sogo
Bạn sẽ nhận được đầu ra sau:
Mã:
? sogo.service - LSB: Máy chủ SOGo Đã tải: đã tải (/etc/init.d/sogo; đã tạo) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thu 2020-11-12 04:19:00 UTC; 3 giây trước Tài liệu: man:systemd-sysv-generator(8) Quy trình: 15422 ExecStart=/etc/init.d/sogo start (code=exited, status=0/SUCCESS) Nhiệm vụ: 4 (giới hạn: 4701) Bộ nhớ: 44,9M CGroup: /system.slice/sogo.service ??15493 /usr/sbin/sogod -WOWorkersCount 3 -WOPidFile /var/run/sogo/sogo.pid -WOLogFile /var/log/sogo/sogo.log ??15495 /usr/sbin/sogod -WOWorkersCount 3 -WOPidFile /var/run/sogo/sogo.pid -WOLogFile /var/log/sogo/sogo.log ??15496 /usr/sbin/sogod -WOWorkersCount 3 -WOPidTệp /var/run/sogo/sogo.pid -WOLogFile /var/log/sogo/sogo.log ??15497 /usr/sbin/sogod -WOWorkersCount 3 -WOPidFile /var/run/sogo/sogo.pid -WOLogFile /var/log/sogo/sogo.log12/11 04:19:00 debian10 systemd[1]: Đang khởi động LSB: máy chủ SOGo...12/11 04:19:00 debian10 sogo[15422]: Đang khởi động SOGo: sogo.12/11 04:19:00 debian10 systemd[1]: Đã khởi động LSB: máy chủ SOGo.
Lúc này, SOGo đã khởi động và đang lắng nghe trên cổng 20000. Bạn có thể kiểm tra bằng lệnh sau:
Mã:
ss -ntpl | grep -i sogo
Bạn sẽ nhận được kết quả đầu ra sau:
Mã:
LISTEN 0 5 127.0.0.1:20000 0.0.0.0:* users:(("sogod",pid=15497,fd=3),("sogod",pid=15496,fd=3),("sogod",pid=15495,fd=3),("sogod",pid=15493,fd=3))
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Truy cập Giao diện web SOGo​

Bây giờ, hãy mở trình duyệt web của bạn và nhập URL để truy cập Giao diện người dùng web SOGo. Bạn sẽ được chuyển hướng đến trang sau:


Cung cấp tên người dùng quản trị của bạn là admin và mật khẩu là "password" sau đó nhấp vào nút >. Bạn sẽ thấy bảng điều khiển mặc định của SOGo ở trang sau:


Kết luận​

Xin chúc mừng! bạn đã cài đặt và cấu hình thành công phần mềm nhóm SOGo với Apache trên Debian 10. Bây giờ bạn có thể khám phá SOGo để biết thêm nhiều tính năng và triển khai nó trong môi trường sản xuất của mình. Hãy thoải mái hỏi tôi nếu bạn có bất kỳ câu hỏi nào.
 
Back
Bên trên