2009年6月19日金曜日

CentOS 5 で postLdapAdmin

CentOS 5 で LDAP を使ったメールサーバ構築を試してみた。

LDAP のインストール
  1. Openldap をパッケージでインストールする。
    # yum install openldap-servers
    # yum install openldap-clients
  2. slapd.conf の編集する。
    # vi /etc/openldap/slapd.conf
    # egrep -v '^\s*(#|$)' /etc/openldap/slapd.conf
    include /etc/openldap/schema/core.schema
    include /etc/openldap/schema/cosine.schema
    include /etc/openldap/schema/inetorgperson.schema
    include /etc/openldap/schema/nis.schema
    allow bind_v2
    pidfile /var/run/openldap/slapd.pid
    argsfile /var/run/openldap/slapd.args
    database bdb
    suffix "dc=example,dc=com"
    rootdn "cn=Manager,dc=example,dc=com"
    rootpw secret
    directory /var/lib/ldap
    index objectClass eq,pres
    index ou,cn,mail,surname,givenname eq,pres,sub
    index uidNumber,gidNumber,loginShell eq,pres
    index uid,memberUid eq,pres,sub
    index nisMapName,nisMapEntry eq,pres,sub
  3. DB_CONFIG をコピーする。
    # cp -p DB_CONFIG.example /var/lib/ldap/DB_CONFIG
  4. syslog.conf に追加する。
    # echo -e "\n# Openldap log messages" >>/etc/syslog.conf
    # echo -e "local4.*\t\t\t\t\t\t/var/log/openldap" >>/etc/syslog.conf
    # killall -HUP syslogd
  5. Openldap の起動設定をする。
    # chkconfig ldap on
    # chkconfig --list ldap
  6. slapd.conf の設定が正しいことを確認する。
    # slaptest -uv
  7. # service ldap start
    # service ldap status
    # less /var/log/openldap
  8. LDAP の基本構造を作成します。
    # vi /etc/openldap/init.ldif
    ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
    # トップの DN データ
    dn: dc=example,dc=com
    objectClass: organization
    objectClass: dcObject
    o: example.com
    dc: example

    # 管理する仮想ドメインの階層
    dn: dc=vdomain,dc=example,dc=com
    objectClass: domain
    objectClass: top
    dc: vdomain

    # メールアカウントを管理する階層
    dn: ou=User,dc=vdomain,dc=example,dc=com
    objectClass: organizationalUnit
    objectClass: top
    ou: User

    # メーリング リストを管理する階層
    dn: ou=List,dc=vdomain,dc=example,dc=com
    objectClass: organizationalUnit
    objectClass: top
    ou: List
    ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
    # ldapadd -x -D "cn=Manager,dc=example,dc=com" -W -f init.ldif
Apache、PHP をインストール
  1. Web Server をパッケージでインストールする。
    # LANG=C yum grouplist
    # yum groupinstall "Web Server"
    # yum install php-mcrypt
    # yum install php-mbstring
postLdapAdmin をインストール
  1. ダウンロードして、展開する。
    # wget http://iij.dl.sourceforge.jp/postldapadmin/36443/postLdapAdmin-1.1.tar.gz
    # tar xzf postLdapAdmin-1.1.tar.gz -C /var/www
  2. スキーマを追加する。
    # cp -p /var/www/postLdapAdmin/postLdapAdmin.schema /etc/openldap/schema
    # vi /etc/openldap/slapd.conf (追加)
    ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
    include /etc/openldap/schema/postLdapAdmin.schema
    ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
  3. Openldap を再起動する。
    # slaptest -uv
    # service ldap condrestart
    # service ldap status
  4. postLdapAdmin の設定を編集する。
    # cd /var/www/postLdapAdmin/etc
    # mkdir vdomain.example.com
    # cp web.conf.sample vdomain.example.com/web.conf
    # chown apache:apache vdomain.example.com/web.conf
    # chmod 644 vdomain.example.com/web.conf
    # vi chmod 644 vdomain.example.com/web.conf
    ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
    LdapServer=127.0.0.1
    LdapPort=389
    LdapBindDn=cn=Manager,dc=example,dc=com
    LdapBindPw=secret
    LdapBaseDn=dc=vdomain,dc=example,dc=com
    ReferrerUrl=http://test.designet.jp/
    DiskQuotaDefault=100
    BaseMailDir=/home/mail/vdomain.example.com
    LinePerPage=5
    AdminName=admin
    AdminPasswd=21232f297a57a5a743894a0e4a801fc3
    LogFile=/home/mail/example.com/log/result.log
    MailDelcommand=sudo -u vmail deluser
    LdapUserSuffix=ou=User
    LdapListSuffix=ou=List
    LdapScope=sub
    LdapFilter=(uid=%u)
    LdapMlFilter=(mail=*)
    LdapObjectClass=account
    DisplayUser=uid
    DisplayMl=mail
    ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
  5. メール保管アカウントの作成
    # useradd -u 400 -s /sbin/nologin -m vmail
  6. メール保管ディレクトリの作成
    # mkdir /home/vmail/vdomain.example.com
    # chown -R vmail:vmail /home/vmail/vdomain.example.com/
  7. postLdapAdmin ログ ディレクトリの作成
    # mkdir /home/vmail/vdomain.example.com/log
    # chown apache:apache /home/vmail/vdomain.example.com/log
  8. httpd.conf の編集 (追加)
    # vi /etc/httpd/conf/httpd.conf
    # service httpd condrestart
  9. # chown -R apache:apache /var/www/postLdapAdmin/htdocs/
Postfix のインストール
  1. Postifx をパッケージでインストールする。
    # yum install postfix
  2. Sendmail から Postfix に切り替える。
    # alternatives --config mta

(作成中...)

参考

0 件のコメント: