使用ubuntu18.04配置ocserv服务

一、准备工作

  1. 更新操作系统
apt-get update
apt-cache show ocserv
apt-get upgrade

二、安装ocserv

apt-get install ocserv

三、配置证书

  1. 安装证书工具
apt-get install gnutls-bin
  1. 创建CA证书
cd ~
mkdir certificates
cd certificates
vim ca.tmpl
certtool --generate-privkey --outfile ca-key.pem #生成ca密钥
certtool --generate-self-signed --load-privkey ca-key.pem --template ca.tmpl --outfile ca-cert.pem #生成ca证书

将以下内容贴入ca.tmpl
cn = " your server ip "
organization = " abcd.com "
serial = 1
expiration_days = 3650
ca
signing_key
cert_signing_key
crl_signing_key

  1. 创建server证书
vim server.tmpl
certtool --generate-privkey --outfile server-key.pem #生成server密钥
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 #生成server证书

将以下内容贴入server.tmpl
cn = " Your hostname or IP "
organization = "abcd.com "
expiration_days = 3650
signing_key
encryption_key
tls_www_server

  1. 将证书移动到指定的目录
cp ca-cert.pem /etc/ssl/certs/ca-cert.pem
cp ca-key.pem /etc/ssl/private/ca-key.pem
cp server-cert.pem /etc/ssl/certs/server-cert.pem
cp server-key.pem /etc/ssl/private/server-key.pem

四、配置ocserv服务

  1. 配置ocserv.conf文件
vim /etc/ocserv/ocserv.conf

参照以下进行修改
# 登陆方式,目前先用密码登录
auth = “plain[/etc/ocserv/ocpasswd]”
# 允许同时连接的客户端数量
max-clients = 10
# 限制同一客户端的并行登陆数量
max-same-clients = 6
# 服务监听的TCP/UDP端口(选择你喜欢的数字)
tcp-port = xxxx
udp-port = xxxx
# 自动优化VPN的网络性能
try-mtu-discovery = true
# 确保服务器正确读取用户证书(后面会用到用户证书)
cert-user-oid = 2.5.4.3
# 服务器证书与密钥
server-cert = /etc/ssl/certs/server-cert.pem
server-key = /etc/ssl/private/server-key.pem
# 客户端连上vpn后使用的dns
dns = 8.8.8.8
dns = 8.8.4.4
# 注释掉所有的route,让服务器成为gateway
#route = 192.168.1.0/255.255.255.0
# 启用cisco客户端兼容性支持
cisco-client-compat = true

  1. 配置ocserv账号密码
root# ocpasswd -c /etc/ocserv/ocpasswd vpnuser
Enter password:
Re-enter password:

五、配置iptable

  1. 自动调整MTU
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
  1. 开启 NAT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
  1. 开启 IPv4 转发
sysctl -w net.ipv4.ip_forward=1
# 或修改配置文件
/etc/sysctl.conf:net.ipv4.ip_forward = 1
  1. 允许端口
iptables -I INPUT -p tcp --dport 443 -j ACCEPT;
iptables -I INPUT -p udp --dport 443 -j ACCEPT;
  1. 保存配置
iptables-save > /etc/iptables.rules
#修改脚本/etc/networks/interfaces文件,在结尾加入以下语句
pre-up iptables-restore <  /etc/iptables.rules

六、开启服务和调试模式

  1. 调试模式启动
ocserv -c /etc/ocserv/ocserv.conf -f -d 1
  1. 正常启动
/etc/init.d/ocserv stop
/etc/init.d/ocserv start
/etc/init.d/ocserv restart
七、其他问题
  1. 如果遇到登陆失败的情况,重启ocserv服务即可。
  2. 对于双网卡转发:iptable规则应作如下配置:
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth1 -j SNAT --to-source 出口IP

然后新增rt_table规则自动转发即可。
3. 待补充

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值