日常,日常。
手动搭建教程:使用Ocserv 手动搭建 Cisco AnyConnect VPN服务端
客户端使用教程:Cisco AnyConnect VPN Windows/Android 平台客户端使用教程
注意:如果服务器同时安装了 锐速(ServerSpeed/LotServer),那么可能会导致 AnyConnect 连接上后无网络或者速度异常(慢),这时候请关闭锐速,BBR加速无影响。
系统要求
Debian 7+ / Ubuntu 14.04 +
推荐 Debian 8 x64,这个是我一直使用的系统,我的脚本在这个系统上面出错率最低。
此脚本不支持CentOS!
脚本版本
Ver: 1.0.5
安装步骤
检查PPP/TUN环境
首先要检查VPS的TUN是否开启(OpenVZ虚拟化的服务器很可能默认关闭)。
- cat /dev/net/tun
- # 返回的必须是:
- cat: /dev/net/tun: File descriptor in bad state
如果返回内容不是指定的结果,请与VPS提供商联系开启TUN权限(一般控制面板有开关)。
执行下面的代码下载并运行脚本。
- wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/ocserv.sh && chmod +x ocserv.sh && bash ocserv.sh
下载并运行脚本后会出现脚本操作菜单,选择并输入 1
就会开始安装。
首先安装服务端,安装过程中会提示你添加第一个VPN账号(用户名和密码)以及TCP/UDP端口:
- ...
- [信息] 开始设置账号配置...
- 请输入 要添加的VPN账号 用户名
- (默认: admin):doubi
- 用户名 : doubi
- 请输入 要添加的VPN账号 密码
- (默认: doub.io):doubi233
- 密码 : doubi233
- 请输入VPN服务端的TCP端口
- (默认: 443):443
- TCP端口 : 443
- 请输入VPN服务端的UDP端口
- (默认: 443):
- TCP端口 : 443
- [信息] 开始设置 iptables防火墙...
- ...
使用说明
进入下载脚本的目录并运行脚本:
- ./ocserv.sh
运行脚本后选择你要执行的选项即可。
- ocserv 一键安装管理脚本 [vx.x.x]
- -- Toyo | doub.io/vpnzy-7 --
- 0. 升级脚本
- ————————————
- 1. 安装 ocserv
- 2. 卸载 ocserv
- ————————————
- 3. 启动 ocserv
- 4. 停止 ocserv
- 5. 重启 ocserv
- ————————————
- 6. 设置 账号配置
- 7. 查看 配置信息
- 8. 修改 配置文件
- 9. 查看 日志信息
- ————————————
- 当前状态: 已安装 并 已启动
- 请输入数字 [0-9]:
其他操作
- /etc/init.d/ocserv start
- # 启动 ocserv
- /etc/init.d/ocserv stop
- # 停止 ocserv
- /etc/init.d/ocserv restart
- # 重启 ocserv
- /etc/init.d/ocserv status
- # 查看 ocserv 运行状态
- /etc/init.d/ocserv log
- # 查看 ocserv 运行日志
- /etc/init.d/ocserv test
- # 测试 ocserv 配置文件是否正确
配置文件:/etc/ocserv/ocserv.conf
账号配置文件:/etc/ocserv/ocpasswd
日志文件:/tmp/ocserv.log
如果你想要修改配置文件,请看参数解释:https://doub.io/vpnzy-6/#配置参数解释
其他说明
注意:如果服务器同时安装了 锐速(ServerSpeed/LotServer),那么可能会导致 AnyConnect 连接上后无网络或者速度异常(慢),这时候请关闭锐速,BBR加速无影响。
脚本已默认配置好国内外分流路由表了(国内流量不走VPN),无需设置。
运行优化说明
建议在运行 ocserv前,执行一下这个命令,作用是提高系统的文件符同时打开数量,对于TCP连接过多的时候系统默认的 1024 就会成为速度瓶颈。
提示wget: unknown host “raw.githubusercontent.com” 之类的错误
这是无法解析我的域名,多半是DNS的问题,请更换DNS为谷歌DNS(以下两行一起复制 一起执行)。
提示 wget: command not found 的错误
这是你的系统精简的太干净了,wget都没有安装,所以需要安装wget。
升级脚本
升级脚本只需要运行脚本,然后选择并输入 0 回车即可,会自动检测最新版本并下载,当然重新下载脚本文件也可以,会自动覆盖原文件。
更新日志
2018年09月12日,版本 v1.0.5
1. 新增 自动检测网卡名 ens3(Debian9 默认网卡名)。
另外,针对 CentOS Ubuntu 最新系统版本的网卡命名我也在脚本内加了说明(enpXSX)。
转载请超链接注明:逗比根据地 » 『原创』Ocserv 搭建 Cisco AnyConnect VPN服务端 一键脚本
责任声明:本站一切资源仅用作交流学习,请勿用作商业或违法行为!如造成任何后果,本站概不负责!
netstat -lntp
命令查看本地端口占用情况。服务器连不上请检查是不是被墙了。能Ping通,但是TCPing或SSH连不上,多半就是被墙了。
脚本只负责安装和管理 ocserv ,脚本自身并不会导致你的服务器被墙,但是 ocserv 可能会(现在没有哪个VPN是保险的了)。
/etc/ocserv/ocserv.conf
,删除底部所有开头是no-route = xxx
的内容后重启服务端即可。你可以自行对比一下配置文件
/etc/ocserv/ocserv.conf
,排除法看看是哪个参数变更导致的问题,查到后务必告诉我,我修复下配置文件。配置文件更新记录可以看这个:https://github.com/ToyoDAdoubiBackup/doubi/commit/7f5ea45b2ae205a231593f13f4bc35de3d421493
思科VPN主要是企业用的多这个协议,不过这两年政府一直发文件催促企业VPN备案,估计等差不多的时候,VPN方式翻墙将彻底退出中国了。
看提示是缺少依赖:pkg-config,我的脚本默认安装了这个,还提示这个估计是安装失败了。