Open Zakariyya opened 2 years ago
『原创』Ocserv 搭建 Cisco AnyConnect VPN服务端 一键脚本 注意:如果服务器同时安装了 锐速(ServerSpeed/LotServer),那么可能会导致 AnyConnect 连接上后无网络或者速度异常(慢),这时候请关闭锐速,BBR加速无影响。
『原创』Ocserv 搭建 Cisco AnyConnect VPN服务端 一键脚本
注意:如果服务器同时安装了 锐速(ServerSpeed/LotServer),那么可能会导致 AnyConnect 连接上后无网络或者速度异常(慢),这时候请关闭锐速,BBR加速无影响。
Debian 7+ / Ubuntu 14.04 +
推荐 Debian 8 x64,这个是我一直使用的系统,我的脚本在这个系统上面出错率最低。
此脚本不支持CentOS!
Ver: 1.0.5
首先要检查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
这里为了防止源库丢失,我clone了一份
wget -N --no-check-certificate https://raw.githubusercontent.com/Zakariyya/doubi/master/ocserv.sh && chmod +x ocserv.sh && bash ocserv.sh
下载并运行脚本后会出现脚本操作菜单,选择并输入1就会开始安装。
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/#配置参数解释
auth = "plain[passwd=/etc/ocserv/ocpasswd]" # 这个是登陆方式,plain[passwd=/etc/ocserv/ocpasswd] 代表使用密码登陆并且从 /etc/ocserv/ocpasswd 文件中读取用户名和密码 # listen-host = [IP|HOSTNAME] # 这个代表监听的IP或主机名,注释掉即可。 tcp-port = 443 udp-port = 443 # 这个代表 TCP和UDP监听的端口 默认443,如果端口被干扰或被占用,可以更换其他端口,端口号可分开 server-cert = /etc/ocserv/ssl/server-cert.pem server-key = /etc/ocserv/ssl/server-key.pem ca-cert = /etc/ocserv/ssl/ca-cert.pem # 服务器证书和CA证书的位置 banner = "Welcome DOUB.IO" # 欢迎文本,链接上VPN后,客户端会提示这个消息。 max-clients = 16 # 整个VPN最大链接客户端数量,默认为 0 无限。 max-same-clients = 2 # 同账号链接VPN最大客户端数量,默认为 0 无限。 rekey-method = ssl # 加密方式 SSL pid-file = /var/run/ocserv.pid # PID(记录进程PID)文件位置 device = vpns # 设备名(随意) ipv4-network = 192.168.1.0 ipv4-netmask = 255.255.255.0 #ipv4-network = 192.168.1.0/24 #ipv6-network = fda9:4efe:7e3b:03ea::/48 #tunnel-all-dns = true # 是否接管DNS解析请求到VPN服务器,true代表客户端的DNS请求全部由服务器处理。 # 考虑到一些情况下DNS请求全部由海外服务器解析的话,会出现很多问题,所以默认注释,需要的请删除 # 号。 dns = 8.8.8.8 dns = 8.8.4.4 # 服务端的DNS # route = x.x.x.x # no-route = x.x.x.x # 路由表相关的,用来分流国内外流量。 # 本教程提供的配置文件中已经默认配置好了国内外分流路由表(国内不走VPN)。 # 使ocserv兼容AnyConnect cisco-client-compat = true
注意:如果服务器同时安装了 锐速(ServerSpeed/LotServer),那么可能会导致 AnyConnect 连接上后无网络或者速度异常(慢),这时候请关闭锐速,BBR加速无影响。 脚本已默认配置好国内外分流路由表了(国内流量不走VPN),无需设置。
脚本已默认配置好国内外分流路由表了(国内流量不走VPN),无需设置。
建议在运行 ocserv前,执行一下这个命令,作用是提高系统的文件符同时打开数量,对于TCP连接过多的时候系统默认的 1024 就会成为速度瓶颈。
点击展开 查看更多
ulimit -n 51200
这个命令只有临时有效,重启后失效,如果想要永久有效,请执行:
echo "* soft nofile 51200 * hard nofile 51200" >> /etc/security/limits.conf
然后最后再执行一下ulimit -n 51200即可。
这是无法解析我的域名,多半是DNS的问题,请更换DNS为谷歌DNS(以下两行一起复制 一起执行)。
echo -e "nameserver 8.8.8.8 nameserver 8.8.4.4" > /etc/resolv.conf
这是你的系统精简的太干净了,wget都没有安装,所以需要安装wget。
# CentOS系统: yum install -y wget # Debian/Ubuntu系统: apt-get install -y wget
升级脚本只需要运行脚本,然后选择并输入 0 回车即可,会自动检测最新版本并下载,当然重新下载脚本文件也可以,会自动覆盖原文件。
1. 新增 自动检测网卡名 ens3(Debian9 默认网卡名)。
另外,针对 CentOS Ubuntu 最新系统版本的网卡命名我也在脚本内加了说明(enpXSX)。
转载请超链接注明:逗比根据地 » 『原创』Ocserv 搭建 Cisco AnyConnect VPN服务端 一键脚本 责任声明:本站一切资源仅用作交流学习,请勿用作商业或违法行为!如造成任何后果,本站概不负责!
系统要求
Debian 7+ / Ubuntu 14.04 +
推荐 Debian 8 x64,这个是我一直使用的系统,我的脚本在这个系统上面出错率最低。
此脚本不支持CentOS!
脚本版本
Ver: 1.0.5
安装步骤
检查PPP/TUN环境
首先要检查VPS的TUN是否开启(OpenVZ虚拟化的服务器很可能默认关闭)。
如果返回内容不是指定的结果,请与VPS提供商联系开启TUN权限(一般控制面板有开关)。
执行下面的代码下载并运行脚本。
这里为了防止源库丢失,我clone了一份
下载并运行脚本后会出现脚本操作菜单,选择并输入
1
就会开始安装。首先安装服务端,安装过程中会提示你添加第一个VPN账号(用户名和密码)以及TCP/UDP端口:
使用说明
进入下载脚本的目录并运行脚本:
运行脚本后选择你要执行的选项即可。
其他操作
配置文件:/etc/ocserv/ocserv.conf
账号配置文件:/etc/ocserv/ocpasswd
日志文件:/tmp/ocserv.log
如果你想要修改配置文件,请看参数解释:https://doub.io/vpnzy-6/#配置参数解释
其他说明
运行优化说明
建议在运行 ocserv前,执行一下这个命令,作用是提高系统的文件符同时打开数量,对于TCP连接过多的时候系统默认的 1024 就会成为速度瓶颈。
点击展开 查看更多
这个命令只有临时有效,重启后失效,如果想要永久有效,请执行:
然后最后再执行一下
ulimit -n 51200
即可。提示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)。
点击展开 查看更多