CentOS 6.5のopenchangeをインストールして構成する

RuNetおよび一般的なインターネットでは、openchangeなどの興味深い製品についてはほとんど話されていません。
理論的には、openchangeとその関連コンポーネントはMS Exchange Serverを完全に置き換える必要がありますが、実際にはこれは完全には機能しません。
興味のある人は投稿自体に尋ねます。 そこで、CentOS 6.5へのインストールについて学びます。


製品は十分に未加工であり、大規模な組織には適さないとすぐに言います。

ソースデータ:
1)サブドメインと他のドメインとのさまざまな信頼関係を持つ大規模なドメイン。
2)大企業を別々の法人に分割することに関連して、独自の郵便が必要になりました。
3)ユーザーは、共有カレンダー、アドレス帳などの形式のグッズに慣れています。
解決策:postfix + dovecotを使用して、テストドメインでこのすべてのopenchangeを試してください。

設置


インストールはCentOSディストリビューションで行われ、iptablesとselinuxは無効になりました。
ADで許可されたPostfixおよびdovecotは、最初にインストールおよび構成されました。
インターネットには多くのインストールガイドがありますので、設定の詳細は説明しませんが、すぐに標準のリポジトリのみを使用したと言います。
内部トランスポートとしてlmtpが使用されます。
MAPIおよびIAMPを介して受信したメッセージを同期するには、LDAP構成に次の行を追加します。
passdb {
ドライバー=静的
args = nopassword = y allow_nets = 127.0.0.1 / 32
}

これは、dovecotでopenchangeを認証するために必要です。
次に、openchangeのインストールに直接進みます。
必要なリポジトリを接続します。
[sogo-rhel6]
名前=逆SOGoリポジトリ
baseurl = http://inverse.ca/downloads/SOGo/RHEL6/$basearch
gpgcheck = 0
有効化= 1

インストールを開始します。
yum install samba4 openchange sogo-openchange-backend openchange-ocsmanager openchange-rpcproxy sogo

mysqlはpostgresqlよりも大好きなので、sogoはmysqlで動作します。
さらに、mysqlとsogo用のコネクタを配置します
yum install mysql-server sope49-gdl1-mysql


Sambaのセットアップ


Windows ADでsamba4を接続します
samba-toolドメイン参加testmail.local DC -UAdministrator --realm = testmail.local

参加は自動で、管理者アカウントのパスワードを入力するだけです
/etc/samba4/smb.confに次の行を追加します
#OpenChangeサーバーの構成を開始
dcerpcエンドポイントサーバー= + epmapper、+ mapiproxy、+ dnsserver
dcerpc_mapiproxy:サーバー= true
dcerpc_mapiproxy:interfaces = exchange_emsmdb、exchange_nsp、exchange_ds_rfr
#OpenChange Server構成の終了

その後、sambaを起動します
samba -d 3 -i -M = single

念のため、このコマンドの意味を説明します。
-dはデバッグモードです。 数字の3はデバッグレベルを意味します
-iは対話式です。つまり、コンソールへのすべての出力
-M =フォークなしで適切な動作モードを選択します。
私が理解していない理由のため、sambaコマンドで実行しようとすると、samba4は必要なソケットを開きません。また、initスクリプトを使用すると、smb.confのこの構成での起動は通常拒否されます。
したがって、上記のコマンドで実行する必要がありますが、同時にnohupを介して完全にバックグラウンドに移動します。

開始後、レプリケーションを確認します。
samba-tool drs kcc -Uadministrator dcmail.testmail.local
samba-tool drs showrepl

その作業のために、openchangeはADスキーマをルールしますが、スキーマを所有している場合にのみそれを行います。
回路の権利をLinuxコントローラーに転送します。
samba-tool fsmo seize --role = schema

openchangeのセットアップを実行します
openchange_provision
openchange_provision --openchangedb

その後、sambaを再起動します

ocsmanagerのセットアップに移りましょう


vim /etc/ocsmanager/ocsmanager.ini
LDAP接続設定の変更
[メイン]
#可能な認証システム
auth = ldap
mapistore_root = / var / lib / samba4 / private
mapistore_data = / var / lib / samba4 / private / mapistore
デバッグ=いいえ

[auth:ldap]
#host = ldap:// localhost
ホスト= mail.testmail.local
ポート= 3268
bind_dn = CN =ユーザー、CN =ユーザー、DC =テストメール、DC =ローカル
bind_pw =パスワード
basedn = CN =ユーザー、dc =テストメール、dc =ローカル

[rpcproxy:ldap]
ホスト= mail.testmail.local
ポート= 389
basedn = CN =ユーザー、dc =テストメール、dc =ローカル

また、Sambaの場所を示します
SAMBA_HOST = 127.0.0.1

LDAPおよびSAMBA_HOST設定では、Windowsのドメインコントローラーを指定できますが、これは正しい操作には影響しません。
ocsmanagerを起動します
サービスopenchange-ocsmanager start

そごうセットアップ



データベースとユーザーを作成します。
CREATE DATABASE `sogo` CHARACTER SET = 'utf8';
CREATE USER 'sogo' @ 'localhost' IDENTIFIED BY 'sogo';
すべての特権を「sogo」に付与する*「sogo」@「localhost」に付与オプションを付与する。
フラッシュ特権;


config /etc/sogo/sogo.confを編集します

拠点の場所を示します
SOGoProfileURL = "mysql:// sogo:sogo @ localhost:3306 / sogo";
OCSFolderInfoURL = "mysql:// sogo:sogo @ localhost:3306 / sogo / sogo_folder_info";
OCSSessionsFolderURL = "mysql:// sogo:sogo @ localhost:3306 / sogo / sogo_sessions_folder";

文字のディレクトリの場所と、imapおよびpostfixサーバーを示します。
// SOGoDraftsFolderName = Drafts; しかし、この行のサンバでは、常に再現されるとは限らないエラーが発生したため、残念ながら下書きはゴミ箱に移動します。
SOGoDraftsFolderName =ゴミ箱;
SOGoSentFolderName =送信済み;
SOGoTrashFolderName =ゴミ箱;
SOGoIMAPServer = imaps:// localhost:993;
SOGoSMTPServer = 127.0.0.1;
SOGoMailDomain = testmail.local;
SOGoMailingMechanism = smtp;
SOGoForceExternalLoginWithEmail = NO;
SOGoMailSpoolPath = / var / spool / sogo;
NGImap4ConnectionStringSeparator = "/";

LDAPサーバーの場所を指定する
SOGoUserSources =(
{
タイプ= ldap;
CNFieldName = cn;
UIDFieldName = sAMAccountName;
baseDN = "CN =ユーザー、DC =テストメール、DC =ローカル";
bindDN = "CN =ユーザー、CN =ユーザー、DC =テストメール、DC =ローカル";
bindFields =(sAMAccountName、mail);
bindPassword =パスワード;
canAuthenticate = YES;
displayName = "Public";
ホスト名= "dcmail.testmail.local"; //これはWindowsコントローラーです
ポート= "389";
filter = "mail = '*'";
id = testmail.local;
isAddressBook = NO;
}
);

重要なのは、ホスト名としてSambaを指定した場合に、Outlookをログに記録しようとすると、Sambaが固くハングすることです。
しかし、これは私のサーバーだけのバグかもしれません。

言語とタイムゾーンを指定する
SOGoLanguage =ロシア語;
SOGoTimeZone =ヨーロッパ/モスクワ;


オプションで、同じ場所でWebインターフェースをオンにできますが、すべてのブラウザーでレイアウトを残しました。
/ * Webインターフェイス* /
SOGoPageTitle = SOGo;
SOGoVacationEnabled = YES;
SOGoForwardEnabled = YES;
SOGoSieveScriptsEnabled = YES;
SOGoMailAuxiliaryUserAccountsEnabled = YES;
SOGoTrustProxyAuthentication = NO;

また、Webインターフェースを使用する場合、sogoがリッスンするIPアドレスを指定することを忘れないでください(デフォルトは127.0.0.1)
WOPort = "0.0.0.0:20000";
そごう
サービスsogod開始

Webパーツのセットアップに移りましょう
/etc/httpd/conf.d/rpcproxy.conf
SetEnvパラメーターSAMBA_HOST 127.0.0.1を指定します
/ var / cache / ntlmauthhandlerディレクトリへの権限を付与します
chown -R apache:apache / var / cache / ntlmauthhandler


sslを使用することをお勧めします。 mod_sslをインストールし、証明書を生成します。

/etc/httpd/conf.d/SOGo.conf
sslを使用する場合は、sogo設定で有効にする必要があります
RequestHeaderセット「x-webobjects-server-port」「443」
RequestHeaderセット "x-webobjects-server-name" "mail.testmail.local"
RequestHeader set "x-webobjects-server-url" " mail.testmail.local "

Apacheを起動します
サービスhttpd start

このインストールでは、完了と見なすことができます。
箱が必要な人のために、チームとして作成します
openchange_newuser-ユーザーの作成

Outlookの構成に進むことができます。
残念ながら、現時点での自動検出は正しく完全に正しく動作せず、パラメータを手動で設定する必要があります。
私の場合、次のようになります。
サーバー:mail.testmail.local
ユーザー名:user
[その他の設定]メニューのセキュリティセクションに移動し、[常にログイン資格情報を要求する]ボックスをオンにします。
外部から接続する場合は、プロキシサーバーを指定します。

おわりに


サブドメインを含むドメインでは、openchangeはまったく機能せず、奇妙なバグが明らかになりました。 また、ユーザーがADにいる場合、sambaは定期的に落ちましたが、ユーザーはメールボックスを持っていません。 瞬間、それは落ちなくなった。 しかし、最も不快なことは、いくつかの問題でsambaがPANICメッセージでクラッシュするだけで、診断が困難になることです。
この製品の開発者は、既に動作しているウィンドウズADへの統合を約束していなかったため、クロールされたバグは、開発者が完全に提供していないことを行っているという事実に言及する可能性があります
しかし、現時点では、この製品をテスト用に安定して実行できました。
製品開発のこの段階でのオープンチェンジの最適な構造は次のようになると思います。
1)別のsamba4 \ windows ADコントローラーをインストールする
2)LDAP認証を使用して別のdovecot + postfixサーバーに削除します(openchangeが失敗した場合でも、組織は機能するメーラーのままです)
3)カレンダーとアドレス帳を必要とする人(そして実践が示しているように、誰もが必要とするわけではない)はmapiをopenchangeに接続します。
4)開発者にバグレポートを書いて、できるだけ早くopenchangeをより安定した状態にしましょう。

Source: https://habr.com/ru/post/J227893/


All Articles