Далее немного подчищенной копипасты с сорцфорджа.
Собирается с поддержкой H.480.18/.19
======================================================= Final Method - Installing GNUGK v3.1+ on Debian Squeeze ======================================================= cd /usr/src apt-get update apt-get install flex bison build-essential pkg-config automake libmysqlclient-dev libmysql++-dev
libsnmp-base libsnmp-dev libssl-dev wget http://backports.debian.org/debian-backports/pool/main/libs/libssh/libssh-4_0.5.2-1~bpo60+1_i386.deb dpkg -i libssh-4_0.5.2-1~bpo60+1_i386.deb wget http://backports.debian.org/debian-backports/pool/main/libs/libssh/libssh-dev_0.5.2-1~bpo60+1_i386.deb dpkg -i libssh-dev_0.5.2-1~bpo60+1_i386.deb
(Тут естественно, выбрать свою архитектуру)
# Get static version download - do not use SVN: wget http://sourceforge.net/projects/opalvoip/files/v3.10%20Luyten/Stable%207/ptlib-2.10.7.tar.bz2 tar -jxf ptlib-2.10.7.tar.bz2 mv ptlib-2.10.7 ptlib export PTLIBDIR=/usr/src/ptlib cd /usr/src/ptlib cat version.h ======= #define MAJOR_VERSION 2 #define MINOR_VERSION 10 #define BUILD_TYPE ReleaseCode #define BUILD_NUMBER 7 ======= ./configure make optnoshared cd /usr/src # Get from CVS Web Snapshot download: wget http://h323plus.cvs.sourceforge.net/viewvc/h323plus/h323plus/?view=tar -O h323plus.tar.gz export OPENH323DIR=/usr/src/h323plus cd h323plus cat version.h ==== #define MAJOR_VERSION 1 #define MINOR_VERSION 24 #define BUILD_TYPE ReleaseCode #define BUILD_NUMBER 1 ==== ./configure make optnoshared cd /usr/src # Get from CVS Web Snapshot download: wget http://openh323gk.cvs.sourceforge.net/viewvc/openh323gk/openh323gk/?view=tar -O gnugk.tar.gz tar -xzf gnugk.tar.gz cd openh323gk cat version.h === # define GNUGK_MAJOR_VERSION 3 # define GNUGK_MINOR_VERSION 2 # define GNUGK_BUILD_TYPE ReleaseCode # define GNUGK_BUILD_NUMBER 0 === ./configure --enable-h46018 --with-large-fdset=8192 make optnoshared
Далее пример моего конфига gatekeeper.ini
[Gatekeeper::Main] Fortytwo=42 Name=GnuGk TimeToLive=600 StatusPort=7000 StatusTraceLevel=2 UseBroadcastListener=0
[RoutedMode] GKRouted=1 H245Routed=1 RemoveH245AddressOnTunneling=0 AcceptNeighborsCalls=1 AcceptUnregisteredCalls=1 SupportNATedEndpoints=1 DropCallsByReleaseComplete=1 CallSignalPort=1720
EnableH46018=1 EnableH46017=1 Enable46018=1
[Proxy] Enable=1 InternalNetwork=10.10.0.0/255.255.0.0,127.0.0.0/8 T120PortRange=40000-40999 RTPPortRange=50000-59999 ProxyForNAT=1
[RasSrv::RRQFeatures]
AliasTypeFilter=terminal;dialeddigits AliasTypeFilter=gateway;h323id ; Это для того, чтобы могли регистрироваться Поликомы
[RasSrv::ARQFeatures] ArjReasonRouteCallToGatekeeper=1 ;; RemoveTrailingChar=# RoundRobinGateways=1
[RoutingPolicy] default=explicit,internal,catchall [Routing::CatchAll]
CatchAllAlias=inbound ; Сюда будут попадать все звонки напрямую на IP гейткипера.
;Другой вариант прописывания дефолтного маршрута:
;[RoutingPolicy] ;default=explicit,internal ;[Routing::Explicit] ;внутренний IP адрес=адрес перенаправления ;внешний IP адрес = адрес перенаправления
;тут вообще можно менять звонимые IP на все, что угодно
[Gatekeeper::Auth]
default=allow
[RasSrv::RRQAuth]
default=confirm
[GkStatus::Auth] rule=password
username=some_hash; Тут используется утилита addpasswd. В примере она не собирается,
но можно использовать версию из репозитория
Запускается все командой вида
/usr/src/openh323gk/obj_linux_x86_64_s/gnugk -c gatekeeper.ini -o /tmp/gnugk.log -tt &
Telnet на 7000 порту обеспечит просмотр статуса.
Небольшое дополнение:
В целях облегчения жизни себе и прочим поднял данный вариант на 92.249.69.203. Так что можете смело регистрироваться. Абсолютно бесплатно :)