某单位ERP等服务器托管在IDC机房。服务器底层安装VMware ESXi 6.0,创建了多台虚拟机用于ERP与远程管理等。ERP服务器是一台安装了Windows Server 2008 R2操作系统的虚拟机。在IDC机房配置了一台1U的硬件防火墙,将ERP服务器需要的端口映射到互联网。各连锁门店使用防火墙的公网地址加端口,访问ERP服务。系统已经稳定运行了多年。但是在9月初的时候,Windows Server 2008 R2的ERP服务器感染了勒索病毒,RP及其他数据都被加密,无法使用。因为公司定时对ERP等重要数据进行离线备份,技术人员删除了感染的虚拟机,重新安装操作系统系统并通过备份恢复了数据,使业务得以恢复。
为了避免此类情况发生,减少被攻击和入侵的风险,我们采用了如下措施。
(1)将服务器底层系统从ESXi 6.0升级到7.0。
(2)将ERP服务器操作系统从Windows Server 2008 R2升级到Windows Server 2022。
(3)配置1台VPN的虚拟机,各连锁机房通过VPN连接到ERP服务器,不再直接通过公网地址加端口的方式访问ERP服务器。
经过实际测试,我们采用SoftEther搭建了VPN系统,效果较好。
SoftEther VPN是一种开源免费跨平台多协议 VPN 程序,采用 Apache 许可证 2.0,可以在 https://www.softether.org/下载。
VPN服务器端选择Linux版本,配置了一台Cent OS 7的虚拟机。VPN客户端采用OpenVPN客户端程序(使用UDP协议连接)。下面一一介绍。
1 在Cent OS安装SoftEther
在物理服务器ESXi上创建一台名称为CentOS7-SoftEther的虚拟机,为虚拟机分配4个CPU、4GB内存、100GB硬盘空间,1块网卡。然后在虚拟机中安装Cent OS 7.9,为网卡设置内网的IP地址,本示例为192.168.100.19(当前虚拟机及服务器都是使用192.168.100.0/24的地址段)。
【说明】本节用到的相关软件如下:
(1)CentOS-7-x86_64-DVD-2207-02.iso,在 https://developer.aliyun.com/mirror/下载。
(2)SoftEther VPN服务器软件Linux版本,文件名称为softether-vpnserver-v4.42-9798-rtm-2023.06.30-linux-x64-64bit.tar。
(3)SoftEther VPN管理软件Windows版本,文件名称为softether-vpn_admin_tools-v4.42-9798-rtm-2023.06.30-win32.zip。
安装完Cent OS 7.9后,将Centos7设置使用阿里云镜像源,安装SoftEther。下面介绍主要步骤。
(1)执行如下命令备份CentOS-Base.repo文件。
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
(2)删除Cent OS原yum源。
rm -rf /etc/yum.repos.d/*
(3)下载阿里云Centos-7.repo文件。
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
如果提示没有找到wget命令,应使用下面的命令安装
yum install -y wget
(4)清除yum缓存
yum clean all
(5)刷新缓存
yum makecache
将Linux版本SoftEther VPN服务器软件(本示例文件名称为softether-vpnserver-v4.42-9798-rtm-2023.06.30-linux-x64-64bit.tar)使用sftp上传到/tmp文件夹,然后执行如下命令安装。
(1)安装依赖包
yum -y install make gcc gcc-devel gcc-c++ zlib-devel openssl-devel readline-devel ncurses-devel
(2)解压缩文件
tar -xf softether-vpnserver-v4.42-9798-rtm-2023.06.30-linux-x64-64bit.tar.gz -C /usr/local/
(3)执行安装
cd /usr/local/vpnserver
make
(4)将SoftEther添加加服务。在/etc/init.d/文件夹中新建vpnserver的文件。
vi /etc/init.d/vpnserver
添加如下内容:
#!/bin/sh
# chkconfig: 2345 99 01
# description: SoftEther VPN Server
DAEMON=/usr/local/vpnserver/vpnserver
LOCK=/var/lock/subsys/vpnserver
test -x $DAEMON || exit 0
case "$1" in
start)
$DAEMON start
touch $LOCK
;;
stop)
$DAEMON stop
rm $LOCK
;;
restart)
$DAEMON stop
sleep 3
$DAEMON start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0
(5)将vpnserver添加为开机自启动。
chmod 755 /etc/init.d/vpnserver
/sbin/chkconfig --add vpnserver
(6)手动启动SoftEther服务
/etc/init.d/vpnserver start
(7)关闭SELinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
(7) 在防火墙开放VPN服务所需的端口,这些包括管理端口80和5555,以及VPN服务所需要的TCP与UDP的1194、UDP的500和4500。
firewall-cmd --permanent --add-port 80/tcp --add-port 1194/tcp --add-port 5555/tcp --add-port 500/udp --add-port 4500/udp --add-port 1194/udp
firewall-cmd --reload
firewall-cmd --list-all
在配置完成后,安装SoftEther管理客户端,管理配置SoftEther VPN服务器。
【说明】TCP 80与5555是SoftEther使用,UDP和500和4500是L2TP VPN客户端使用,UDP的1194是OpenVPN Server使用。如果需要使用MS-SSTP VPN,还需要映射TCP的443端口。
最后在出口防火墙(或路由器)映射VPN服务器使用的端口到192.168.100.19。在当前的案例中,我们使用OpenVPN客户端,L2TP VPN客户端及SoftEther VPN客户端备用。在出口防火墙或路由器映射TCP的5555、UDP的500、4500和1194到IP地址为192.168.100.19的VPN服务器。
2 管理配置SoftEther
在与SoftEther相同网络的环境中,准备一台Windows的虚拟机,下载并解压缩展开SoftEther管理端(本示例文件名称为softether-vpn_admin_tools-v4.42-9798-rtm-2023.06.30-win32.zip),执行vpnsmgr.exe程序进入管理界面。主要步骤如下。
在SoftEther VPN Server Manager界面,单击“新设置”按钮,进入“新的连接设置”对话框,输入设置名、目标VPN服务器的主机名(IP地址)及端口号,密码初次连接时需要设置密码。如图1所示。
图1 新建连接
返回之后,选中连接名称,单击“连接”按钮,连接到VPN服务器。
(1)登录到VPN管理界面,单击“管理虚拟HUB”按钮,在“管理虚拟HUB”对话框中,单击“管理用户”按钮,在“管理用户”对话框中,单击“新建”按钮,创建VPN登录用户,如图2所示。根据需要,为每个门店创建一个VPN账户。
图2 创建新用户
(2)在“管理虚拟HUB”对话框中,单击“虚拟NAT和虚拟DHCP服务器”单击“启用SecureNAT”按钮,启用SecureNAT。然后单击“SecureNAT”配置,打开SecureNAT配置界面,为VPN客户端设置IP地址及启用虚拟NAT功能,如图3所示。
图3 配置NAT
3 启用OpenVPN克隆功能
SoftEther除了支持自己的VPN Server功能外,也支持标准的L2TP VPN和MS-SSTP VPN客户端,还支持克隆OpenVPN功能。远程用户可以使用SoftEther VPN客户端登录连接,也可以使用Windows内置的VPN客户端使用L2TP与MS-SSTP VPN客户端连接。经过实际测试,SoftEther服务器端使用OpenVPN克隆功能,客户端使用OpenVPN客户端连接效果较好。
在管理VPN Server首页中单击“Open VPN /MS-SSTP”设置按钮,打开Open VPN /MS-SSTP设置对话框,选中“启用Open VPN克隆Server功能”,并在“监听OpenVPN的UDP端口”列表中选择服务端口,本文使用默认端口 UDP的1194端口,如图4所示。
图4 启用OpenVPN克隆Server功能
单击“为OpenVPN Client生成配置样本文件”,保存并生成OpenVPN客户端配置文件。这是一个打包的zip文件,生成之后,解压缩展开,用“记事本”打开名称为“localhost_openvpn_remote_access_l3.ovpn”的文件,修改并编辑如下内容:
# x1.x2.x3.x4为VPN服务器所在出口公网的IP地址
remote x1.x2.x3.x4 1194
# 最多设置1000条route
max-routes 1000
# 不接收openvpn server推送的route
route-nopull
# 设置优先级
route-metric 150
# 指定此网段才走VPN代理
route 192.168.100.0 255.255.255.0 vpn_gateway
配置之后,在分支机构的计算机上安装OpenVPN客户端,导入编辑好的OpenVPN客户端文件,输入账户和密码后登录到内网,如图5所示。
图5 登录到VPN服务器
然后使用内网IP地址访问ERP,不再通过公网地址直接访问ERP系统,这样避免ERP系统直接发布到公网而造成的攻击和入侵。
推荐本站淘宝优惠价购买喜欢的宝贝:
本文链接:https://hqyman.cn/post/6052.html 非本站原创文章欢迎转载,原创文章需保留本站地址!
休息一下~~