Jak zainstalować serwer dokumentów ONLYOFFICE na CentOS 7
Community Server ONLYOFFICE to wielofunkcyjny pakiet biurowy z interfejsem internetowym, który można zainstalować na dowolnym serwerze Linux. To pakiet biurowy i produktywny typu open source, zintegrowany z systemem CRM, serwerem dokumentów, narzędziami do zarządzania projektami i agregatorem wiadomości e-mail.
ONLYOFFICE Document Server to pakiet biurowy online typu open source, taki jak „Office Online” oferowany przez Microsoft. Jest to pakiet biurowy online do przeglądania i edycji tekstu, arkuszy kalkulacyjnych i prezentacji. Serwer dokumentów ONLYOFFICE jest w pełni kompatybilny z formatami Open XML, takimi jak .docx, .xlsx i .pptx. Dzięki Document Server możesz włączyć edycję grupową dla swojego zespołu w czasie rzeczywistym.
Serwer dokumentów ONLYOFFICE można zainstalować na dwa sposoby. Możemy zainstalować go za pomocą Dockera lub zainstalować ręcznie na serwerze Linux. W tym samouczku przeprowadzimy Cię przez proces ręcznego instalowania i konfigurowania „serwera dokumentów ONLYOFFICE” na serwerze Linux CentOS 7. Serwer dokumentów zainstalujemy w bazie danych Postgres z Nginx jako serwerem WWW.
Wymagania wstępne
- OS - 64-bitowy serwer Ubuntu CentOS 7 z jądrem 3.13 lub nowszym
- RAM - 2 GB lub więcej - użyj 4 GB
- HDD - co najmniej 2 GB wolnego miejsca
Co zrobimy
- Zainstaluj Epel Repository i przygotuj system operacyjny
- Zainstaluj i skonfiguruj PostgreSQL
- Utwórz bazę danych dla serwera dokumentów ONLYOFFICE
- Zainstaluj Nodejs
- Install Redis Server
- Zainstaluj i skonfiguruj serwer RabbitMQ
- Zainstaluj i skonfiguruj serwer dokumentów ONLYOFFICE
- Generuj nowe certyfikaty SSL Letsencrypt
- Włącz serwer HTTPS dla serwera dokumentów ONLYOFFICE
- Konfiguruj zaporę ogniową
- Testowanie
Krok 1 - Zainstaluj repozytorium Epel i przygotowanie systemu operacyjnego
W tym kroku zainstalujemy w systemie repozytorium CentOS firmy Epos (Extra Packages for Enterprise Linux). Zainstaluj repozytorium Epel za pomocą poniższej komendy yum.
yum -y install epel-release
W przypadku instalacji serwera dokumentów ONLYOFFICE musimy wyłączyć SELinux (Linux z ulepszonym zabezpieczeniem), edytując plik konfiguracyjny „/etc/sysconfig/selinux” .
Disable SELinux, edytując plik konfiguracyjny za pomocą vima.
vim /etc/sysconfig/selinux
Zmień wartość „selinux” na „ disabled ”.
selinux=disabled
Zapisz i wyjdź, a następnie uruchom ponownie serwer.
Jeśli wszystko jest zakończ, zaloguj się ponownie na serwerze i sprawdź status SELinuksa za pomocą polecenia „sestatus”.
sestatus
Upewnij się, że wynik jest „wyłączony”.
Krok 2 - Zainstaluj i skonfiguruj PostgreSQL
Serwer dokumentów może być zainstalowany z bazą danych MySQL i PostgreSQL. W tym samouczku użyjemy PostgreSQL zamiast MySQL. Zainstaluj bazę danych PostgreSQL z repozytorium za pomocą polecenia yum.
yum -y install postgresql.x86_64 postgresql-server.x86_64 postgresql-contrib.x86_64
Po zakończeniu instalacji musimy zainicjować bazę danych po raz pierwszy, uruchamiając poniższą konfigurację postgres.
postgresql-setup initdb
Teraz uruchom PostgreSQL i włącz ją aby uruchomić się automatycznie przy starcie systemu.
systemctl start postgresql
systemctl enable postgresql
Baza danych PostgreSQL będzie działać na adresie IP hosta lokalnego z domyślnym portem 5432 - sprawdź to poleceniem netstat.
netstat -plntu
Następnie musimy edytować plik uwierzytelniania Postgres pg_hba.conf za pomocą vim.
vim /var/lib/pgsql/data/pg_hba.conf
Zmień metodę uwierzytelniania dla localhost z „ident” na „trust”, jak poniżej. Umożliwia uwierzytelnianie z lokalnego serwera.
host all all 127.0.0.1/32 trust
host all all ::1/128 trust
Zapisz i wyjdź, a następnie uruchom ponownie usługę PostgreSQL.
systemctl restart postgresql
PostgreSQL Instalacja i konfiguracja została zakończona.
Krok 3 - Utwórz bazę danych dla Serwer dokumentów ONLYOFFICE
PostgreSQL został zainstalowany w systemie, a my utworzymy nową bazę danych i nowego użytkownika do instalacji serwera dokumentów ONLYOFFICE.
Zaloguj się do użytkownika „ postgres ” i uzyskaj dostęp do polecenia postgres narzędzie wiersza „psql”.
su – postgres
psql
Zmień hasło postgres na własne hasło i nie używaj domyślnego i łatwego hasła.
\password postgres
Enter new password:
Następnie utwórz nową bazę danych o nazwie „ onlyoffice ” za pomocą nazwa użytkownika „ onlyoffice ”, a hasło to onlyoffice123 @ „.
Utwórz wszystko, uruchamiając poniższe zapytania postgres.
create database onlyoffice;
create user onlyoffice with password ‘onlyoffice123@’ ;
grant all privileges on database onlyoffice to onlyoffice;
Nowa baza danych i użytkownik dla instalacji serwera dokumentów ma został utworzony.
Krok 4 - Zainstaluj serwer dokumentów Nodejs
ONLYOFFICE wymaga pakietu Nodejs v6.9.1 +. W tym samouczku zainstalujemy i użyjemy Nodejs v6.10 i można go zainstalować z repozytorium nodesource.com.
Dodaj repozytorium nodźródła z curl.
curl -sL https://rpm.nodesource.com/setup_6.x | sudo bash –
Dodano repozytorium Nodźs, teraz zainstaluj Nodejs z poleceniem yum poniżej.
yum install -y nodejs
A jeśli instalacja została zakończona, sprawdź wersję węzła za pomocą polecenia „node -v”.
node -v
Nodejs 6.10 zainstalowany w systemie do instalacji serwera dokumentów.
Krok 5 - Zainstaluj serwer Redis
Redis to trwała baza danych w pamięci. Używano magazynu danych klucz-wartość do buforowania i jest to oprogramowanie typu open source. Wymagana jest instalacja serwera dokumentów Redis do buforowania pamięci. Zainstaluj Redis z repozytorium za pomocą poniższej komendy yum.
yum -y install redis
Po zakończeniu instalacji uruchom ją i włącz automatycznie podczas uruchamiania.
systemctl start redis
systemctl enable redis
Domyślnie redis będzie działał pod localhost adres IP z portem 6379. Sprawdź status stanu portu za pomocą polecenia netstat i upewnij się, że stan to „LISTEN”.
netstat -plntu
Serwer Redis jest teraz zainstalowany na serwerze.
Krok 6 - Zainstaluj i Skonfiguruj serwer RabbitMQ
RabbitMQ to oprogramowanie brokera wiadomości typu open source, które implementuje protokół AMQP (Advanced Message Queuing Protocol). Jest napisany w języku Erlang, można go zainstalować w celu klastrowania i przełączania awaryjnego.
Serwer dokumentów wymaga RabbitMQ i musimy go zainstalować w systemie za pomocą polecenia yum.
yum -y install rabbitmq-server
Po zakończeniu instalacji zakończ, skonfiguruj serwer RabbitMQ, aby działał tylko na hoście lokalnym, tworząc nowy plik konfiguracyjny „rabbitmq-env.conf” w katalogu rabbitmq.
vim /etc/rabbitmq/rabbitmq-env.conf
Wklej konfigurację poniżej.
export RABBITMQ_NODENAME=rabbit@localhost export RABBITMQ_NODE_IP_ADDRESS=127.0.0.1 export ERL_EPMD_ADDRESS=127.0.0.1
Zapisz i wyjdź.
Uruchom serwer RabbitMQ i włącz go automatycznie przy każdym uruchomieniu systemu.
systemctl start rabbitmq-server
systemctl enable rabbitmq-server
Sprawdź instalację i konfigurację RabbitMQ, sprawdź za pomocą polecenia netstat, a zobaczysz, że serwer RabbitMQ działa pod adresem IP hosta lokalnego z portem 5672.
netstat -plntu
Następnie musimy utworzyć nowy królik użytkownik dla konfiguracji serwera dokumentów ONLYOFFICE. Utwórz nowego użytkownika onlyoffice z hasłem onlyoffice123 z poniższymi poleceniami rabbitmqctl.
rabbitmqctl add_user onlyoffice onlyoffice123
rabbitmqctl set_user_tags onlyoffice administrator
rabbitmqctl set_permissions -p / onlyoffice “.*” “.*” “.*”
Teraz sprawdź nowego użytkownika i upewnij się, że użytkownik onlyoffice jest dostępny na liście.
rabbitmqctl list_users
Instalacja i konfiguracja serwera RabbitMQ Server została zakończony. I tworzony jest nowy użytkownik królika dla serwera dokumentów.
Krok 7 - Zainstaluj i skonfiguruj serwer dokumentów ONLYOFFICE
Przed wykonaniem instalacji serwera dokumentów musimy zainstalować instalator czcionek Microsoft i dodać nowe najnowsze repozytorium Nginx.
Zainstaluj „Instalator czcionek Microsoft” za pomocą poniższego polecenia yum.
yum -y install https://downloads.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm
Dodaj nowe najnowsze repozytorium Nginx do katalogu „yum.repos.d”, tworząc nowy plik nginx.repo .
vim /etc/yum.repos.d/nginx.repo
Wklej konfigurację poniżej.
[nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/7/$basearch/ gpgcheck=0 enabled=1
Zapisz i wyjdź.
Następnie dodaj klucz GPG serwera dokumentów ONLYOFFICE.
rpm –import “http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x8320CA65CB2DE8E5”
I dodaj nowy plik repozytorium onlyoffice „ onlyoffice.repo ” plik.
vim /etc/yum.repos.d/onlyoffice.repo
Wklej poniżej repozytorium serwera dokumentów ONLYOFFICE.
[onlyoffice] name=onlyoffice repo baseurl=http://download.onlyoffice.com/repo/centos/main/noarch/ gpgcheck=1 enabled=1
Zapisz i zamknij, a następnie zainstaluj serwer dokumentów.
yum -y install onlyoffice-documentserver
Polecenie zainstaluje serwer dokumentów z serwerem WWW Nginx i kierownik kontroli procesu.
Uruchom usługi nginx i superwizora, a następnie włącz go automatycznie podczas uruchamiania.
systemctl start nginx
systemctl start supervisord
systemctl enable nginx
systemctl enable supervisord
Serwer dokumentów zainstalowany, teraz skonfiguruj go ex ecuting poniższe polecenie.
documentserver-configure.sh
Zostaniesz zapytany o bazę danych PostgreSQL.
- Host: localhost
- Nazwa bazy danych: onlyoffice
- Użytkownik: onlyoffice
- Hasło: onlyoffice123
@ Zostaniesz zapytany o redis konfiguracja. W tym samouczku redis działa pod adresem IP serwera zamiast pliku skarpety. Wpisz localhost i naciśnij „ Enter ”.
Na koniec zostaniesz zapytany o poświadczenie serwera RabbitMQ dla serwera dokumentów.
- Host: localhost: 5672
- Użytkownik: onlyoffice
- Hasło: onlyoffice123
Instalacja i konfiguracja serwera dokumentów ONLYOFFICE została zakończona.
Krok 8 - Wygeneruj nowe certyfikaty Letsencrypt SSL
Serwer dokumentów ONLYOFFICE będzie działał w ramach bezpiecznego połączenia HTTPS i musimy wygenerować nowe pliki certyfikatów SSL. W tym celu użyjemy bezpłatnego certyfikatu SSL z Letsencrypt.
Przed wygenerowaniem plików certyfikatów musimy zatrzymać usługi nginx i firewalld.
systemctl stop nginx
systemctl stop firewalld
Teraz zainstaluj „ certbot ” Klient Letsencrypt stworzony przez EFF ( Electronic Frontier Foundation) z repozytorium.
yum -y install certbot
Po zakończeniu instalacji wygeneruj nowe pliki certyfikatów dla nazwy domeny serwera dokumentów „ onlyoffice.hakase-labs.me ” za pomocą polecenia certbot poniżej.
certbot certonly –standalone -d onlyoffic.hakase-labs.me
Zostaniesz zapytany o swój adres e-mail, wpisz swój adres e-mail „hakase-labs @ gmail.com ”, a następnie zaakceptuj Warunki świadczenia usługi (TOS), wpisując„ A ”, a w celu udostępniania wiadomości e-mail wpisz„ N ”w przypadku numeru
Następnie wpisz nazwę domeny„ onlyoffice.hakase-labs.me ”i poczekaj na certbot generuje dla Ciebie pliki certyfikatów. Jeśli nie wystąpi błąd, zobaczysz wynik jak poniżej.
Nowe pliki certyfikatów są teraz dostępne w katalogu '/ etc / letsencrypt / live / '.
Następnie utwórz nowy katalog SSL i wygeneruj kopię pliki certyfikatów do katalogu SSL.
mkdir -p /etc/nginx/ssl
cd /etc/nginx/ssl/
Skopiuj pliki certyfikatów „ fullchain.pem ” i „ privkey.pem ” do katalogu SSL.
cp /etc/letsencrypt/live/onlyoffice.irsyadf.me/fullchain.pem .
cp /etc/letsencrypt/live/onlyoffice.irsyadf.me/privkey.pem .
Następnie wygeneruj Plik DHPARAM, aby zwiększyć bezpieczeństwo dzięki poniższej komendzie OpenSSL.
openssl dhparam -out dhparam.pem 2048
Po zakończeniu wszystkiego zmień uprawnienia wszystkich plików certyfikatów na 600.
chmod 600 *
Pliki certyfikatów SSL i wygenerowany plik DHPARAM.
Krok 9 - Włącz HTTPS dla serwera dokumentów ONLYOFFICE
Konfiguracja wirtualnego hosta dla serwera dokumentów jest dostępna w katalogu „conf.d” i jest automatycznie tworzona podczas instalacji.
Przejdź do katalogu „conf.d” nginx.
cd /etc/nginx/conf.d/
Wykonaj kopię zapasową konfiguracji wirtualnego hosta bez protokołu SSL i skopiuj nowy wirtualny host szablonu SSL dla serwera dokumentów „onlyoffice-documentserver-ssl.conf”.
mv onlyoffice-documentserver.conf onlyoffice-documentserver.conf.backup
cp onlyoffice-documentserver-ssl.conf.template onlyoffice-documentserver-ssl.conf
Edytuj v Rzeczywisty plik SSL hosta z vimem.
vim onlyoffice-documentserver-ssl.conf
Zmień wartość server_name na linię domeny 7.
server_name onlyoffice.irsyadf.me;
Dodaj nową konfigurację poniżej wiersza „29”, podaj nazwę serwera o wartości jako nazwę domeny.
server_name onlyoffice.irsyadf.me;
Zmień ścieżkę plików SSL na linię 37-38 katalogu plików certyfikatów i wyłącz pliki certyfikatów SSL po stronie klienta, jak poniżej.
ssl_certificate /etc/nginx/ssl/fullchain.pem; ssl_certificate_key /etc/nginx/ssl/privkey.pem; #ssl_verify_client {{SSL_VERIFY_CLIENT}}; #ssl_client_certificate {{CA_CERTIFICATES_PATH}};
Dla linii konfiguracji HSTS 44 podaj maksymalny wiek nowa wartość.
add_header Strict-Transport-Security max-age=31536000;
W przypadku pliku DHPARAM przejdź do wiersza katalogu ścieżki 68.
ssl_dhparam /etc/nginx/ssl/dhparam.pem;
Zapisz i wyjdź.
Następnie przetestuj plik konfiguracyjny i upewnij się, że nie wystąpił błąd, a następnie uruchom ponownie usługa nginx.
nginx -t
systemctl restart nginx
HTTPS dla serwera dokumentów ONLYOFFICE jest włączony.
Krok 10 - Skonfiguruj Firewalld
Jeśli nie masz Firewalld na swoim serwerze, zainstaluj go za pomocą poniższej komendy.
yum -y install firewalld
Po zakończeniu instalacji uruchom go i dodaj, aby uruchamiał się automatycznie podczas uruchamiania.
systemctl start firewalld
systemctl enable firewalld
Następnie dodaj nowe usługi HTTP i HTTPS do konfiguracji zapory za pomocą polecenia „ firewall-cmd ” .
firewall-cmd –permanent –add-service=http
firewall-cmd –permanent –add-service=https
Przeładuj firewa Sprawdź konfigurację, sprawdź wszystkie dostępne usługi i upewnij się, że HTTP i HTTPS znajdują się na listach.
firewall-cmd –reload
firewall-cmd –list-all
Konfiguracja serwera zapory dla serwera dokumentów została zakończona.
Krok 11 - Testowanie
Otwórz przeglądarkę internetową, odwiedź Nazwa domeny serwera dokumentów „onlyoffice.hakase-labs.me”, a nastąpi przekierowanie do bezpiecznego połączenia HTTPS. I upewnij się, że wynik jest taki, jak pokazano poniżej.
Udało nam się zainstalować serwer dokumentów ONLYOFFICE z PostgreSQL jako bazą danych i Nginx jako serwer WWW korzystający z systemu CentOS 7.