Debian 9 配置 OpenConnect(兼容Cisco AnyConnect)

本文详细记录了在Debian9环境下配置OCServ服务器的过程,包括安装服务端、使用Let’sEncrypt生成免费SSL证书、编辑配置文件、设置防火墙及客户端连接测试等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实测安装配置成功,在此记录过程
安装背景:近期,需建立服务器访问内网,先做一个实际测试
  • 配置环境:Debian 9
  • 使用 Let’s Encrypt 生成免费证书
  • 需要一个域名
  • 需要一个公网IP
  • 客户端环境:Android / iOS / Ubuntu / Elementry / DeepinOS 均测试成功
二、配置服务器
  • 这一环节是最关键的,也是本文核心
  • 本人使用 VSCode 安装 Remote - SSH ,其他方法大同小异,能连上服务器就ok

1、安装服务端:
sudo apt update
sudo apt install ocserv
2、安装 Let’s Encrypt Client 用于生成证书
sudo apt install certbot
3、生成证书
sudo certbot certonly --standalone --preferred-challenges http --agree-tos --email xxx@xxx.com -d abc.com

  • 说明: xxx@xxx.com 改成你的邮箱;abc.com 改成你的域名
    因为这台服务器运行这一个服务,故使用这种方法,如服务器上已经部署Nginx等服务,参考ocserv教程安装。
  • 生成证书后,会输出证书目录,请记住或复制目录,下面会用到

4、编辑服务端配置文件
sudo nano /etc/ocserv/ocserv.conf

auth = "pam[gid-min=1000]"
auth = "plain[passwd=/etc/ocserv/ocpasswd]" # 默认即可
tcp-port = 443  # 按自己需求改
udp-port = 443   # 按自己需求改
server-cert = /etc/letsencrypt/live/abc.com/fullchain.pem #刚才的证书路径
server-key = /etc/letsencrypt/live/abc.com/privkey.pem  #刚才的证书路径
max-clients = 20 #最大连接数,自定义。值为零代表不限制连接数
max-same-clients = 1 # 同一账号限制连接数量,按需求更改
try-mtu-discovery = false
idle-timeout = 1200
mobile-idle-timeout = 1200
cookie-timeout = 43200
default-domain = abc.com #你自己的域名
ipv4-network = 10.10.10.0 #这个看你本地网络是什么地址,不冲突就好
ipv4-netmask = 255.255.255.0
tunnel-all-dns = true
dns = 8.8.8.8 
dns = 8.8.4.4
# 把路由都注释掉(前面加 # )
#route = 10.0.0.0/8
#route = 172.16.0.0/12
...
#no-route = 192.168.5.0/255.255.255.0
  • 配置完毕保存 按 Ctrl+x 然后 enter 保存
  • 然后 sudo systemctl restart ocserv 重启服务端
  • 创建账户: sudo ocpasswd -c /etc/ocserv/ocpasswd 你的用户名 然后输入自定义密码,回车。

5、进一步完成配置服务器

sed -i '/net.ipv4.ip_forward.*/d;$a\net.ipv4.ip_forward = 1' /etc/sysctl.conf(开启IPv4转发)
sudo sysctl -p
注:更改在重启后生效,重启后注意检查各服务是否开启

6、防火墙:

sudo apt install ufw 安装防火墙
sudo ufw allow 22/tcp放行SSH
ip addr 查看网卡名
eth.png
iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -o eth0 -j MASQUERADE 注意eth0为你的网卡名
iptables -A FORWARD -s 10.10.10.0/24 -j ACCEPT 地址为你设置的地址
iptables -A INPUT -p tcp -m state --state NEW --dport 443 -j ACCEPT 开放443端口
iptables -A INPUT -p udp -m state --state NEW --dport 443 -j ACCEPT 开放443端口
service iptables save
2002-08 更新: 先apt install iptables-persistent,再iptables-save > /etc/iptables/iptables.rules
sudo systemctl restart ufw #重启防火墙
防火墙简单设置

7、Tips:

  • 安装过程出现错误,尝试安装后运行apt-get -f install -y
  • nano 配置文件后 保存 方法为 ctrl+x
  • systemctl status ocserv可查看服务状态
  • iftop 可以监控服务器流量,sudo apt-get install iftop 即可
  • 在网络环境特别复杂(多重NAT等)、DNS污染,也可能导致连接出现问题。关于路由、网络 可以浏览我的 博客

下载客户端 & 连接

  • 证书是受信任的,所以不会提示证书不安全
  • 下载地址:
    • iOS 搜索 AnyConnect

8、连接:输入域名、username(用户名)、password(密码) 连接即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值