SOGoは、GNU GPL /LGPLv2以降でリリースされた無料のオープンソースの共同グループウェアサーバーです。シンプルで使いやすいWebベースのインターフェイスが付属し、複数のネイティブクライアントをサポートします。ネイティブのMicrosoftActiveSyncサポートを提供し、Apple iPhone、Android、Windows Phone、BlackBerryなどのモバイルデバイスもサポートします。
機能
- 複数の言語をサポートします。
- メール、カレンダー、名簿を他のユーザーと共有します。
- 重要なイベントにアラームを設定し、ブラウザから直接アラートを受け取ります。
- デスクトップ通知を受信します。
- 完全なインラインリッチテキストエディタを使用してHTMLメールを作成します。
- 複数のメールアカウントをサポートします。
- カレンダーとメールボックスをインポートおよびエクスポートします。
- 2要素認証をサポートします。
このチュートリアルでは、Debian10にSOGoグループウェアサーバーをインストールする方法を紹介します。
- Debian10を実行しているサーバー。
- ルートパスワードがサーバーに設定されます。
開始する前に、サーバーを更新して最新バージョンにアップグレードすることをお勧めします。次のコマンドを実行することでそれを行うことができます:
apt-get update -y
apt-get upgrade -y
サーバーが更新されたら、サーバーを再起動してすべての変更を適用します。
MariaDBのインストールと構成
SOGoは、MariaDB/MySQLをデータベースバックエンドとして使用します。したがって、サーバーにインストールする必要があります。次のコマンドを実行するだけでインストールできます:
apt-get install mariadb-server -y
MariaDBをインストールしたら、MariaDBのインストールを保護する必要があります。次のスクリプトを実行することでそれを行うことができます:
mysql_secure_installation
以下に示すようにすべての質問に答えて、ルートパスワードを設定します。
Enter current password for root (enter for none): OK, successfully used password, moving on... Set root password? [Y/n] Y Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
MariaDBが保護されたら、次のコマンドを使用してMariaDBにログインします。
mysql
ログインしたら、次のコマンドを使用してSOGoのデータベースとユーザーを作成します。
MariaDB [(none)]> CREATE DATABASE sogo;
MariaDB [(none)]> GRANT ALL ON sogo.* TO 'sogo'@'localhost' IDENTIFIED BY 'password';
次に、データベースをSOGoに変更し、必要なテーブルを作成して、次のコマンドでいくつかの値を挿入します。
MariaDB [(none)]> USE sogo;
MariaDB [sogo]> CREATE TABLE sogo_users (c_uid VARCHAR(10) PRIMARY KEY, c_name VARCHAR(10), c_password VARCHAR(32), c_cn VARCHAR(128), mail VARCHAR(128));
MariaDB [sogo]> INSERT INTO sogo_users VALUES ('admin', 'admin', MD5('password'), 'Hitesh', '[email protected]');
次に、特権をフラッシュし、次のコマンドでMariaDBを終了します。
MariaDB [sogo]> flush privileges;
MariaDB [sogo]> exit;
終了したら、次のステップに進むことができます。
SOGoをインストールする
デフォルトでは、SOGoはDebian 10のデフォルトリポジトリでは利用できないため、公式Webサイトからダウンロードする必要があります。すべてのパッケージは、SopeダウンロードページとSogoダウンロードページで確認できます。次のコマンドを使用して手動でダウンロードすることもできます。
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
すべてのパッケージがダウンロードされたら、次のコマンドを実行してすべてのパッケージをインストールします。
dpkg -i *.deb
上記のコマンドを実行すると、依存関係エラーが発生します。次のコマンドを実行して、不足しているすべての依存関係をインストールできます。
apt-get install -f
すべての依存関係がインストールされたら、次のコマンドを使用してSOGoサービスを開始し、システムの再起動時に開始できるようにします。
systemctl start sogo
systemctl enable sogo
終了したら、次のステップに進むことができます。
ApacheWebサーバーのインストールと構成
次に、ポート80を介してSOGoを提供するようにApache Webサーバーをインストールして構成する必要があります。次のコマンドを実行してインストールできます:
apt-get install apache2 -y
Apache Webサーバーをインストールしたら、次のコマンドを実行して、必要なすべてのモジュールを有効にします。
a2enmod proxy proxy_http headers rewrite
次に、次のコマンドを使用してSOGoのデフォルトの仮想ホストファイルを有効にします。
a2enconf SOGo.conf
次に、SOGo仮想ホスト構成ファイルを編集し、https接続をhttpに、443をポート80に置き換える必要があります。
nano /etc/apache2/conf-enabled/SOGo.conf
次の行を見つけます:
RequestHeader set "x-webobjects-server-port" "443" RequestHeader set "x-webobjects-server-url" "https://%{HTTP_HOST}e" env=HTTP_HOST
そして、それらを次のものに置き換えました:
RequestHeader set "x-webobjects-server-port" "80" RequestHeader set "x-webobjects-server-url" "http://%{HTTP_HOST}e" env=HTTP_HOST
ファイルを保存して閉じ、次のコマンドを実行して、Apacheサーバーに構文エラーがないか確認します。
apachectl configtest
すべてが正常であれば、次の出力が得られるはずです:
Syntax OK
最後に、Apacheサービスを再起動して、変更を適用します。
systemctl restart apache2
次のコマンドを使用して、Apacheサービスのステータスを確認することもできます。
systemctl status apache2
次の出力が得られるはずです:
? apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2020-11-12 04:17:37 UTC; 14s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 15278 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 15282 (apache2) Tasks: 55 (limit: 4701) Memory: 17.2M CGroup: /system.slice/apache2.service ??15282 /usr/sbin/apache2 -k start ??15283 /usr/sbin/apache2 -k start ??15284 /usr/sbin/apache2 -k start Nov 12 04:17:37 debian10 systemd[1]: Starting The Apache HTTP Server...
この時点で、ApacheWebサーバーがインストールおよび構成されています。これで、次のステップに進むことができます。
SOGoを構成する
次に、認証にMariaDBを使用するようにSOGoを構成し、SOGoプロファイル、OCSフォルダー、COSセッション、およびスーパーユーザー名を定義する必要があります。 SOGoのメイン構成ファイルを編集することでそれを行うことができます:
nano /etc/sogo/sogo.conf
最後の行の前に次の行を追加します}:
SOGoProfileURL = "mysql://sogo:[email protected]:5432/sogo/sogo_user_profile"; OCSFolderInfoURL = "mysql://sogo:[email protected]:5432/sogo/sogo_folder_info"; OCSSessionsFolderURL = "mysql://sogo:[email protected]:5432/sogo/sogo_sessions_folder"; SOGoPasswordChangeEnabled = YES; SOGoUserSources = ( { type = sql; id = users; viewURL = "mysql://sogo:[email protected]:3306/sogo/sogo_users"; canAuthenticate = YES; isAddressBook = NO; userPasswordAlgorithm = md5; } ); SOGoPageTitle = SOGo; SOGoVacationEnabled = YES; SOGoForwardEnabled = YES; SOGoSieveScriptsEnabled = YES; SOGoMailAuxiliaryUserAccountsEnabled = YES; SOGoTrustProxyAuthentication = NO; SOGoXSRFValidationEnabled = YES; SOGoSuperUsernames = (admin); // This is an array - keep the parens!
終了したらファイルを保存して閉じ、SOGoサービスを再起動して変更を適用します。
systemctl restart sogo
次のコマンドを実行して、SOGoサービスのステータスを確認できるようになりました。
systemctl status sogo
次の出力が得られるはずです:
? sogo.service - LSB: SOGo server Loaded: loaded (/etc/init.d/sogo; generated) Active: active (running) since Thu 2020-11-12 04:19:00 UTC; 3s ago Docs: man:systemd-sysv-generator(8) Process: 15422 ExecStart=/etc/init.d/sogo start (code=exited, status=0/SUCCESS) Tasks: 4 (limit: 4701) Memory: 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 -WOPidFile /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.log Nov 12 04:19:00 debian10 systemd[1]: Starting LSB: SOGo server... Nov 12 04:19:00 debian10 sogo[15422]: Starting SOGo: sogo. Nov 12 04:19:00 debian10 systemd[1]: Started LSB: SOGo server.
この時点で、SOGoが開始され、ポート20000でリッスンしています。次のコマンドで確認できます。
ss -ntpl | grep -i sogo
次の出力が得られるはずです:
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))
終了したら、次のステップに進むことができます。
SOGoWebインターフェイスにアクセス
次に、Webブラウザーを開き、URL http:// your-server-ip / SOGoを入力します。 SOGoWebUIにアクセスします。次のページにリダイレクトされます:
管理者のユーザー名をadmin、パスワードを「password」として入力し、>をクリックします。 ボタン。次のページにSOGoのデフォルトのダッシュボードが表示されます。
おめでとう!これで、Debian 10上でApacheを使用してSOGoグループウェアを正常にインストールおよび構成できました。これで、SOGoを調べてその他の機能を探し、実稼働環境にデプロイできます。ご不明な点がございましたら、お気軽にお問い合わせください。