Linux下安装搭建CiscoAnyConnect服务软件VPN(ocserv)并配置账号

2022-02-04 4518点热度 1人点赞 0条评论

Cisco的AnyConnectVPN并不是都需要Cisco的硬件才能使用的,有人已经实现并开源了AnyConnect的协议,使用软件就可以搭建AnyConnect服务。详见:https://ocserv.gitlab.io/www/

下面是我平时在CentOS上搭建Ocserv的配置步骤,供参考

安装ocserv

安装比较简单,只需要yum安装epel-release然后安装安装ocserv就可以了。

# 安装epel-release
yum -y install epel-release

# 安装ocserv
yum -y install ocserv

生成CA证书

$ mkdir /etc/ocserv/certs
$ cd /etc/ocserv/certs

$ certtool --generate-privkey --outfile ca-key.pem

$ cat >ca.tmpl <<EOF
cn = "VPN CA"
organization = "Terry Tech Corp"
serial = 1
expiration_days = 3650
ca
signing_key
cert_signing_key
crl_signing_key
EOF

$ certtool --generate-self-signed --load-privkey=ca-key.pem --template=ca.tmpl --outfile=ca-cert.pem

生成服务器证书

产生/etc/ocserv/certs/server-cert.pem和/etc/ocserv/certs/server-key.pem,后面ocserv.conf配置文件里会用到

$ cd /etc/ocserv/certs
$ certtool --generate-privkey --outfile server-key.pem
$ cat >server.tmpl <<EOF
cn = "www.terrynow.com"
organization = "Terry Tech Corp"
serial = 2
expiration_days = 3650
encryption_key
signing_key
tls_www_server
EOF

$ certtool --generate-certificate --load-privkey=server-key.pem \
--load-ca-certificate=ca-cert.pem --load-ca-privkey=ca-key.pem \
--template=server.tmpl --outfile=server-cert.pem

修改/etc/ocserv/ocserv.conf

主要修改的配置文件如下:

# 存放账号的文件
auth = "plain[/etc/ocserv/passwd]"
# 对外的端口号,可根据实际情况修改
tcp-port = 443
udp-port = 443
# server 证书
server-cert = /etc/ocserv/certs/server-cert.pem
server-key = /etc/ocserv/certs/server-key.pem
# ca 证书
ca-cert = /etc/ocserv/certs/ca-cert.pem
cert-user-oid = 2.5.4.3
# VPN环境的内网IP地址段,可根据自己的情况修改一个内网地址段(例如172.16.1.0/24这种)
ipv4-network = 192.168.100.0/24
# 客户端的路由,自定义客户端某些网段走VPN,其他普通的网段不走VPN
route = 10.52.0.0/255.255.255.0

用户相关操作

#添加用户
ocpasswd -c /etc/ocserv/passwd 【用户名】
#锁定用户
ocpasswd -c /etc/ocserv/ocpasswd -l 【用户名】
#解锁用户
ocpasswd -c /etc/ocserv/ocpasswd -u 【用户名】
#删除用户
ocpasswd -c /etc/ocserv/ocpasswd -d 【用户名】

#查看当前在线用户详情:
occtl -n show users
#查看当前服务运行状态
occtl -n show status
#踢掉当前用户
occtl disconnect id 【id号】

ocserv服务相关操作

# 开机自动启动ocserv服务
systemctl enable ocserv
# 重启
systemctl restart ocserv
# 当前服务状态
systemctl status ocserv

 

admin

这个人很懒,什么都没留下

文章评论

您需要 登录 之后才可以评论