新睿云

> 知识库 > 使用新睿云的云服务器架设VPN服务器来实现分公司ERP统一管理

使用新睿云的云服务器架设VPN服务器来实现分公司ERP统一管理

作者/来源:新睿云小编 发布时间:2019-09-05

由于网络环境的因素,ERP服务器只能放在A区才能通过外网IP的方式让A、B、C三区都能正常连接ERP服务器进行办公,但由于工作时间的不同,会导致其它办公区不能按工作时间使用ERP系统。

ERP

改造后要实现的目标:

ERP系统要24小时能访问,同时要保证ERP系统的安全,让员工只在指定的机器上进行连接访问。

想搭建自己公司的ERP系统请阅读并且参考《企业erp如何选云服务器配置?

方案:

获取新睿云免费云服务器传送门

ECS上安装OpenVPN服务器,将ERP服务器放置到C区,服务器和所有员工使用的电脑通过VPN证书连接虚拟网络,这样就可以通过VPN穿透移动宽带的内网和铁通宽带的线路限制。

VPN网络搭建

ECS环境(操作系统为CentOS 7.x)

ECS服务器上要配置epel软件源,由于新睿云ECS上已经配置了epel源,此处不用配置。

安装OpenVPN所需软件

yum -y install openvpn easy-rsa iptables-services

拷贝easy-rsa脚本到/etc/openvpn

cp -r /usr/share/easy-rsa/ /etc/openvpn

进入easy-rsa目录并编辑vars文件

cd /etc/openvpn/easy-rsa/2.0

vim vars

export KEY_SIZE=2048

export CA_EXPIRE=3650

export KEY_EXPIRE=3650

export KEY_COUNTRY="CN"

export KEY_PROVINCE="YN"

export KEY_CITY="Kunming"

export KEY_ORG="MYORG"

export KEY_EMAIL="wanglu@example.com"

export KEY_OU="MyOrgUnit"

export KEY_NAME="EasyRSA"

让上面修改的变量生效

source ./vars

运行clean-all心确保工作区的干净

./clean-all

现在可以开始生成证书了,生成过程中会在交互界面要你输入一些参数,由于之前在vars中设置过了,这里全部按回车就行

./build-ca

此命令生成的ca.crt和ca.key会保存在/etc/openvpn/easy-rsa/2.0/keys/目录下

生成服务器端证书和密钥

./build-key-server server

运行该命令后会提示输入一些参数,此处我全部留空,但要注意,提示输入[y/n]时输入y,这样就完成服务器端证书生成了

生成一个Diffie-Hellman交换密钥

./build-dh

生成客户端证书

./build-key client1

该命令和生成服务端证书步骤一样

将ca.crt、server.crt、server.key、dh2048.pem拷贝到/etc/openvpn目录下

cp /etc/openvpn/easy-rsa/2.0/keys/ca.crt /etc/openvpn/

cp /etc/openvpn/easy-rsa/2.0/keys/server.crt /etc/openvpn/

cp /etc/openvpn/easy-rsa/2.0/keys/server.key /etc/openvpn/

cp /etc/openvpn/easy-rsa/2.0/keys/dh2048.pem /etc/openvpn/

配置OpenVPN服务器

拷贝示例配置文件到/etc/openvpn目录下

cp /usr/share/doc/openvpn-2.3.8/sample/sample-config-files/server.conf /etc/openvpn/

修改配置如下:

# 填写OpenVPN要使用的IP地址

# 这里我写ECS服务器的外网IP

# 具体IP根据自己的服务器来写

local xxx.xxx.xxx.xxx

# 使用的端口,记住防火墙要打开1194端口

port 1194

# 使用的协议,保持默认

proto udp

# "dev tun" will create a routed IP tunnel,

dev tun

# 生成的证书相关的配置

ca ca.crt

cert server.crt

key server.key

dh dh2048.pem

# 网络拓扑,为了让所有客户端在同一子网内,打开此选项

topology subnet

# 配置使用的IP地址

# 下面的设置,些服务器会自动使用10.8.8.1做为自己的IP地址

server 10.8.8.0 255.255.255.0

# 如果要固定客户端的IP地址,请打开此选项,否则不要打开

client-config-dir ccd

# 此选项必须打开

push "redirect-gateway def1 bypass-dhcp"

# 网络相关的设置,此处用DNSPOD的DNS

push "dhcp-option DNS 119.29.29.29"

push "dhcp-option DNS 182.254.116.116"

# 让客户端之间可以相互通讯

client-to-client

# 第20秒会进行ping测试,如果120秒没有回应会断线

keepalive 20 120

comp-lzo

max-clients 20

# 为了安全

user nobody

group nobody

persist-key

persist-tun

# 开启日志

log-append /var/log/openvpn.log

# 设置日志等级

verb 3

因为我在配置文件中配置了client-config-dir ccd,所以我要继续设置客户端IP(没有打开的可以不用设置,DHCP服务器会自动分配)

首先在/etc/openvpn下建立ccd目录

mkdir /etc/openvpn/ccd

这里我将之前生成的client1的客户端IP设置为如下10.8.8.101,子网掩码为255.255.255.0

vi /etc/openvpn/ccd/client1

配置文件如下:

ifconfig-push 10.8.8.101 255.255.255.0

禁用firewalld启用iptables

为了有效的进行数据转发,要关闭CentOS 7默认的firewalld开启iptables

#关闭firewalld

systemctl stop firewalld

#禁用firewalld

systemctl disable firewalld

#启用iptables

systemctl enable iptables

#启动iptables

systemctl start iptables

禁用SELINUX,并重启服务器

vi /etc/selinux/config

# 更改配置文件中的参数如下

SELINUX=disabled

修改linux内核参数,开发端口功能

vi /etc/sysctl.conf

# 修改如下参数

net.ipv4.ip_forward = 1

# 让内核参数更新

sysctl -p

在iptables中增加一条转发规则

# 注意规则中eth1,这个是对应server.conf中配置的外网IP地址所在的网络接口

iptables -t nat -A POSTROUTING -s 10.8.8.0/24 -o eth1 -j MASQUERADE

# 保存规则

iptables-save > /etc/sysconfig/iptables

启动OpenVPN服务器

systemctl start openvpn@server

至此,OpenVPN服务器搭建完成

本文取材自互联网,如有侵权处还请联系管理员删除!

热门标签
免费领云产品

免费用

立即领取
联系客服
在线客服   
反馈意见
返回顶部
{{item.description}}

—您的烦恼我们已经收到—

我们会将处理结果发送至您的手机

请耐心等待