阿里云ecs安装ocserv

https://www.jarods.org/419.html
需要打开firewalld或iptables做转发

yum -y install epel-release

然后就可以直接YUM安装Ocserv了:

yum -y install ocserv

新建一个目录,用来存放SSL证书相关文件,然后进入到这个目录内:

mkdir ssl
cd ssl

新建一个证书模板:
vim ca.tmpl

cn = "Lingxi"
organization = "Lingxi.IM"
serial = 1
expiration_days = 9999
ca
signing_key
cert_signing_key
crl_signing_key

注:Lingxi和Lingxi.IM可以根据自己的需要更改,反正都是自签证书

然后生成私钥和CA证书:

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

接着来生成服务器证书,还是老样子新建一个证书模板:

vim server.tmpl

cn = "192.168.2.20"
organization = "Lingxi.IM"
expiration_days = 9999
signing_key
encryption_key
tls_www_server

注:cn后面的值改成你的服务器公网IP。

然后生成私钥和证书:

certtool --generate-privkey --outfile server-key.pem
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

然后我们把证书文件用移动到Ocserv默认的目录下:

cp server-cert.pem /etc/pki/ocserv/public/
cp server-key.pem /etc/pki/ocserv/private/
cp ca-cert.pem /etc/pki/ocserv/cacerts/

现在编辑ocserv的配置文件(需要改动的地方很多,如果vi不好用就自己用SFTP把这个文件下载到本地用专业的编辑器编辑):

vim /etc/ocserv/ocserv.conf

1、auth也就是验证方式要改为:

auth = “plain[passwd=/etc/ocserv/ocpasswd]”

2、默认的监听端口为443,如果你的服务器上跑着HTTPS的WEB站点,那么443端口肯定是被占用了的,所以如果有需求的话,可以更改下面的值:

TCP and UDP port number
tcp-port = 8443
udp-port = 8443

3、Anyconnect有一个设置连接欢迎信息的功能,也就是你在连接的时候会弹出一个提示框,提示框的内容就可以自行设置,如有需要可以更改下面的值:

A banner to be displayed on clients
banner = “Welcome LALA.IM”

4、Anyconnect可以限制最大允许连接的设备数量,如有需要可以更改下面这两个值:

max-clients = 16
max-same-clients = 2

5、更改服务器证书以及私钥的路径为我们刚才移动的路径:

server-cert = /etc/pki/ocserv/public/server-cert.pem
server-key = /etc/pki/ocserv/private/server-key.pem

6、更改CA证书的路径为我们刚才移动的路径:

ca-cert = /etc/pki/ocserv/cacerts/ca-cert.pem

7、取消如下几个参数的注释(去掉#号就是去掉注释):

ipv4-network = 172.35.1.0
ipv4-netmask = 255.255.255.0

An alternative way of specifying the network:
ipv4-network = 172.35.1.0/24

8、去掉如下参数的注释以及设置DNS服务器地址:

tunnel-all-dns = true
dns = 100.100.2.136
dns = 100.100.2.138

route = 192.168.1.0/24
route = 192.168.10.0/24
route = 192.168.2.0/24
route = 192.168.7.0/24
route = 192.168.0.0/24
route = 192.168.6.0/24
route = 192.168.100.0/24

现在来创建一个VPN用户:

ocpasswd -c /etc/ocserv/ocpasswd lala

删除指定的用户:

ocpasswd -c /etc/ocserv/ocpasswd -d lala

现在我们开启机器的IPV4转发功能:

echo 1 > /proc/sys/net/ipv4/ip_forward

然后启动CentOS7的Firewalld防火墙:

systemctl start firewalld.service

放行Anyconnect的端口(我这里之前设置的是默认的443端口,如果你修改了端口,那么这里也要对应):

firewall-cmd --permanent --zone=public --add-port=8443/tcp
firewall-cmd --permanent --zone=public --add-port=8443/udp

firewall-cmd --zone=public --add-port=1723/tcp --permanent

设置转发:

firewall-cmd --permanent --add-masquerade
firewall-cmd --permanent --direct --passthrough ipv4 -t nat -A POSTROUTING -o eth0 -j MASQUERADE

注:eth0是你的公网网卡名字,每个机器的名字可能都不一样,自己用ifconfig命令查一下就行了。

重加载,让新的配置生效:

firewall-cmd --reload

现在就可以尝试运行一下Ocserv了:

ocserv -f -d 1

如果一切正常,回显的内容大致如下图所示:

确定正常后按键盘组合键Ctrl+C退出运行,现在我们就可以直接用systemctl来管理Ocserv的进程。

设置Ocserv开机启动:

systemctl enable ocserv

启动Ocserv:

systemctl start ocserv

cat /etc/sysconfig/iptables

Generated by iptables-save v1.4.21 on Fri Jan  8 21:50:10 2021
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [4:3118]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 192.168.199.0/24 -o eth0 -j MASQUERADE
-A POSTROUTING -o eth0 -j MASQUERADE
-A POSTROUTING -s 192.168.101.0/24 -j MASQUERADE
COMMIT

Completed on Fri Jan  8 21:50:10 2021
Generated by iptables-save v1.4.21 on Fri Jan  8 21:50:10 2021
*filter
:INPUT ACCEPT [151:14300]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [105:26867]
COMMIT
Completed on Fri Jan  8 21:50:10 2021
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值