ONLYOFFICE Community Serverは、任意のLinuxサーバーにインストールできるWebベースのインターフェイスを備えた多機能オフィススイートです。これはオープンソースのオフィスおよび生産性スイートであり、CRMシステム、ドキュメントサーバー、プロジェクト管理ツール、および電子メールアグリゲーターと統合されています。
ONLYOFFICE Document Serverは、Microsoftが提供する「OfficeOnline」のようなオープンソースのオンラインオフィススイートです。テキスト、スプレッドシート、プレゼンテーションを表示および編集するためのオンラインオフィススイートです。 ONLYOFFICE Document Serverは、.docx、.xlsx、.pptxなどのOpenXML形式と完全に互換性があります。 Document Serverを使用すると、チームの共同編集をリアルタイムで有効にできます。
ONLYOFFICEドキュメントサーバーは2つの方法でインストールできます。 Docker経由でインストールすることも、Linuxサーバーに手動でインストールすることもできます。このチュートリアルでは、LinuxCentOS7サーバーに「ONLYOFFICEDocumentServer」を手動でインストールして構成する方法を説明します。 NginxをWebサーバーとしてPostgresデータベースの下にDocumentServerをインストールします。
前提条件
- OS –カーネル3.13以降を搭載したUbuntu CentOS764ビットサーバー
- RAM – 2GB以上–4GBを使用します
- HDD –少なくとも2GBの空き容量
私たちが行うこと
- EpelリポジトリをインストールしてOSを準備する
- PostgreSQLのインストールと構成
- ONLYOFFICEドキュメントサーバー用のデータベースを作成する
- Nodejsをインストールする
- Redisサーバーをインストールする
- RabbitMQサーバーのインストールと構成
- ONLYOFFICEドキュメントサーバーのインストールと構成
- 新しいSSLLetsencrypt証明書を生成する
- ONLYOFFICEドキュメントサーバーでHTTPSを有効にする
- Firewallを設定する
- テスト
ステップ1-EpelリポジトリをインストールしてOSを準備する
このステップでは、サードパーティのCentOSリポジトリEpel(Enterprise Linux用の追加パッケージ)リポジトリをシステムにインストールします。以下のyumコマンドを使用してEpelリポジトリをインストールします。
yum -y install epel-release
また、ONLYOFFICE Document Serverをインストールするには、構成ファイル「/ etc / sysconfig / selinux」を編集してSELinux(Security-Enhanced Linux)を無効にする必要があります。
vimで設定ファイルを編集してSELinuxを無効にします。
vim / etc / sysconfig / selinux
「selinux」の値を「無効」に変更します ‘。
selinux =disable
保存して終了し、サーバーを再起動します。
すべて完了したら、サーバーに再度ログインし、「sestatus」コマンドでSELinuxのステータスを確認してください。
sestatus
結果が「無効」になっていることを確認してください。
ステップ2–PostgreSQLのインストールと構成
Document Serverは、MySQLおよびPostgreSQLデータベースとともにインストールできます。このチュートリアルでは、MySQLの代わりにPostgreSQLを使用します。 yumコマンドを使用してリポジトリからPostgreSQLデータベースをインストールします。
yum -y install postgresql.x86_64 postgresql-server.x86_64 postgresql-contrib.x86_64
インストールが完了したら、以下のpostgresセットアップを実行してデータベースを初めて初期化する必要があります。
postgresql-setup initdb
次に、PostgreSQLを起動し、システムの起動時に自動的に起動を実行できるようにします。
systemctl start postgresql
systemctl enable postgresql
PostgreSQLデータベースはデフォルトポート5432のローカルホストIPアドレスで実行されます–netstatコマンドで確認してください。
netstat -plntu
次に、Postgres認証ファイルpg_hba.confをvimで編集する必要があります。
vim /var/lib/pgsql/data/pg_hba.conf
以下のように、ローカルホストの認証方法を「ident」から「trust」に変更します。これは、ローカルサーバーからの認証を許可するためのものです。
ホストすべてすべて127.0.0.1/32信頼
ホストすべてすべて::1/128>P
保存して終了し、PostgreSQLサービスを再起動します。
systemctl restart postgresql
PostgreSQLのインストールと構成が完了しました。
ステップ3–ONLYOFFICEドキュメントサーバーのデータベースを作成する
PostgreSQLがシステムにインストールされました。ONLYOFFICEドキュメントサーバーをインストールするための新しいデータベースと新しいユーザーを作成します。
「postgres」にログインします ‘ユーザーとpostgresコマンドラインツール‘psql’にアクセスします。
su – postgres
psql
postgresのパスワードを自分のパスワードに変更し、デフォルトの簡単なパスワードを使用しないでください。
\ password postgres
新しいパスワードを入力してください:
次に、「 onlyoffice」という名前の新しいデータベースを作成します ‘ユーザー名‘ onlyoffice ‘およびパスワードは‘[メール保護]’ 。
以下のpostgresクエリを実行してすべてを作成します。
データベースonlyofficeを作成します;
パスワード「[emailprotected]」でユーザーonlyofficeを作成します;
データベースonlyofficeのすべての権限をonlyofficeに付与します;
DocumentServerインストール用の新しいデータベースとユーザーが作成されました。
ステップ4–Nodejsをインストールする
ONLYOFFICEDocumentServerにはNodejsパッケージv6.9.1+が必要です。このチュートリアルではNodejsv6.10をインストールして使用します。これは、nodesource.comリポジトリからインストールできます。
curlを使用してNodejsノードソースリポジトリを追加します。
curl -sL https://rpm.nodesource.com/setup_6.x | sudo bash –
Nodesourceリポジトリが追加されました。次に、以下のyumコマンドを使用してNodejsをインストールしてください。
yum install -y nodejs
インストールが完了している場合は、「node-v」コマンドでノードのバージョンを確認してください。
node -v
DocumentServerをインストールするためにNodejs6.10がシステムにインストールされました。
ステップ5–Redisサーバーをインストールする
Redisは、ディスク上に永続的なインメモリデータベースです。キャッシュにKey-Valueデータストアを使用し、オープンソースです。ドキュメントサーバーのインストールは、メモリキャッシュのためにRedisが必要です。以下のyumコマンドを使用してリポジトリからRedisをインストールします。
yum -y install redis
インストールが完了したら、インストールを開始し、起動時に自動的に実行できるようにします。
systemctl start redis
systemctl enable redis
デフォルトでは、redisはポート6379のローカルホストIPアドレスで実行されます。netstatコマンドでポートの状態ステータスを確認し、状態ステータスが「LISTEN」であることを確認してください。
netstat -plntu
これで、Redisサーバーがサーバーにインストールされました。
ステップ6–RabbitMQサーバーのインストールと構成
RabbitMQは、AMQP(Advanced Message Queuing Protocol)を実装するオープンソースのメッセージブローカーソフトウェアです。 Erlang言語で記述されており、クラスタリングとフェイルオーバー用にインストールできます。
ドキュメントサーバーにはRabbitMQが必要であり、yumコマンドを使用してシステムにインストールする必要があります。
yum-yインストールrabbitmq-server
インストールが完了したら、rabbitmqディレクトリに新しい構成ファイル「rabbitmq-env.conf」を作成して、ローカルホストでのみ実行されるようにRabbitMQサーバーを構成します。
vim /etc/rabbitmq/rabbitmq-env.conf
以下に構成を貼り付けます。
export [email protected] export RABBITMQ_NODE_IP_ADDRESS=127.0.0.1 export ERL_EPMD_ADDRESS=127.0.0.1
保存して終了します。
RabbitMQサーバーを起動し、システムの起動時に毎回自動的に起動できるようにします。
systemctl startrabbitmq-server
systemctl enablerabbitmq-server
RabbitMQのインストールと構成を確認し、netstatコマンドで確認すると、RabbitMQサーバーがポート5672のローカルホストIPアドレスで実行されていることがわかります。
netstat -plntu
次に、ONLYOFFICEドキュメントサーバー構成用の新しいrabbitmqユーザーを作成する必要があります。以下のrabbitmqctlコマンドを使用して、パスワードonlyoffice123で新しいユーザーonlyofficeを作成します。
rabbitmqctl add_user onlyoffice onlyoffice123
javbitmqctl set_user_tags onlyofficeadministrator
rabitmqctl set_permissions -p / onlyoffice“。*”“。*”“。*”
次に、新しいユーザーをチェックし、リストに唯一のOfficeユーザーが含まれていることを確認します。
rabbitmqctl list_users
RabbitMQサーバーのインストールと構成が完了しました。そして、DocumentServerの新しいrabbitmqユーザーが作成されます。
ステップ7–ONLYOFFICEドキュメントサーバーのインストールと構成
Document Serverをインストールする前に、Microsoftフォントインストーラーをインストールし、新しい最新のNginxリポジトリを追加する必要があります。
以下のyumコマンドを使用して「Microsoftfontsinstaller」をインストールします。
yum -y install https://downloads.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm
新しいファイルnginx.repoを作成して、新しい最新のNginxリポジトリを「yum.repos.d」ディレクトリに追加します 。
vim /etc/yum.repos.d/nginx.repo
以下に構成を貼り付けます。
[nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/7/$basearch/ gpgcheck=0 enabled=1
保存して終了します。
次に、ONLYOFFICE DocumentServerGPGキーを追加します。
rpm –import“ http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x8320CA65CB2DE8E5”
そして、新しいonlyofficeリポジトリファイル「 onlyoffice.repo」を追加します ‘ファイル。
vim /etc/yum.repos.d/onlyoffice.repo
以下にONLYOFFICEドキュメントサーバーリポジトリを貼り付けます。
[onlyoffice] name=onlyoffice repo baseurl=http://download.onlyoffice.com/repo/centos/main/noarch/ gpgcheck=1 enabled=1
保存して終了し、ドキュメントサーバーをインストールします。
yum -y install onlyoffice-documentserver
このコマンドは、NginxWebサーバーとプロセス制御スーパーバイザーを備えたドキュメントサーバーをインストールします。
nginxと監視対象サービスを開始し、起動時に自動的に開始できるようにします。
systemctl start nginx
systemctl startsupervisord
systemctl enable nginx
systemctl enablesupervisord
ドキュメントサーバーがインストールされました。次のコマンドを実行して構成します。
documentserver-configure.sh
PostgreSQLデータベースについて尋ねられます。
- ホスト:ローカルホスト
- データベース名:onlyoffice
- ユーザー:onlyoffice
- パスワード:[メールで保護]
redisの設定について尋ねられます。このチュートリアルでは、redisはsockファイルではなくサーバーIPで実行されています。 localhostと入力し、「 Enter」を押します ‘。
最後に、ドキュメントサーバーのRabbitMQサーバークレデンシャルについて尋ねられます。
- ホスト:localhost:5672
- ユーザー:onlyoffice
- パスワード:onlyoffice123
ONLYOFFICEDocumentServerのインストールと構成が完了しました。
ステップ8–新しいSSLLetsencrypt証明書を生成する
ONLYOFFICEドキュメントサーバーはHTTPSセキュア接続で実行されるため、新しいSSL証明書ファイルを生成する必要があります。この目的のために、Letsencryptからの無料のSSL証明書を使用します。
証明書ファイルを生成する前に、nginxとfirewalldサービスを停止する必要があります。
systemctl stop nginx
systemctl stop Firewalld
次に、「 certbot」をインストールします ‘リポジトリからEFF(Electronic Frontier Foundation)によって作成されたLetsencryptクライアント。
yum -ycertbotをインストールする
インストールが完了したら、DocumentServerドメイン名「onlyoffice.hakase-labs.me」の新しい証明書ファイルを生成します ‘以下のcertbotコマンドを使用します。
certbot certonly –standalone -d onlyoffic.hakase-labs.me
メールについて尋ねられたら、メールアドレス「[emailprotected]」を入力し、「A」と入力して利用規約(TOS)に同意し、メール共有の場合は「N」と入力します。
次に、ドメイン名「onlyoffice.hakase-labs.me」を入力し、certbotが証明書ファイルを生成するのを待ちます。エラーがない場合は、次のような結果が表示されます。
新しい証明書ファイルが‘/ etc / letsencrypt / live /で利用できるようになりました ‘ディレクトリ。
次に、新しいSSLディレクトリを作成し、生成された証明書ファイルをSSLディレクトリにコピーします。
mkdir -p / etc / nginx / ssl
cd / etc / nginx / ssl /
「fullchain.pem」をコピーします ‘および‘ privkey.pem ‘SSLディレクトリへの証明書ファイル。
cp/etc/letsencrypt/live/onlyoffice.irsyadf.me/fullchain.pem。
cp/etc/letsencrypt/live/onlyoffice.irsyadf.me/privkey.pem。
次に、DHPARAMファイルを生成して、以下のOpenSSLコマンドでより安全にします。
openssl dhparam -out dhparam.pem 2048
すべてが完了したら、すべての証明書ファイルのアクセス許可を600に変更します。
chmod 600 *
SSL証明書ファイルとDHPARAMファイルが生成されました。
ステップ9–ONLYOFFICEドキュメントサーバーのHTTPSを有効にする
ドキュメントサーバーの仮想ホスト構成は「conf.d」ディレクトリから入手でき、インストール中に自動的に作成されます。
nginxの「conf.d」ディレクトリに移動してください。
cd /etc/nginx/conf.d/
非SSL仮想ホスト構成をバックアップし、ドキュメントサーバー「onlyoffice-documentserver-ssl.conf」の新しいSSLテンプレート仮想ホストをコピーします。
mv onlyoffice-documentserver.conf onlyoffice-documentserver.conf.backup
cp onlyoffice-documentserver-ssl.conf.template onlyoffice-documentserver-ssl.conf
vimで仮想ホストSSLファイルを編集します。
vim onlyoffice-documentserver-ssl.conf
server_nameの値をドメイン行7に変更します。
server_name onlyoffice.irsyadf.me;
行「29」の下に新しい構成を追加し、ドメイン名として値を指定してserver_nameを指定します。
server_name onlyoffice.irsyadf.me;
SSLファイルのパスを証明書ファイルディレクトリの37〜38行目に変更し、以下のようにクライアント側のSSL証明書ファイルを無効にします。
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}};
HSTS構成行44の場合、max-ageに新しい値を指定します。
add_header Strict-Transport-Security max-age=31536000;
また、DHPARAMファイルの場合は、パスディレクトリの68行目に変更します。
ssl_dhparam /etc/nginx/ssl/dhparam.pem;
保存して終了します。
次に、構成ファイルをテストしてエラーがないことを確認してから、nginxサービスを再起動します。
nginx -t
systemctl restart nginx
ONLYOFFICEドキュメントサーバーのHTTPSが有効になっています。
ステップ10–Firewalldを設定する
サーバーにFirewalldがない場合は、以下のコマンドを使用してインストールします。
yum-yはfirewalldをインストールします
インストールが完了したら、起動して追加し、起動時に自動的に実行します。
systemctl start Firewalld
systemctl enable Firewalld
次に、「 Firewall-cmd 」を使用して、新しいHTTPおよびHTTPSサービスをfirewalld構成に追加します。 ‘コマンド。
Firewall-cmd –permanent –add-service =http
Firewall-cmd –permanent –add-service =https
Firewalld構成をリロードし、利用可能なすべてのサービスをチェックして、HTTPとHTTPSがリストに含まれていることを確認します。
Firewall-cmd –reload
Firewall-cmd –list-all
ドキュメントサーバーのファイアウォール設定が完了しました。
ステップ11–テスト
Webブラウザを開き、ドキュメントサーバーのドメイン名「onlyoffice.hakase-labs.me」にアクセスすると、HTTPSセキュア接続にリダイレクトされます。そして、結果が以下のようになっていることを確認してください。
CentOS 7システムを使用して、データベースとしてPostgreSQLを使用し、WebサーバーとしてNginxを使用してONLYOFFICEDocumentServerを正常にインストールしました。
参照
- https://helpcenter.onlyoffice.com/server/linux/document/linux-installation-centos.aspx