【Java开源代码栏目提醒】:网学会员为需要Java开源代码的朋友们搜集整理了利用开源软件实现基于SSL VPN 的图书馆远程访问 - 技术总结相关资料,希望对各位网友有所帮助!
2009 年 4 月 现 代 情 报 Apr1 2009第 29 卷第 4 期 Journal of Modern Information Vol129 14 No·工作研究· 利用
开源软件实现基于 SSL VPN 的图书馆远程访问 徐 忻 重庆交通大学图书馆 重庆 400074 摘 要〕对 SSL 协议原理及其在构建 VPN 上的安全性 、低成本 、易配置等优势进行分析 提出了一个基于
开源软件 SSL 〔 exploer 构建图书馆远程访问的方案 并对其具体实现方式及特点进行了探讨 。
〔关键词〕电子资源 远程访问
开源软件 SSL VPN ssl - exploer 〔中图分类号〕 G250172 TP39312 〔文献标识码〕B 〔文章编号〕1008 - 0821 2009 04 - 0160 - 04 Remote Access to Library Based on SSL VPN Using Open Source Soft ware Xu Xin Library Chongqing Jiaotong University Chongqing 400074 China 〔Abstract〕 The paper analyzed the principle of SSL protocol and its advantage of security low cost easy configuration which constructs on VPN. Meanwhile it suggested a project of remote access to library which was based on the open source soft2 ware ssl - exploer. And it also discussed the specific ways of realization and characters. 〔Key
words〕digital resource remote access open source software ssl vpnssl - exploer 远程访问图书馆 又叫校外访问 是指突破 IP 地址的 点 。
但是目前市场 SSL VPN 产品成熟度不高 标准混乱 物理限制 可以在任何能上网的地方使用图书馆电子资 本文从
开源软件研究入手 提出一个利用免费
开源软件构源 1 。
由于受知识产权保护 、商业利益 、访问速度 、图书 建 SSL VPN 的图书馆电子资源访问方案 。
以期对图书馆远馆局域网安全性等各方面因素影响 对于图书馆购买的电 程访问的具体实施起到参考作用 。
子资源 无论是电子资源开发商还是购买了电子资源的高 1 SSL VPN 技术概述校图书馆 都不希望就此成为免费的公众资源 。
因此 大多数电子资源都是通过 IP 地址来控制访问的 合法用户通 111 传统 IPSec VPN 的缺点常被限制在校园网 IP 地址范围内使用 。
这样造成了本校师 VPN virtual private network 是在公共通信网络中建立生在校外无法使用图书馆电子资源的现象 不仅损害了图 一条虚拟的专用通道 利用公共通信网络来传输内部网络书馆合法用户的利益 也影响了图书馆电子资源的利用率 。
数据的虚拟专用网络 。
IPSec 协议族是基于 IP 网络层上 针对这种情况 一些高校图书馆先后采取了诸如拨号上网 、 为保护 IP
通信安全而设计的一系列协议 。
通过 IPSec 协议反向代理 、VPN 等各种不同的技术解决方案为本校合法用 族提供的隧道 、加密和认证等安全服务而在公共网络上构户提供校外远程访问服务 2 。
造的虚拟专用网就叫做 IPSec VPN 它能为两个网络之间数 从技术上讲 VPN 虚拟专用网 是目前解决远程访 据传输提供安全性 是一个 LAN to LAN 的解决方案 3 。
但问的最好选择 因为它能利用公共网络将处于不同区域的 是对校外访问图书馆电子资源的应用而言 只是需要将若多个局域网虚拟成一个局域网 并且能提供非常好的安全 干分散的单个远程用户简单方便 、临时地接入校园网络 保障 。
但是采用传统的基于 IP 层安全协议 IPSec 实现的 而不是把两个
网络固定连在一起 。
因此 在这种场合下 VPN 方案存在成本高 、配置复杂等一些缺陷 相比之下 IPSec VPN 方案显然不太适用 况且安装 、升级以及配置基于安全套接层协议 SSL 的 SSL VPN 方案能克服 IPSec IPSec VPN 客户端软件对普通用户来说也是个较困难的问VPN 的不足 同时具有安全接入控制 、维护管理方便的特 题 同时这种
方案在穿越防火墙 、配置路由器端口上也是 收稿日期 : 2008 - 10 - 14 忻 作者简介 : 徐 1969 - 女 馆员 研究方向 : 信息服务 发表
论文数篇 。
— 160 — 2009 年 4 月 Apr1 2009 利用
开源软件实现基于 SSL VPN 的图书馆远程访问第 29 卷第 4 期 Vol129 14 No非常麻烦的 需要对网络配置进行修改调整 存在一定的 目的 IP 地址和端口号 进行安全加密的接入控制 。
安全隐患 。
从以上分析可以看出 基于 SSL 协议实现的 SSL VPN112 SSL 协议及其安全性 能够满足 TCP 协议网络应用 包括传统的 C/ S模式应用和 近来基于 SSL 协议的 SSL VPN 技术崭露头角 SSL VPN 目前盛行的B/ S模式应用 同时具备了安全加密传输的特技术实现的远程访问方案能实现安全接入 而且配置和管 点 。
更重要的是 SSL 协议已经被浏览器软件内置支持 客理方便 、能穿透防火墙 建设成本比目前的 IPSec VPN 要 户端无需安装设置 使用简单便捷 这是 SSL VPN 相对于低许多 。
Ipsec VPN 的最大优势 。
SSL 的 英 文 全 称 是 “Secure Sockets Layer ” 中 文 名 为 2 基于
开源软件实现 SSL VPN 方式的图书馆远程“安
全套接协议层” 它是网景 Netscape 公司提出的基于 访问方案Web 应用的安全协议 。
SSL 协议指定了一种在应用程序协议 如 HTTPS 、Telnet 、NMTP 和 FTP 等 和 TCP/ IP 协议之 211 方案
设计思路间提供数据安全性分层的机制 它为 TCP/ IP 连接提供数据 目前 SSL VPN 产品在 VPN 市场上比较热门 种类较多 加密 、服务器认证 、消息完整性以及可选的客户机认证 4 。
产品性能各有不同 。
但同时我们也看到 SSL VPN 市场标 SSL 协议主要由握手层协议和记录层协议构成 它与 准尚未统一 良莠不齐 产品普遍价格较高 这些都给用TCP/ IP 协议间的关系如图 1 所示 5 。
户的 SSL VPN 设备选购带来了不小的困难 。
← 基于 SSL 的安全应用层协议 →←普通应用层协议 → 对图书馆电子资源远程解决方案而言 Web 方式访问 HTTPS 、FTPS 的电子资源虽然占多数 但目前也有少量 C/ S方式的数据资 TELNETS 等应用协议 HTTP 、FTP 源 同时图书馆也要求解决方案满足低成本 配置简单 SSL 握 手 SSL 修 改 SSL 告 警 TEL
NET 等应用协议 扩展性好 管理方便的特点 。
通过分析比较 结合图书馆 协议 密文协议 协议 SSL 记录层协议 的实际需求 我们选用一款
免费的功能强大的
开源软件 TCP “ssl - explorer”来实现 SSL VPN 方式的图书馆远程资源访 IP 问 可大大节省网络建设成本 设置及维护也很简单 。
图1 SSL 协议与 TCP/ IP 协议的关系 212 - explorer 的特点 ssl ssl - explorer 是 Internet 上第一个
开源的 SSL VPN 软件 由图 1 可见 SSL 其实在 TCP 之上建立了一个加密通 由 3SP 公司开发维护 分为 2 个版本 : 一个是免费的 Com2道 通过这一层的数据经过了加密 从而达到数据安全并 munity Edition 社 区 版 另 一 个 是 需 要 付 费 的 Enterprise且透明传输的效果 。
透明性使得几乎所有的基于 TCP 的协 Edition 企业版 。
企业版的功能比社区版多 但是对图书议稍加改动就可以在 SSL 上运行 。
馆电子资源远程访问需求而言 免费的社区版的功能已足113 SSL VPN 实现方式 够满足要求 。
SSL VPN 一般的实现方式是在内部网的防火墙后面 ssl - explorer 是用
JAVA 语言开发的 能运行在各种操放置一个 SSL 网关服务器 如果远程用户希望安全地连接 作系统平台上 。
在对远程用户的鉴权认证方式上 既可以到内部网 用户只需在浏览器地址栏上输入 SSL 网关服务 采用本地数据库方式 也能与第三方鉴权方式相配合 如器的地址 访问请求将被 SSL 网关服务器取得并验证该用 RADIUS AD LDAP 7 。
户的身份 通过身份验证后 SSL 网关服务器将根据远程用 在 SSL VPN 技术实现方式上 ssl - explorer 软件支持上户的配置权限 提供相应的内部网络资源的访问能力 。
文提及的 Web 代理 、应用转换 、SSL 隧道 其中 Web 代理 目前 SSL VPN 的主要实现技术有 Web 代理 、应用转换 、 “ 又分为四种模式 “Tunneled Web” 隧道 Web 、 ReplacementSSL 隧道等 6 。
“ Proxy” 替换代理 、 Path - Based Reverse Proxy” 基于路径 1 Web 代理 Proxy : SSL VPN 网关将来自远端浏览 “ 的反向代理 、 Host - Based Reverse Proxy” 基于主机的反器的页面请求 采用 HTTPS 协议 转发给 Web 服务器 然 向代理 。
后将服务器的响应回传给远程用户 。
“Tunneled Web”是 ssl explorer 默认推荐模式 使用较简 2 应用转换 Application Translation : 对于非 Web 页 单 这种方式的
工作原理如图 2 所示 。
面的文件访问 往往借助于应用转换 。
SSL VPN 网关与内 SSL VPN 网关服务器是位于内部网内 它通过与因特部网的应用服务器通信 将这些服务器对客户端的响应转 网相连为远程用户提供 SSL 接入服务 。
远程用户使用 Web化为 HTTPS 协议和
HTML 格式发往客户端 。
浏览器访问 SSL VPN 网关服务器 服务器启用 HTTPS 协议 3 SSL 隧道 SSL Tunnel : 它也需要在远程用户机器 首先对用户的身份进行验证 通过了身份验证 用户 Web上运行一个小的
Java 或 ActiveX 程序 根据网络层信息 如 浏览器自动从 SSL VPN 网关服务器下载一个代理 Agent
程序 — 161 — 2009 年 4 月 现 代 情 报 Apr1 2009第 29 卷第 4 期 Journal of Modern Information Vol129 14 No 门的数据库软件支持 。
③选择管理员用户名和密码 : 后面的参数配置都要由 管理员登录来完成 。
21312 - explorer 系统参数配置 ssl 图 2 Tunneled Web 方式原理示意图 软件安装完成后 在本机上用浏览器访问 “https : ‖ 2 lo calhost ” 出现一个登录界面 输入管理员用户名和密码即
Java applet 然后获得一个该用户权限所能访问的内部网 进入系统管理页面
系统参数设置都在这个页面进行 。
在络资源
列表 。
当用户发出对某个内部资源主机的 Web 访问 系统管理页面需要注意的是 “Resources” 资源 的访问方请求时 该请求不会直接发给拥有该资源的目标主机 而是 式的参数设置 共有 4 种方式 :被 Agent 截获 将数据加密用 HTTPS 协议先发给 SSL VPN 服 ①“Web Forwards” 适用于 Web 应用 。
务器 SSL VPN 服务器收到加密数据后 通过代理方式向目 ②“SSL Tunnels”适用于基于 TCP 协议的 C/ S应用程标主机发出请求 并接收来自目标主机资源的数据 然后使 序 类似于 IPSec 隧道实现技术 。
用 SSL 加密数据 最后通过 HTTPS 协议回发给远程用户 6 。
③“Network Places”用于远程用户访问内部网的文件 Web 代理方式中另外 3 种方式 与上面过程类似 只 服务器 如 FTP 。
是不需要下载 Agent 程序 。
不管使用那种代理模式 远程 ④“Applications”用于网关服务器发布 由客户端下载用户客户端都只需使用 Web 浏览器 就能够安全接入到 运行的在线应用扩展程序 。
SSL VPN 网关服务器 通过网关服务器提供的 SSL VPN 服 一般选择 “Web Forwards”即可 。
务 像内部网络用户一样方便地享用网络资源 。
21313 访问控制管理213 系统的安装与本地部署 在系统管理页面的 “Access Control”中可以设置远程用 整个方案的连接示意图如图 3 。
户组别 、用户账号和初始密码 、访问权限及策略 、远程 IP 限制等参数 。
21314 防火墙的参数设置 不需要对现有的防火墙或网络设备做什么变动 只需 要防火墙开启了 443 端口 以便远程 用户机 器能 够通过 HTTPS 协议访问 ssl - explorer 网关服务器 。
214 软件的优化与改进 原始的 ssl - explorer 软件无论从界面和功能设置上都不 太适合中文用户的使用习惯 因此需要对软件做一些修改 和完善 。
图 3 - explorer 实现的 SSL VPN 示意图 ssl 21411 汉化界面 ssl - explorer 应用的主要障碍是界面汉化的
问题 ssl - 在校园网的防火墙之后部署 1 台电脑安装和配置 ssl - explorer 是由 ssl - explorer 的服务器端
代码和客户端 agent 代explorer 软件作为.