内容简介:作者: 黄高明日期: 2019-06-14类别: vpn系列
作者: 黄高明
日期: 2019-06-14
类别: vpn系列
标题: CentOS7使用Ocserv搭建CiscoAnyconnect服务器
介绍
AnyConnect作为Cisco专有技术,其服务端只能运行在Cisco设备上,即如果没有购买Cisco相关设备,将无法使用AnyConnect服务端。而OpenConnect( ocserv
)的出现解决了这一个问题, OpenConnect
是一个开源项目,其目标是在相对廉价的 linux 设备上运行与AnyConnect协议兼容的服务端,以此来使用该协议而不需要购买Cisco专有设备。
AnyConnect目前支持 Windows 7+ / Android / IOS / Mac ,其他设备没有客户端所以无法使用,例如 XP系统。
OpenConnect特点:
- 我们需要的是安全内网访问,不是快速地绕过防火墙… 而且后期需要加入证书认证
- OpenVPN 协议特征过于明显,虽然 AnyConnect 协议特征也十分明显,但是由于目前只有一些大厂在用,一般而言直接拨位与海外的 VPN 网关不容易受到干扰或受到的干扰较小
- 对于例如 iOS/BlackBerry BBOS 系统而言,一般自带 AnyConnect 连接工具
- 多系统支持,Windows 7+ / Android / IOS / Mac
部署
请撮: https://www.pvcreate.com/index.php/archives/193/
配置
主配置文件
/etc/ocserv/ocserv.conf
注意以上一键部署脚本会自动添加route配置,如果你想连接上anyconnect之后,全部流量都走vpn的话,请注释该配置文件以route开头的配置。如果只有部分网段走vpn的话,可以自行配置。比如连接上vpn之后,只有访问公司192.168.0.0/25网段才走vpn,可以在该配置文件之后添加
auth = "plain[passwd=/etc/ocserv/ocpasswd]" tcp-port = 443 udp-port = 443 run-as-user = ocserv run-as-group = ocserv socket-file = ocserv.sock chroot-dir = /var/lib/ocserv isolate-workers = true max-clients = 1024 max-same-clients = 10 keepalive = 32400 dpd = 90 mobile-dpd = 1800 switch-to-tcp-timeout = 25 try-mtu-discovery = false server-cert = /etc/pki/ocserv/public/server.crt server-key = /etc/pki/ocserv/private/server.key tls-priorities = "NORMAL:%SERVER_PRECEDENCE:%COMPAT:-VERS-SSL3.0" auth-timeout = 240 min-reauth-time = 300 max-ban-score = 50 ban-reset-time = 300 cookie-timeout = 86400 deny-roaming = false rekey-time = 172800 rekey-method = ssl use-occtl = true pid-file = /var/run/ocserv.pid device = vpns predictable-ips = true ipv4-network = 192.168.8.0/21 dns = 8.8.8.8 dns = 8.8.4.4 ping-leases = false cisco-client-compat = true dtls-legacy = true
参数解释
# 选择喜欢的登录方式,如果想使用证书登录的话应该把auth="certificate"前的井号删掉并在下面这行的前面加上井号。第5点会提到 auth = "plain[/etc/ocserv/ocpasswd]" # 允许同时连接的总客户端数量,比如下面的4就是最多只能4台设备同时使用 max-clients = 4 #不同用户用同一个用户名可以同时登录,下面限制的是多少同名用户可以同时使用。改成0就是不作限制 max-same-clients = 2 # ocserv监听的IP地址,千万别动动了就爆炸 #listen-host = [IP|HOSTNAME] # 服务监听的TCP/UDP端口,如果没有搭网站的话就用TCP443/UDP80好了 tcp-port = 443 udp-port = 80 # 开启以后可以增强VPN性能 try-mtu-discovery = true # 让服务器读取用户证书(后面会用到用户证书) cert-user-oid = 2.5.4.3 # 服务器证书与密钥 server-cert = /etc/ssl/selfsigned/server-cert.pem server-key = /etc/ssl/selfsigned/server-key.pem # 服务器所使用的dns,我们使用Google提供的DNS dns = 8.8.8.8 dns = 8.8.4.4 #把route = *全注释掉就是了 #route = 192.168.1.0/255.255.255.0 # 使ocserv兼容AnyConnect cisco-client-compat = tru
用户配置 /etc/ocserv/ocpasswd
user:*:$5$AUmpA0nrORBa4M1K$sfEvgp70uiunAD9QHaUm.lgKid9lgYCYumsO0OKsB0C
命令
创建用户
ocpasswd -c /etc/ocserv/ocpasswd user
删除用户
ocpasswd -c /etc/ocserv/ocpasswd -d user
启动服务
service ocserv start
关闭服务器
service ocserv stop
重启服务
service ocserv restart
添加开机启动项
chkconf ocserv on
相关文章
序号 | 标题 |
---|---|
1 | 通过脚本一键安装ocserv(anyconnect服务端) |
2 | CentOS7使用Ocser搭建CiscoAnyconnect服务器(配置使用) |
3 | 通过脚本一键安装openvpn |
4 | OpenVPN同时监听TCP和UDP端口 |
5 | CentOS 7安装配置PPTP |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。