Ubuntu系统搭建ocserv服务器并配置anyconnect客户端

记录在Ubuntu系统中搭建ocserv服务器并配置anyconnect客户端完成虚拟局域网搭建的过程

环境介绍

服务器环境

系统Ubuntu 20.04版本
本次搭建使用到了一键安装脚本,因此需要使用wget命令,如果你的服务器不是Ubuntu系统,请确认并安装wget软件

本地环境

1.anyconnect客户端是思科开发维护的虚拟局域网软件客户端,它支持多个操作系统,为了后期使用ocserv服务,请提前安装好anyconnect客户端(ios系统中叫Cisco)
2.本次操作会使用SSH连接 scp命令,请确保你的电脑终端中支持这两个命令

服务器购买

服务器网络环境的好坏直接影响后期使用效果,因此请你酌情购买响应服务器
关于服务器配置,此处提醒你,服务器的硬件指标需要尽可能提高网络带宽指标,其他指标可以不做要求,操作系统最好是Ubuntu20.04(因为我的实验基于Ubuntu)

购买服务器后需要测试服务器与本地的网络连接情况,请使用ping指令测试您的服务器网络延时,一般香港地区在<80ms,北美<200ms为最佳

#备注27.34.43.30 用你的服务器ip替换掉这个ip

ping 27.34.43.30

服务器进程搭建

此处我们使用ssh方式连接到服务器

#备注27.34.43.30 用你的服务器ip替换掉这个ip

ssh root@27.34.43.30

首次ssh连接会有一些小插曲,如果屏幕出现这样的情况

请根据提示输入‘yes’

如果屏幕报错类似如下:

请输入以下命令

#备注172.20.10.2,请用你的服务器地址ip替换这个ip
ssh-keygen -R 172.20.10.2

如果一切顺利,在输入完正确的服务器密码后您将成功远程ssh到您的服务器,结果如下所示:

在确保成功ssh登录后,我们即将开始安装ocserv进程

首先请在您的远程终端中输入下载安装脚本命令:

wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/ocserv.sh && chmod +x ocserv.sh && bash ocserv.sh

在此提醒,本次搭建操作的安装速度与您服务器的网络情况有关,请务必购买可靠服务器,确保网络延迟较小

如果上一步正常,您将看到如下界面:

根据界面提示输入响应数字即可
首次安装我们应该输入1并按下enter键

后面的过程脚本会自动安装响应证书和程序,大概需要5-10分钟

在这个过程中需要你输入相关的进程端口号(端口号用于进程通信,默认443,此处我们输入9898),端口号设置完成后需要输入管理员账户名和密码,(默认admin)

账户和密码用于后面的客户端登录,请记住。

安装完成后,进程默认处于关闭状态,输入如下命令启动管理进程

./ocserv.sh

效果如下:

我们可以输入相关数字完成我们的相关设置

服务器进程的配置文件和账号密码信息保存在 /etc/ocserv/目录下 分别为ocpasswd 和ocserv.conf文件

如果需要退出管理程序,只需不输入任何数字按下enter键即可。

修改配置

为了使服务器进程更完善,我们可以修改一些配置。如果你熟悉vi文档编辑器,请直接输入如下命令修改文件:

cd /etc/ocserv
vi ocserv.conf

修改完记得保存并重启ocserv进程

由于我们需要改动的地方较多,我们计划在本地写好ocserv.conf文件再上传到/etc/ocserv/目录下
操作如下
在ssh远程终端输入

logout

退出ssh

在本地创建ocserv.conf文件
具体内容如下

auth = "plain[passwd=/etc/ocserv/ocpasswd]"
# listen-host = [IP|HOSTNAME]
tcp-port = 9898
udp-port = 9898
run-as-user = nobody
run-as-group = daemon
socket-file = /var/run/ocserv-socket
server-cert = /etc/ocserv/ssl/server-cert.pem
server-key = /etc/ocserv/ssl/server-key.pem
ca-cert = /etc/ocserv/ssl/ca-cert.pem
isolate-workers = true
max-clients = 256
max-same-clients = 2
rate-limit-ms = 0
server-stats-reset-time = 604800
keepalive = 32400
dpd = 90
mobile-dpd = 1800
switch-to-tcp-timeout = 25
try-mtu-discovery = false
tls-priorities = "NORMAL:%SERVER_PRECEDENCE:%COMPAT:-VERS-SSL3.0"
auth-timeout = 240
idle-timeout = 86400
mobile-idle-timeout = 86400
min-reauth-time = 300
max-ban-score = 80
ban-reset-time = 1200
cookie-timeout = 300
deny-roaming = false
rekey-time = 172800
rekey-method = ssl
use-occtl = true
pid-file = /var/run/ocserv.pid
net-priority = 6
device = vpns
predictable-ips = true
default-domain = example.com

ipv4-network = 192.168.1.0
ipv4-netmask = 255.255.255.0
# An alternative way of specifying the network:
#ipv4-network = 192.168.1.0/24
# The IPv6 subnet that leases will be given from.
#ipv6-network = fda9:4efe:7e3b:03ea::/48 
# Specify the size of the network to provide to clients. It is
# generally recommended to provide clients with a /64 network in
# IPv6, but any subnet may be specified. To provide clients only
# with a single IP use the prefix 128.
#ipv6-subnet-prefix = 128
#ipv6-subnet-prefix = 64

# tunnel-all-dns = true
dns = 8.8.8.8
dns = 8.8.4.4
ping-leases = false

cisco-client-compat = true
dtls-legacy = true

写好后我们使用scp上传

#scp -r 本地配置文件保存位置路径如  root@服务器ip:/etc/ocserv/
scp -r home/ocserv.conf root@10.23.45.56:/etc/ocserv/

然后我们再次ssh登录远程服务器

#ssh root@这里写你的服务器ip
ssh root@10.23.34.34

启动服务器进程

./ocserv.sh

输入5重启服务

之后输入logout退出远程

客户端连接

pc端客户端一般张这个样子:

输入框里输入配置好的服务器ip:端口号
假如我们服务器IP是12.34.34.10,我们需要输入
12.34.34.10:9898
点击connect按钮,后面根据提示输入用户名密码就行,当有绿色图标出现时表示连接成功,请打开浏览器访问google测试

posted @   Ishuai  阅读(620)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示