Etiket: squeeze

  • squeeze/sid'e PostgeSQL entegreli eJabberD kurulumu

    apt-get install ejabberd postgresql

    mkdir ejabberd-modules
    :~$ svn checkout http://svn.process-one.net/ejabberd-modules ejabberd-modules
    :~$ cd ejabberd-modules/pgsql/trunk
    :~/ejabberd-modules/pgsql/trunk$ ./build.sh
    :~/ejabberd-modules/pgsql/trunk$ cd ebin
    :~/ejabberd-modules/pgsql/trunk/ebin$ sudo cp * /usr/lib/ejabberd/ebin/
    :~/ejabberd-modules/pgsql/trunk/ebin$ cd ~/
    :~$ wget http://svn.process-one.net/ejabberd/tags/ejabberd-2.1.2/src/odbc/pg.sql

    :~$ sudo su postgres -c psql template1
    Welcome to psql 8.2.7, the PostgreSQL interactive terminal. Type: copyright for distribution terms h for help with SQL commands ? for help with psql commands g or terminate with semicolon to execute query q to quit
    postgres=# ALTER USER postgres WITH PASSWORD ‘my_postgres_user_password_here’;
    ALTER ROLE
    postgres=# q

    :~$ sudo -u postgres createdb ejabberd
    :~$ sudo su postgres
    postgres@ubuntu:~$ psql ejabberd < pg.sql
    postgres@ubuntu:~$ exit
    :~$ sudo pico /etc/ejabberd/ejabberd.cfg

    Konfigürasyon ayarlarından aşağıdaki satırda ejabberd sunucusunun dns adresi yazılır:
    {hosts, [“my_xmpp_server_dns_here”]}.

    Dahili authentication kontrolünü sağlayan bu satırın başına %% işareti koyarak kapatıyoruz:
    %%{auth_method, internal}.

    Ardından ODBC authentication ayarını açıyoruz:
    {auth_method, odbc}.

    Bu satırda da yönetici tanımlıyoruz:
    {acl, admin, {user, “myadmin_username_here”, “my_xmpp_server_dns_here”}}.

    PostgreSQL Veritabanı erişimini ayarlamayı da unutmayalım:
    {odbc_server, {pgsql, “localhost”, “ejabberd”, “postgres”, “my_postgres_user_password_here”}}.

    Eğer gerekliyse aşağıdaki satırları da değiştirebilirsiniz:
    mod_last <-> mod_last_odbc >>PostgreSQL’de son login tarihi kaydı tutulması için.
    mod_offline <-> mod_offline_odbc >> PostgreSQL’de kullanıcı offline mesajlarını tutabilmesi için.
    mod_roster <-> mod_roster_odbc >>  PostgreSQL’de kontak listesi tutlabilmesi için.
    mod_vcard <-> mod_vcard_odbc >> PostgreSQL’de kullanıcı tanımlaması tutulması için.

    Dosyayı saklayın ve çıkın.