阻止其他常见的 xmpp 客户端登录 XMPP



我想阻止常见的xmpp客户端(如Pidgin,PSI+,...)登录我们的xmpp服务器(ejabberd)。我怎样才能做到这一点?

提前谢谢。

我认为这真的做不到。当然,你可以作弊,只是断开通过DiscoInfo声明自己的客户,但这很容易不声明你是谁。

而且,这简直是愚蠢的。XMPP 是用于该特定目的的开放协议:因此彼此不认识的客户端和服务器仍然可以使用通用协议进行通信。这就像你问"我怎样才能为使用Firefox的人关闭我的网站"。

一种方法是实现这些客户端不支持的专有身份验证机制。这将阻止大多数(如果不是全部)客户。当然,有人总是可以分叉现有客户端并添加对此身份验证机制的支持。取决于您的服务受欢迎程度...

您是否试图阻止任何人通过未经授权的客户端使用您的 xmpp 服务器:Psi、Adium 等;或者您是否试图阻止未经授权的人员(可能来自您的组织外部)使用您的 XMPP 服务器?前者与xmpp 的设计目标背道而驰。如果您正在尝试实现后者:关闭注册。您需要提出一个创建初始用户名/密码令牌的过程,以允许授权人员进入服务器。您可能希望启用用户密码更改。这些过程可能是部分或完全手动的,具体取决于适合你的组织的内容。如果您的组织足够大,可以通过LDAP/Active Directory集中管理用户,则可以对大多数xmpp服务器使用LDAP身份验证,并且通过适当的过滤,您甚至可以配置内容,以便允许一部分用户访问xmpp,而该子集之外的其他人将被拒绝访问。

最新更新