描述:
协议多路分解器。
sslh接受指定端口上的连接,并根据对远程客户端发送的第一个数据包执行的测试进一步转发它们。
实现了针对HTTP,SSL,SSH,OpenVPN,tinc,XMPP的探针,并且可以识别可以使用正则表达式测试的任何其他协议。 一个典型的用例是允许在端口443上提供多种服务(例如,从公司防火墙内部连接到ssh,几乎永远不会阻塞端口443),同时仍在该端口上提供HTTPS。
因此,sslh充当协议多路分解器或配电盘。 它的名称来自其在同一端口上提供SSH和HTTPS的原始功能。
Libwrap支持
sslh的一个缺点是,随着连接通过sslh转发,服务器不再能看到客户端的原始IP地址。
因此,可以使用libwrap编译sslh来检查/etc/hosts.allow和/etc/hosts.deny中定义的访问。 可以使用配置文件定义Libwrap服务。
配置文件
可以将配置文件提供给sslh。 命令行参数将覆盖文件设置。 sslh使用libconfig解析配置文件,因此在http://www.hyperrealm.com/libconfig/libconfig_manual.html中指示了常规文件格式。 请参阅sslh附带的示例配置文件以获取特定格式(选项(与监听端口列表和协议列表相同)与命令行上的名称相同)。
该配置文件使使用正则表达式指定协议成为可能:正则表达式列表作为regex_patterns参数给出,并且如果从客户端接收的第一个数据包与这些表达式中的任何一个匹配&#x