镜像域名: doub.bid 提供给无翻墙能力的人使用~ 有能力的建议访问主域名("点"改为".") doub点io
投稿文章 | 广告投放 | Telegram 群组 / 公告频道

『原创』Ocserv 搭建 Cisco AnyConnect VPN服务端 一键脚本

Shell脚本 Toyo 96评论
文章目录
[显示]
本文最后更新于 2017年8月2日 11:34 可能会因为没有更新而失效。如已失效或需要修正,请留言!

日常,日常。

手动搭建教程:使用Ocserv 手动搭建 Cisco AnyConnect VPN服务端

客户端使用教程:Cisco AnyConnect VPN Windows/Android 平台客户端使用教程

注意:如果服务器同时安装了 锐速(ServerSpeed/LotServer),那么可能会导致 AnyConnect 连接上后无网络或者速度异常(慢),这时候请关闭锐速,BBR加速无影响

系统要求

Debian 7+ / Ubuntu 14.04 +

推荐 Debian 7 x64,这个是我一直使用的系统,我的脚本在这个系统上面出错率最低。

此脚本不支持CentOS!

脚本版本

Ver: 1.0.3

安装步骤

检查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://softs.fun/Bash/ocserv.sh && chmod +x ocserv.sh && bash ocserv.sh

# 如果上面这个脚本无法下载,尝试使用备用下载:
wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/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]:

其他操作

service ocserv start
# 启动 ocserv
service ocserv stop
# 停止 ocserv
service ocserv restart
# 重启 ocserv
service ocserv status
# 查看 ocserv 运行状态
service ocserv log
# 查看 ocserv 运行日志
service ocserv test
# 测试 ocserv 配置文件是否正确

配置文件:/etc/ocserv/ocserv.conf

账号配置文件:/etc/ocserv/ocpasswd

日志文件:/tmp/ocserv.log

如果你想要修改配置文件,请看参数解释:https://doub.io/vpnzy-6/#配置参数解释

其他说明

注意:如果服务器同时安装了 锐速(ServerSpeed/LotServer),那么可能会导致 AnyConnect 连接上后无网络或者速度异常(慢),这时候请关闭锐速,BBR加速无影响

运行优化说明

建议在运行 ocserv前,执行一下这个命令,作用是提高系统的文件符同时打开数量,对于TCP连接过多的时候系统默认的 1024 就会成为速度瓶颈。

点击展开 查看更多

提示wget: unknown host “softs.fun” 之类的错误

这是无法解析我的域名,多半是DNS的问题,请更换DNS为谷歌DNS(以下两行一起复制 一起执行)。

点击展开 查看更多

提示 wget: command not found 的错误

这是你的系统精简的太干净了,wget都没有安装,所以需要安装wget。

点击展开 查看更多

升级脚本

升级脚本只需要运行脚本,然后选择并输入 0 回车即可,会自动检测最新版本并下载,当然重新下载脚本文件也可以,会自动覆盖原文件。

更新日志

2017年08月02日,版本 v1.0.3

1. 新增 在安装出错的情况下,会自动启动卸载程序。

2017年06月04日,版本 v1.0.2

1. 修复 重启服务器后,ipv4防火墙转发未打开的问题。

2017年06月02日,版本 v1.0.1

1. 修复 通过脚本修改配置文件中TCP/UDP端口后,没有保存防火墙设置的问题

2017年05月29日,版本 v1.0.0

1. 推出 正式版。

转载请超链接注明:逗比根据地 » 『原创』Ocserv 搭建 Cisco AnyConnect VPN服务端 一键脚本
责任声明:本站一切资源仅用作交流学习,请勿用作商业或违法行为!如造成任何后果,本站概不负责!

赞 (57)or打赏
发表我的评论
取消评论
表情

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

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(96)个小伙伴在吐槽
  1. [信息] 开始设置 iptables防火墙... net.core.default_qdisc = fq net.ipv4.tcp_congestion_control = bbr net.ipv4.ip_forward = 1 [信息] 开始添加 iptables防火墙规则... [信息] 开始保存 iptables防火墙规则... [信息] 所有步骤 安装完毕,开始启动... [错误] ocserv 没有安装,请检查 !
    ccimmer2017-08-18 20:52 (2天前)回复
    • ocserv -V ,运行这个有提示 ocserv版本号吗,还是提示命令不存在,什么系统?
      Toyo2017-08-19 10:23 (1天前)回复
  2. 为啥不加ipv6配置。。
    玉狐2017-08-12 10:57 回复
    • 因为没用过ipv6,无法测试效果。
      Toyo2017-08-12 11:06 回复
  3. 你好,我也搭好了服务端,但是通过这个VPN访问任何SSL加密的网站都会卡在建立TLS握手这一步,未加密的网站就没有问题。
    KCP2017-08-09 08:32 回复
  4. 你好,我按教程搭好了服务端(Ubuntu 16.04)后,手机(ios 10.3.3)端显示anyConnect连接成功却不能正常谷歌,客户端日志正常「已连接到ip XXX.X.X.X」, 在服务端打印的日志如下: ocserv[24520]: main[wxf729]: 116.30.223.219:51297 new user session ocserv[24520]: main[wxf729]: 116.30.223.219:51297 user logged in ocserv[28082]: worker[wxf729]: 116.30.223.219 suggesting DPD of 1800 secs ocserv[24522]: sec-mod: initiating session for user 'wxf729' (session: FLcRtz) ocserv[28082]: worker[wxf729]: 116.30.223.219 configured link MTU is 1500 ocserv[28082]: worker[wxf729]: 116.30.223.219 peer's link MTU is 1500 ocserv[28082]: worker[wxf729]: 116.30.223.219 sending IPv4 192.168.1.121 ocserv[28082]: worker[wxf729]: 116.30.223.219 adding DNS 8.8.8.8 ocserv[28082]: worker[wxf729]: 116.30.223.219 adding DNS 8.8.4.4 ocserv[28082]: worker[wxf729]: 116.30.223.219 DTLS ciphersuite: AES128-SHA ocserv[28082]: worker[wxf729]: 116.30.223.219 DTLS data MTU 1406 ocserv[28082]: worker[wxf729]: 116.30.223.219 Link MTU is 1500 bytes ocserv[28082]: worker[wxf729]: 116.30.223.219 setting up DTLS-0.9 connection ocserv[24520]: main: 116.30.223.219:51294 user disconnected (reason: unspecified, rx: 0, tx: 0)
    岚风2017-08-04 21:01 回复
    • 然而服务端日志并没有什么异常,其他平台或者设备是否正常?
      Toyo2017-08-04 22:14 回复
      • 我想试的,只是逗比云的上的Mac端镜像不知道为什么下不下来,每次都是下到一半就卡住了。。刚又试了一下iOS端,先是显示连接成功,然后一下又断开,之后日志就一直是「连接正在断开,请稍后」
        岚风2017-08-05 01:12 回复
      • 下载成功了,试了下Mac端也一样,连上几秒钟后就自动断开了,我怀疑这个连接上是不是也是个假象
        岚风2017-08-05 01:39 回复
        • 或许是被当地运营商或墙干扰了,毕竟部分地区依然是会封锁/干扰这个VPN协议的。
          Toyo2017-08-05 11:03 回复
          • 好吧,谢谢。还是用SS(R)靠谱些
            岚风2017-08-06 01:45 回复
  5. 请教一下分流的pac要怎么写呢
    biubiubiu2017-08-04 17:13 回复
    • 不清楚,路由表我也不会写。
      Toyo2017-08-04 17:32 回复
  6. 我搬瓦工的vps已用你的一键shadowsocks脚本,现在是锐速+ssr。请问还能同时安装这个VPN吗?2者同时使用
    壮士请留步2017-08-02 17:21 回复
    • VPN和SSR不冲突,但是这个VPN和锐速冲突。
      Toyo2017-08-02 17:42 回复
      • 我看了下介绍说是有锐速的情况下可能会连接不上。 我先试验下,如果成功了再报个好消息
        壮士请留步2017-08-02 17:50 回复
  7. ocserv.sh: line 100: certtool: command not found [错误] 生成SSL证书密匙文件失败(ca-key.pem) ! ocserv.sh: line 102: certtool: command not found [错误] 生成SSL证书文件失败(ca-cert.pem) ! ocserv.sh: line 118: certtool: command not found [错误] 生成SSL证书密匙文件失败(server-key.pem) ! ocserv.sh: line 120: certtool: command not found [错误] 生成SSL证书文件失败(server-cert.pem) ! mv: cannot stat `ca-cert.pem': No such file or directory mv: cannot stat `ca-key.pem': No such file or directory mv: cannot stat `server-cert.pem': No such file or directory mv: cannot stat `server-key.pem': No such file or directory 不知道这是什么情况呀 问一下怎么卸载脚本 重新安装
    frank2017-08-02 00:31 回复
    • 系统缺少软件:certtool 。运行脚本,2. 卸载。
      Toyo2017-08-02 11:24 回复
      • 不好意思 可以请教一下怎么安装certtool嘛
        frank2017-08-02 12:23 回复
        • 脚本在一开始安装依赖的时候,就会安装 certtool (包含于gnutls-bin包中),你可能是安装失败了。
          apt-get install -y gnutls-bin
          
          Toyo2017-08-02 13:21 回复
  8. 大佬知道是什么鬼么 The secure gateway has rejected the connection attempt. A new connection attempt to the same or another secure gateway is needed, which requires re-authentication. 连上秒断
    ll2017-07-15 10:10 回复
    • 同样遇到这样的问题,目前木有解决方案???/
      嘎嘎嘎2017-07-24 13:11 回复
  9. 逗比大佬我当年让你写这个教程你打死都不写来着😂
    心灵炼金师2017-07-11 23:20 回复
  10. 好了我自己把你脚本里的源换了。。。为什么非得在脚本里加美国源呢。。
    John2017-07-07 21:13 回复
    • 不,那只是为了更换为目前Debian的稳定源 jessie(仅限Debian系统,CentOS/Ubuntu不会更换) ,保证安装依赖不出错,而脚本并没有加入判断当前服务器位置的功能,只是统一更换为美国的镜像源。
      Toyo2017-07-08 00:29 回复
  11. 我切换了阿里云的源也没用,用你的脚本还是走ftp.us.debian.org这个,只有几kb的速度,腾讯云主机
    John2017-07-07 19:51 回复
  12. mkdir: cannot create directory '/etc/ocserv': Permission denied --2017-07-07 18:58:56-- https://raw.githubusercontent.com/ToyoDAdoubi/doubi/mas ter/other/ocserv.conf Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.72.13 3 Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.72.1 33|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 1659 (1.6K) [text/plain] /etc/ocserv: Permission denied/etc/ocserv/ocserv.conf: No such file or directory Cannot write to '/etc/ocserv/ocserv.conf' (Success). [错误] ocserv 配置文件下载失败 ! 这个怎么解决,ubuntu
    John2017-07-07 19:00 回复
    • mkdir: cannot create directory ‘/etc/ocserv': Permission denied
      新建文件夹没有权限,请检查是否有权限或者是否是ROOT用户,如果没有可以用 sudu su 来获取临时ROOT权限(运行后会提示输入[当前账号的密码]),或者更换为ROOT账号。
      Cannot write to ‘/etc/ocserv/ocserv.conf’ (Success).
      无法写入文件,可能是上面文件夹创建失败导致的,也可能是权限问题。
      
      Toyo2017-07-08 00:52 回复
  13. 国外服务器也能搭建吗?
    仙剑赋2017-07-06 15:47 回复
  14. 每次都要输入密码 很麻烦,客户端证书怎么弄?还有就是配置文件有错误的地方,但提示说不是很重要,不影响
    马鑫2017-07-04 17:59 回复
1 2