最新消息:

[转载]AnyConnect ( ocserv ) 搭建教程

VPN 林夕 21564浏览 2评论

转载自:https://x.hou.im/2014/04/17/anyconnectda-jian-jiao-cheng

AnyConnect 大概是 iOS 上最好用的VPN了,它可以做到不断线、按需自动连接。
好吧,其实还是会断线的,但是它会自动重连,所以你从3G切换到Wi-Fi、从飞行模式到正常状态,它都会很快重新连接上。

熊猫翻滚前段时间也增加了 AnyConnect 服务,我自己体验下来感觉还是挺不错的,下面就大致讲一下怎么在 Debian 上使用 ocserv 最速搭建起 AnyConnect 服务器,这不是手把手教程,所以还是需要有基本的Linux 知识的。

STEP1. 安装依赖包

1.1修改/etc/apt/sources.list

,使用testing版本的包,使用testing的版本可以获得更新的软件版本,但是为了稳定,完成这一步以后记得改回原来的,例如wheezy

1.2更新

sudo apt-get update

1.3安装依赖包

sudo apt-get install build-essential pkg-config libgnutls28-dev -y

STEP2. 安装ocserv

2.1下载ocserv & 解压

(目前最新是 0.3.3 版本,查看全部可下载版本戳这里

wget ftp://ftp.infradead.org/pub/ocserv/ocserv-0.3.3.tar.xz; tar xvf ocserv*

2.2编译 & 安装

(如果configure过程报错,那就看看提示是缺了什么,apt-get装上即可)

cd ocserv*; ./configure; make; make install

STEP3. 基本配置

3.1根据 手册 配置配置文件

,或者下载这份我的配置,里面包含了我配置的路由表 下载

3.2如果你下载了我的配置文件

,请记得修改auth、server-cert、server-key部分,server-cert和server-key可以去startssl申请免费的。

3.3配置iptables

自动调整MTU

sudo iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

开启 NAT (记得把 eth0 改成自己的网卡名,openvz 的基本是 venet0 )

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

开启 IPv4 的转发

sudo sysctl -w net.ipv4.ip_forward=1

打开 443 端口

sudo iptables -I INPUT -p tcp --dport 443 -j ACCEPT;
sudo iptables -I INPUT -p udp --dport 443 -j ACCEPT;

3.4运行时可以先使用下面的命令让它运行在前台,测试配置是否正确。

ocserv -fd 1 -c {ocserv.conf}

3.5route部分的配置

来自 此项目 (好吧,也是我弄的= =) route 只能最多 64

条,所以只能用 /8 这样的暴力路由,只求尽可能覆盖被墙的 IP 段

HINTS.

关于生成用户名密码

使用用户名密码验证的话,可以使用ocpasswd来生成用户名密码对,或者用openssl

生成加密后的密码123:

openssl passwd -crypt 123

关于PC平台的客户端

手机和电脑都能用,Linux、OS X 可以用 openconnect 来连接。OS X 上就brew install openconnect即可,但是要先装 tun/tap ,或者直接用 cisco 官方的 client ,但是不一定能用,兼容性还是听有问题的,哦对,还有付费的 shimo 也可以。

关于证书认证

使用用户名密码认证的话是每次连接都需要手动输入密码的,这是个 feature… 想要免输入密码的话就要用证书认证,这就要求你自建 CA 证书来签发服务器证书和客户端证书了,详细步骤在手册中都写了,需要注意的点就是别忘了设置 revoke list,不然签发了证书就没办法取消了 lol

我是觉得自己做 CA 比较蛋疼,要是手机上没有导入这个 CA 就会被告知不可信任的 VPN,默认情况会无法连接,输个密码也不是多麻烦的事情,毕竟 AnyConnect 很少会需要手动连接,自动重连的时候是有 session 的,不用再输入密码。

转载请注明:一秒钟的梦 » [转载]AnyConnect ( ocserv ) 搭建教程

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (2)

  1. 直接匯入CA的Cert不就得了 也就是root或越獄而已
    0003年前 (2016-01-16)回复
  2. Server cert不一定要用自签的那个CA cert签发,可以用可信CA签发.
    Charles2年前 (2016-07-16)回复