This is the manual for GNU Gatekeeper 5.5.
An English manual for your version is in your GnuGk download archive.

Chapters: Contents · Introduction · Installation · Getting started · Basic Config · Routed Mode & Proxy · Routing · RAS Config · Authentication · Accounting · Neighbors · Per Endpoint Config · Advanced Config · Monitoring · Advanced Topics

Download GnuGk    Get support

The GNU Gatekeeper Manual Chapter 2

2. 编译安装

2.1 编译前准备

要构建GnuGk,您需要PTLib和H323Plus。 请参阅 https://www.gnugk.org/compiling-gnugk.html 获得有关所需库版本的最新信息。

成功编译GnuGK,需要按以下顺序编译:

  1. PTLib
  2. H323Plus

在Unix上, 运行 configuremake debugnoshared 或者 make optnoshared 在GnuGK目录中构建调试或发行版本。

注意: 整个编译过程你必须使用 make debugnoshared 或者 make optnoshared 例如,若使用 make optnoshared 则必须以相同方式编译所有内容。

2.2 在Unix上安装

第一步,获得一个可执行文件: 你可以从 gnugk.org下载适合您的Unix系统可执行文件, 也可以自己编译GNU Gatekeeper。对于简单的安装或尝试使用Gatekeeper的功能,使用预构建的可执行文件不会造成任何问题, 但是对于专业安装,建议您自编译GnuGk。

能过可执行文件来安装GnuGk

将可执行文件复制到所需的目录并创建一个配置文件。 子目录中有几个配置示例和自动启动脚本 etc/有关配置参数的详细说明,请参见 配置文件

例如,您可以将GnuGk复制到/usr/sbin/, 在 /etc/gatekeeper.ini 创建配置,并通过以下方式启动它

/usr/sbin/gnugk -c /etc/gatekeeper.ini -o /var/log/gnugk.log -ttt
有关 命令行选项的详细信息,请参见“命令行选项”部分。

若希望运行大量呼叫(超过100个并发呼叫),请确保GnuGK获得足够的sockets缓冲区和堆栈空间, 例如:在启动之前设置“ulimit -n 10240 -s unlimited”。

编译GnuGK

建议您在开始实际编译之前执行该命令 make debugdependmake optdepend 在GnuGK目录中执行-这些命令将构建适当的依赖项列表, 因此对源代码进行的任何更新都将强制重新编译所有关联的文件,确保混合生成最终的目标文件更新。

Type

configure --help
查看所有编译时选项的详细列表。您可以使用它们来启用或禁用GnuGK的功能。 例如,若不需要RADIUS,可输入:
configure --disable-radius

为了在重负载下使用网守,建议启用LARGE_FDSET功能(configure --enable-large-fdset)。 某些系统还需要使用ulimit才能为单个进程分配1024个以上的sockets。 视频通话所需的最大数量的sockets数,应根据预测的sockets最大使用量,使用以下公式计算:

MAX_NUMBER_OF_CONCURRENT_CALLS * 10 * 120%

Where:
10 = 2 sockets for Q.931 + 2 sockets for H.245 + 6 sockets for RTP
因此,对于100个内并发语音通话,不需要超过1024个sockets。

在使用H.245和H.460.18的RTP多路复用时,尽量少的使用sockets,减少通道占用。

最后,必须使用 make debugnoshared or make optnoshared, 具体取决于您对库的编译方式。

2.3 在Windows上安装

第一步是获取可执行程序,可以从 gnugk.org 也可以 自己编译GnuGK。

有两个版本的GK可用: 一般程序启动运行和基于系统服务启动运行。

程序安装

下面是手动安装的步骤:

拷贝 gnugk.exe 到您指定的文件夹并创建一个配置文件 解压目录里有配置文件在 etc/。 参阅 配置文件 部分获取详细说明。

从命令行('cmd.exe')手动启动Gatekeeper,或创建一个批处理文件来启动它。

例如,可将GnuGk复制到 C:\GnuGk\, 在该目录里创建一个配置文件 C:\GnuGk\gatekeeper.ini 启动它,如下示:

C:\GnuGk\gnugk.exe -c C:\GnuGk\gatekeeper.ini -o C:\GnuGk\gnugk.log -ttt
有关 命令行选项 的详细信息,请参见“命令行选项”部分。

记得在Windows防火墙中添加GnuGk为例外,确保它可以与网络通信。

以服务方式安装

手动安装步骤,在编译生成时选择的Gatekeeper-as-service 其中包括在下载位置可用的GUI安装程序。

首先,在继续之前,请确保您有GnuGk的以服务方式启动的软件版本。

复制 gnugk.exe 到您指定的目录,创建一个配置文件命名为gatekeeper.ini 像这样 参阅 配置文件 GnuGk作为服务运行时,没有命令行选项可用。

要注册服务,请从命令行('cmd.exe')运行以下命令:

gnugk.exe install notray

您的服务现已安装,将在下次重新启动时启动,或者您可以使用Windows控制面板->服务功能手动启动它。 在Windows Vista和Windows 7上,您可能必须在服务安装期间禁用UAC。

当将GnuGk作为服务运行时,它将始终gatekeeper.ini 在当前目录中查找命名的配置文件。 对跟踪级别和跟踪文件位置的任何更改都必须在配置文件而不是命令行中进行。

记得在Windows防火墙中添加GnuGk为例外,确保它可以与网络通信。

编译GnuGK

编译时请按照前面描述,按顺序编译所需要的库 请以文件扩展名为 (.sln) 你需要的 Microsoft Visual Studio版本打开并编译。若需要数据库支持,如(MySQL, PostgreSQL, ODBC etc.), 请在编译GnuGk之前安装/编译适当的客户端库。

2.4 addpasswd程序

用于连接控制端口身份验证和许多其他身份验证模块(例如SimplePasswordAuth)要求将加密的密码存储在GnuGK配置文件中。 GnuGK还支持对配置中的所有密码进行加密。addpasswd 需要该程序来生成和存储这些加密的密码。 该实用程序包含在GnuGK中,可以使用以下命令进行编译:

$ cd addpasswd
$ make optnoshared

用法是:

$ addpasswd CONFIG SECTION KEYNAME PASSWORD

示例1:将用户'gkadmin'密码'secret'添加到[GkStatus::Auth]配置部分,以在连接控制端口上启用身份验证:

$ addpasswd gatekeeper.ini GkStatus::Auth gkadmin secret

示例2:将用户'joe'密码'secret'添加到[Password]配置部分,以启用端点身份验证:

$ addpasswd gatekeeper.ini Password joe secret

示例3:将加密的共享密钥添加到[RadAuth]配置部分:

$ addpasswd gatekeeper.ini RadAuth SharedSecret VerySecretPassword

重要说明:该 KeyFilled 变量定义了初始程序默认的密码加密密钥。可以在配置中将其省略(默认为0), 但若指定了它,则每次更改时,都必须重新生成加密的密码(再次使用 addpasswd 加密)。


Next Previous Contents

Chapters: Contents · Introduction · Installation · Getting started · Basic Config · Routed Mode & Proxy · Routing · RAS Config · Authentication · Accounting · Neighbors · Per Endpoint Config · Advanced Config · Monitoring · Advanced Topics



Last updated: 21. Jan 2025