OpenVPN在Linux系统下的安装配置和使用

  作者:Amteam.org
2007/8/27 19:03:00
本文关键字: 存储 方案 案例

OpenVPN 简介

OpenVPN是一个基于OpenSSL库的应用层VPN实现。和传统VPN相比,它的优点是简单易用。

这里简单介绍一下基于 CA ,采用数字证书认证,可以划分多个网段的 OpenVPN 配置方法。

Note 1: VNN 和 OpenVPN 很像。

Note 2: 这个东西对于突破内网封锁,保护通信自由很有意义,值得大力推广。

安装 OpenVPN

◆Linux 下的安装
首先,Kernel 必须支持 TUN/TAP 设备。在 2.6.x 内核中,对应的 Kernel 选项是 “Universal TUN/TAP device driver support”。

确认 Kernel 支持 TUN/TAP 后,可以下载 OpenVPN 编译并安装。这一步很 easy,不多说了。

◆Windows 下的安装

http://www.openvpn.se (http://www.openvpn.se/) 下载安装包安装,这里的安装包带一个 Client GUI 工具,很好用。

配置 OpenVPN

◆配置 OpenVPN Server

只说明在 Linux 下的配置。Windows 类似。创建 /etc/vpn/server.conf,内容如下:


port 1494proto udpdev tunca ca.crtcert server.crtkey server.

keydh dh1024.pemserver 10.1.0.0 255.255.255.0push

"route 10.1.0.0 255.255.255.0"push "route 10.1.1.0 255.255.255.0"

client-config-dir /etc/vpn/ccdroute

10.1.1.0 255.255.255.0client-to-clientkeepalive

10 120user nobodygroup nobodypersist-keypersist-tunlog-append

openvpn.logverb 3

其中 ca.crt, server.key,server.crt 可以用以前贴出的 ca 工具创建,dh1024.pem 用 OpenVPN 自带的工具创建。

这个配置文件创建了两个网段:10.1.0.* 和 10.1.1.*,VPN 服务器将从这两个网段中给 Client 分配 IP 地址。VPN Server 自身 IP 将是 10.0.0.1。

“client-config-dir”指明 Client 的专有配置文件目录。在这个目录下可以针对特定用户建立配置文件。例如,要为用户 abc 指定一个 IP 地址(如10.1.1.5)而不是让 VPN Server 自动分配,可以在配置目录/etc/vpn/ccd下建立一个 abc 文件,内容如下:

ifconfig-push 10.1.1.5 10.1.1.6

那么 VPN Server 就会自动给 abc 用户分配 10.1.1.5 这个地址。注意第一个IP地址 的最后一个数字(这里是 5)必须是 4*n + 1 的数。

问题是,VPN Server 怎么知道哪个用户是 abc 呢?它是 Client 数字证书中的 Common Name 域来判断的。就是说,在连接协商时如果 Client 端数字证书的 Common Name 是 abc,那么 VPN Server 就找配置目录下 abc 这个文件。

◆配置 OpenVPN Client

在 Client 机器上 OpenVPN 安装目录的 config 目录下建立如下 client.ovpn 文件:

clientdev tunproto udpremote vpn_server_ip 1494 ca ca.crtcryptoapicert "SUBJ:

abc"nobindpersist-keypersist-tunverb 2

修改 remote 一行填上对应 VPN Server 的 IP 和 端口。ca.crt 和服务端 ca.crt 一样,必须把这个 ca.crt 也放在 config 目录下。

关键是 cryptoapicert "SUBJ: abc" 这行。这一行指定客户端的数字证书从 Windows 证书 Store 里取。在 IE 的“选项 -> 内容 -> 证书”页面能看到你的个人数字证书。

SUBJ:abc 指明选择证书主题中含有 abc 的证书。客户端数字证书也可以用以前贴的 ca 工具生成,如果要给用户 abc 签发数字证书,只用指明 Common Name 是 abc 即可,然后把生成的 abc.p12 传给 abc 用户并告诉导入口令。abc 导入这个数字证书后,VPN Client 就可以工作了。

启动 OpenVPN

◆服务端启动

在 /etc/vpn 目录下,执行:

openvpn --daemon --config server.conf

◆客户端启动

OpenVPN 带一个 GUI 小工具,会装在系统托盘里。点菜单里的 connect 即可。

常见问题

无法得到 IP 地址

通常是因为 DHCP Client 服务没有启动。在服务管理里启动即可。

责编:
vsharing微信扫一扫实时了解行业动态
portalart微信扫一扫分享本文给好友

著作权声明:kaiyun体育官方人口 文章著作权分属kaiyun体育官方人口 、网友和合作伙伴,部分非原创文章作者信息可能有所缺失,如需补充或修改请与我们联系,工作人员会在1个工作日内配合处理。
最新专题
网络安全热点透析

随着移动互联、大数据、云计算、物联网等技术的日益发展,在这些热点技术为个人生活带来便利的同时,也为企业发展..

数据安全医药行业解决方案

采用身份鉴别、访问控制、数据加密以及权限控制等多种安全防护技术手段,保障数据库中医药数据只能被合法用户合规..

    畅享
    首页
    返回
    顶部
    ×
      信息化规划
      IT总包
      供应商选型
      IT监理
      开发维护外包
      评估维权
    客服电话
    400-698-9918
    Baidu
    map