Instalace IServerd ICQ - Suse 9.1 - Postgres_SQL

PostgreSQL - instalace (SQL musí být verze 7.x a výše - kvůli omezení velikosti databáze na 2GB)

(YAST) nebo

rpm -ihv postgresql-7.4.2
rpm -ihv postgresql-server-7.4.2
rpm -ihv postgresql-libs-7.4.2
rpm -ihv postgresql-devel-7.4.2

/etc/init.d/postgres start

Iserverd

http://iserverd.khstu.ru/download/IServerd-stable.tar.gz

mv IServerd-stable.tar.gz /usr/local/ICQ/
cd /usr/local/ICQ/
tar xvf IServerd-stable.tar.gz
cd IServerd-stable/

./configure - (doinstalovat chybějicí věci)
make
make install

(instalace by se měla uložit do /etc/iserverd/ - jestli nazadáte jinak (PREFIX))

Instalace - configurace

cp /etc/iserverd/iserv.conf.default /etc/iserverd/iserv.conf
vi /etc/iserverd/iserv.conf

změny:

Bind Interface = IP adresa serveru/32 (jestli máte více síťových karet v serveru)
Admin email = root@localhost
Info Password = pcq

database user = iserverd
database password = heslo ** Důležité ** s původním heslem nefunguje instalace databáze

Include = /etc/iserverd/v3_proto.conf
Include = /etc/iserverd/v5_proto.conf
Include = /etc/iserverd/v7_proto.conf

cp /etc/iserverd/v3_proto.conf.default /etc/iserverd/v3_proto.conf
cp /etc/iserverd/v5_proto.conf.default /etc/iserverd/v5_proto.conf
cp /etc/iserverd/v7_proto.conf.default /etc/iserverd/v7_proto.conf

PostgreSQL - vytvoření tabulek

cd /usr/local/ICQ/IServerd-stable/script/
chmod x+a db_manage.sh
su postgres

./db_manage.sh create users_db
Please, input database username: iserverd
Please, input database user passwd: *heslo* (stejné co máme v iserv.conf)
CREATE USER
CREATE DATABASE
>exit

Odkomentovat v souboru pg_hba.conf

vi /var/lib/pgsql/data/pg_hba.conf
Local all all trust
Host all all 127.0.0.0 255.255.255.255 trust
Host all all ip serveru 255.255.255.0 trust

Povolit TCP komunikaci PostgreSQL

vi /var/lib/pgsql/data/postgresql.conf
tcpip_socket = true

Přidání uživatele + spuštění serveru

su postgres
cd /etc/iserved/db/

./icquser add <123456> /UNI/ - přidá -> + další otázky pro vytvoření uživatele (heslo, email, nick atd.)
./icquser search 123456 - hledá
./icquser del 123456 - smaže

>exit

vi /etc/iserverd/v7_proto.conf
V7 BOS address = 10.10.10.238:5190 (ip adresa serveru (127.0.0.1 nefunguje))

cd /etc/iserved/
./iserverd.sh start
(Při prvním spuštení může nastat hlášení - že není vytvořená databáze (non-existing tables) - je to v pořádku
stopněte iserverd.sh stop a znova spuste, už by žádné hlášení o databázi nemělo být)

netstat -tunap

tcp 0 0 10.10.10.238:5190 0.0.0.0: * LISTEN 8526 / IServerd: [ soc
udp 0 0 10.10.10.238:4000 0.0.0.0: * 8526 / IServerd: [ soc

tcpdump port 5190 - kontrola při připojení

Kontrola databáze

su postgres

psql users_db
\l - výpis database
\dt - vypis tabulek pro db_users
\c db_users - připojení do database
\q - exit

Jak zjistit kdo je on-line

su postgres
psql users_db - připojíme se k databázi

SELECT * FROM Online_Users;

Ukáže kdo je online, ale je to celkem nepřehledné, takže si vytvoříme další tabulku
pro přehlednejší status ONLINE :
//
CREATE VIEW Online AS SELECT uin,frst,last,email1 FROM Users_Info WHERE uin IN (SELECT uin FROM Online_Users);
//

No a pak se zeptáme znova :

SELECT * FROM ONLINE;

výsledek :

uin | frst | last | email1

----------+---------+-----------+-----------------------------

10203040 | dada | dada | email1@domain.cz
10203060 | denisa | denisa | email2@domain.cz
10203070 | marketa | marketa | email3@domain.cz
10203050 | lucia | lucia | email4@domain.cz
(4 rows)

Automatické spuštění ICQ serveru po restartu:

zkopírujem script cp /etc/iserverd/iserverd.sh /etc/init.d/

mv /etc/init.d/iserverd.sh /etc/init.d/iserverd

chkconfig -add iserverd
iserverd 0:off 1:off 2:off 3:on 4:off 5:on 6:off

No a je to !

Odkazy:

www.iserverd.khstu.ru

test:

Miranda IM 5.0 - bez použití Secure MD5 login

ICQ5 - funguje, ale při přidávání nových uživatelů - nastane chyba ICQ a ukončí se. ( jinak bez problémů)
Trilian 3.1 - bez problému

********************************************************************************
D3d Howto
Rekonix s.r.o.
********************************************************************************