2012年3月6日火曜日

Groupoffice - オープンソースのGroupware

SOGoは挫折 (;_;)。激遅の件は解決したものの、表示された画面がおかしく、Document読んだりググったりしたが、解決法がわからない。ログにエラーも出ていない。
ということで以前ちょっと触ってみて、インストールがすごく簡単だった印象のGroupofficeを使うことにした。今回はここを参考にした。
groupofficeは基本的にphpが動けばインストールできる。
Souceforgeから適当なディレクトリにダウンロードして展開。そのディレクトリをwebコンテンツのディレクトリにまるごと移動する。うちの場合はこんな感じ。

$ sudo mv groupoffice-com-3.7.45 /home/www/groupoffice

その他モロモロの作業はここを見て。
で、ブラウザでhttp://www.foobar.com/groupoffice/にアクセスするとインストーラーが始まる。これが楽チンなのだ。
まず足りないモジュールのリストが表示されるので、必要な物があればインストールしておくこと。あとは画面に従って設定を進めていく。データベースの設定もここでできる。
あれ、もう書くこと無い。基本的にはこれで使えてしまう。
うちの場合、どうしてもActiveDirectoryと連携したいので(というか連携できないんだったら使えません)ldapの設定を行ってみることにした。

まずはconfig.phpに下記を追加。内容はご自分の環境に合わせて。下から2行の意味は不明。

$config['ldap_host']='123.45.43.210';
$config['ldap_port']='389';
$config['ldap_user']='ldapuser';
$config['ldap_pass']='password';
$config['ldap_basedn']='dc=staff, dc=unitech, dc=ac, dc=pg';
$config['ldap_peopledn']='dc=staff, dc=unitech, dc=ac, dc=pg';
$config['ldap_tls']=false;
$config['ldap_auth_dont_update_profiles']=false;
$config['ldap_use_uid_with_email_domain']='';

次にgroupofficeディレクトリの中にldapauth.config.phpファイルを作る。内容は下記のとおりマッピング情報である。ActiveDirectoryの場合は usernameはsAMAccountNameだが、openldapなどの場合はuidとなる。

$mapping=array(
'username' => 'sAMAccountName',
'password' => 'userpassword',
'first_name' => 'givenname',
'middle_name' => 'middlename',
'last_name' => 'sn',
'initials' => 'initials',
'title' => 'title',
'sex' => 'gender',
'birthday' => 'birthday',
'email' => 'mail',
'company' => 'o',
'department' => 'ou',
'function' => 'businessrole',
'home_phone' => 'homephone',
'work_phone' => 'telephonenumber',
'fax' => 'homefacsimiletelephonenumber',
'cellular' => 'mobile',
'country' => 'homecountryname',
'state' => 'homestate',
'city' => 'homelocalityname',
'zip' => 'homepostalcode',
'address' => 'homepostaladdress',
'homepage' => 'homeurl',
'work_address'=> 'postaladdress',
'work_zip' => 'postalcode',
'work_country'=> 'c',
'work_state' => 'st',
'work_city' => 'l',
'work_fax' => 'facsimiletelephonenumber',
'currency' => 'gocurrency',
'max_rows_list' => 'gomaxrowslist',
'timezone' => 'gotimezone',
'start_module'=> 'gostartmodule',
'theme' => 'gotheme',
'language' => 'golanguage',
);

で、 ApacheをリスタートしてActiveDirectoryのアカウントでログインを試みるもエラー。ここから1時間はまった。ドメインコントローラで見張ってたら、全く問い合わせが来ていないので、ldapauthが動いていないものと思われる。実は、groupoffice/modules ディレクトリの中にldapauthモジュールがあったので、使えているものだとばかり思っていたのが間違いで、GroupofficeのAdmin Menuの中のModuleでインストールしなければならないのであった。これをインストールしてログインに成功した。めでたしめでたし。
さてここまで来たら欲が出てきて、Googleカレンダとかタスクとかと同期したくなってきた。そうするとモバイル機器とも同期できる。次はこれをやってみようと思う。

0 件のコメント: