|
This is the manual for GNU Gatekeeper 5.5. 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
The GNU Gatekeeper Manual Chapter 33. 入门 (教程)3.1 示例简单的呼叫为了确定所有组件都已启动并且正在运行,我们将使用两个Linux系统,它们都连接到同一LAN中。在示例中, H.323客户端是一个名为“SimpH323”的软件电话,它是一个示例程序,带有samples/simple/文件夹中的H323Plus。 若你的Linux发行版不包含它,则可以下载H323Plus源代码并自行编译,也可以使用其他H.323终端。 在第一台服务器上 gatekeeper 直接启动:
" 现在,在同一个系统上启动另一个控制台,运行端点SimpH323程序
( SimpH323 将会自动发现本地GK,若自动检测失败,请用 " 在第二个客户端上,以这种方式运行simph323:
SimpH323以用户“peter”的身份向自动检测到的GK注册,并尝试请求用户“jan”的地址。 GK将接受来自“peter”的请求,并将确定是否可以找到用户名“jan”的IP地址。 因为“jan”已经在GK中注册,它将把“jan”的IP地址发送给“peter”。 然后,“peter”的SimpH323将使用该IP地址来设置与server1上运行的“jan”的SimpH323的直接通信。 server1上SimpH323将自动接受呼叫,Peter和Jan可以聊天。 3.2 使用控制端口来查看GK状态信息通过使用控制端口(Status interface)连接后来查看状态提供了基于文本的方式与运行中的GK交互。 在新的控制台上,我们使用telnet连接到GK:
你应该会收到“禁止访问!”消息,因为默认情况下,限制控制端口的访问。 在启动GK的目录中创建一个名为
使用Ctrl-C停止GK并重新启动它,指定GK配置文件
使用telnet连接到端口7000,现在应该允许你连接到GK:
现在重复第一个示例,在该示例中,Peter呼叫Jan,并查看GK以非路由模式处理哪些消息。 telnet会话中可以有许多命令-键入“help”以查看它们。 要退出telnet连接GK的会话,请键入“quit”并按Enter。 我们创建的示例配置文件非常不安全,因为它默认的 allow 规则, 因此对于谁可以连接到控制端口以及可以执行哪些命令没有任何限制。 将配置文件更改为:
第四行由addpasswd实用程序添加,该实用程序用于创建密码为“secret”的用户“gkadmin”。现在,此更改将强制对控制端口进行身份验证。 使用此新配置重新启动GK,然后再次执行telnet。现在,将提示你输入用户名和密码:
在 [GkStatus::Auth] 部分包含在固定控制端口的附加信息。 3.3 使用路由模式下运行GK以路由模式启动GK也就是使用“GK信令路由”。所有信令消息都通过GK,从而对呼叫进行了更大的控制。 像这样启动GnuGk:
将把GK设置为路由模式。Telnet到控制端口,并进行呼叫以查看GK现在正在处理哪些消息。 请注意,所有媒体数据包(音频和视频)仍直接在端点(SimpH323的2个实例)之间发送。 3.4 信令路由网关到达外部的用户若不使用网关,则只能使用IP电话通过Internet呼叫其他人。要使用普通电话联系你,你必须使用网关。
必须配置网守,以指定应将哪些呼叫路由到网关,以及可以直接呼叫哪些号码。 使用配置文件的 [RasSrv::GWPrefixes] 部分来告诉GK,应该将其路由到网关的数字的前缀。
该项是告诉GK将所有以“0”开头的E.164号码的呼叫路由到以H.323别名“gw1”注册的网关。若没有使用该别名的注册网关,则呼叫将失败。 注意: 你必须使用网关别名-你不能使用网关的IP地址。 前缀可以包含数字
3.5 GK重定向 E.164 号码使用网关时,通常会在内部使用不同的号码,GK在收到被拨的号码时,先将号码改写,再通过网关将其发送到目的地。 可以使用 [RasSrv::RewriteE164] 部分进行配置。 示例: 如用IP电话拨打 12345,名为“gw1”的网关后到达 08765。
还可以使用 [RasSrv::GWRewriteE164] 部分, 根据向其发送呼叫及接收呼叫的网关来配置E.164号码的改写。 示例: 你有两个不同的网关(“gw1”和“gw2”),若向其发送带有前缀0044的呼叫, 但是在路由选择网关之后,需要将不同的前缀添加到该号码中。 例如,是出于标识目的。
示例: 在将这些呼叫传递到另一个网关“gw2”之前,你要标识来自具有指定前缀的特定网关“gw1”的呼叫。
重写表达式可以是点
3.6 防火墙和NATH.323协议在信令消息中包含了IP,并为单个呼叫建立多个TCP和UDP连接。事先不确定其中连接的建立方向。使得通过NAT实现H.323穿透的难度比其他协议要高。 实现穿越防火墙和NAT,GnuGk支持很多不同协议的穿透方法。目前,H.460.18和H.460.19(通常简称为“H.460 NAT穿越”)的组合是最常见的NAT穿越协议, 并且今天几乎所有H.323端点都支持。 最好是将 GnuGK 放在防火墙前的公共IP地址上,并启用H.460.18 NAT穿越。防火墙不需打开任何入站端口-只需在防火墙中允许传出连接即可(默认防火墙允许)。 若在防火墙进行了更高级设置,确认不要将NAT超时设置得太低:H.460.18假定GnuGk可以将UDP数据包发送到接收该数据包的同一端口至少大于或等于30秒钟。 若将防火墙规则设置为90秒,则表示安全。大多数消费类产品的超时时间更长,不必担心。 并非所有端点都支持H.460.18,或者你有很多内网呼叫,则可以在防火墙内部署第二个GnuGk,并使其通过隧道将所有内部端点组合起来。这称为“穿越区域”。 请参阅后面的章节,如何将外部GnuGk配置为 穿越服务端 如何将防火墙内部的GnuGk配置为 穿越客户端. 一个简单的,用于NAT穿越的GK配置,如下所示:
在GK中注册所有端点,无论它们在防火墙内部还是外部,都能够接入和拨出电话。 3.7 虚拟PBX:断开呼叫截止当前,GK仅将别名解析为IP地址的机制。这是GK的一项关键功能。GK还具有更多功能。 GK对呼叫有很多控制权,所以它也可以终止呼叫。连接到控制端口后,可以使用 " 例如,可以编写一个简单的脚本来连接到控制端口,获取正在进行的呼叫的列表,并在5分钟后终止这些呼叫,以防止用户使用过多的系统资源。 也可以使用其他功能,例如呼叫转接。 3.8 使用IPv6要将IPv6与GnuGk一起使用,必须在配置文件中启用它:
IPv4和IPv6端点之间的呼叫会自动进入代理模式,以允许GnuGk执行地址转换。
若你的端点可以自动处理混合的IPv4-IPv6呼叫,则可以使用 确认是服务器分配常规的IPv6地址。GnuGk将不使用任何链接本地地址 (fe80::/10). 为了同时支持IPv4和IPv6端点,GnuGk依赖操作系统来处理IPv4映射的IPv6地址。除少数例外,当前大多数操作系统都支持此功能。 操作系统概述:
Windows,至少是Windows Vista,Windows Server 2008,Windows 7或更高版本。在Windows XP上,若启用IPv6支持, 则GnuGk将作为仅IPv6的GK运行。OpenBSD根本不支持IPv4映射的地址(最新测试的版本:OpenBSD 5.0),因此它只能将GnuGk作为IPv4或IPv6 的GK运行。 自2011年12月起,已知对IPv6的支持的有以下端点:
已知不支持设备 (2011年12月):
3.9 使用有多个IP的服务器默认情况下,GnuGk将侦听服务器上的所有IP,并将自动选择正确的发送IP以到达端点。有许多配置开关可以选择要使用的IP。 使用 Home=,可以选择GnuGk应该监听的网口。一般,会在有多个IP的计算机上选择1个或2个网口。是每个用户都可能考虑的事情。 使用 Bind=,可以选择要用于发出消息的IP。若GK侦听多个IP,这可能很有用,但它也可能带来一些明显的后果,大多数用户应避免此切换。 使用 ExternalIP= 可以用于在消息中发送与实际收听时不同的IP。若正使用端口转发,这可能很有用。尽量避免使用,应当使用防火墙穿越协议。 3.10 启用音频和视频加密你可以将GnuGk配置为代理加密,以确保对更多或所有发出的呼叫进行加密,无论端点是否支持加密。 首先,启用“half call media”,意为若仅有呼叫侧支持加密,则GnuGk将添加加密。这将为你自己可能不支持加密的端点启用加密。 你也可以设置是否需要128或256位AES。(在启动消息中选中“h235media = 1”,以确保你的GnuGk启用了加密功能。)
要强制加密,即不允许未加密通话,可设置
打开此开关后,未加密的呼叫将被中止。 最后,你可以采取预防措施,对外部的连接添加加密。GnuGk特性是“half call media”,须确保它不仅加密内部通话。 因此,你可以从内网上的所有端结点上删除加密,并使用上述设置,GnuGk会将加密所有发出呼叫中。
媒体加密之后的下一步是将 TLS(传输层安全性) 加密添加到信令通道。 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 |