共计 1880 个字符,预计需要花费 5 分钟才能阅读完成。
背景:
总部研发中心需要将机房的存储 SMB 服务中某些文件同步到 IDC 及 分公司研发中心办公区内部 SMB。IDC 与总部研发中心通过 IPsecVPN,形成隧道链路;分公司办公区域仅为基本网络。
难点:
办公区无硬件 VPN 类设备,无固定 IP
总部的防火墙提供的 VPN 客户端 Linux 版本仅为 1.00,需要开图形且极其不好用;
解决方法:
办公区域增加前置机安装 windows 版本软件 VPN,实现与总部前置机联通。
网络连接拓扑如下:
应用实施拓扑及步骤如下:
实施步骤 1:
配置两地 SMB
总部 samba 服务器安装 NFS(或者沿用 SMB),分公司配置 SMB 服务器;
在两办公区将相关路径磁盘分别挂载到各自的前置机;
实施步骤 2:
通过的 IPSecVPN 的方式,将总部前置与 IDC 前置策略打通;
将已经挂载 SMB 的前置机上文件夹 rsync 到 IDC 托管服务器的相关目录;
实施步骤 3:
实现 Windows 与 Linux 跨机房数据同步
本文着重讲述实施步骤 3 的相关细则
要点:
分公司无固定 IP,采用“PULL”方式,将数据文件通过 rsync 同步到分公司前置机。
所需软件:
防火墙自带 Windows 版本 VPN 客户端
cwRsync_5.5.0_x86_Free.zip 可以到 Linux 公社资源站下载:
—————————————— 分割线 ——————————————
免费下载地址在 http://linux.linuxidc.com/
用户名与密码都是www.linuxidc.com
具体下载目录在 /2017 年资料 / 4 月 / 1 日 /Windows 与 Linux 跨机房数据同步 /
下载方法见 http://www.linuxidc.com/Linux/2013-07/87684.htm
—————————————— 分割线 ——————————————
众所周知,rsync 依赖于 ssh 进行登录,Windows 版本 rsync 的难点在于如何实现无密码自动登录。
难点 1:ssh 所对应 Windows 下的 /home 目录创建
增加环境变量:
系统变量
新增 path
C:\cwRsync_5.5.0_x86_Free\bin
用户变量
新增 CWRSYNCHOME
C:\cwRsync_5.5.0_x86_Free\bin
完成后需要通过命令行创建 /home/Administrator/.ssh
创建.ssh 必须通过命令行
cmd 中执行
SET CWRSYNCHOME=C:\cwRsync_5.5.0_x86_Free
MKDIR %CWRSYNCHOME%\home\%USERNAME%\.ssh
难点 2:keygen 权限问题
cmd 中执行
ssh-keygen -t rsa -C Administrator@IP
一路回车, 无密码
将得到的公钥下发到总部前置 Linux 服务器
导入分公司前置机公钥
cat id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 .ssh/authorized_keys
公钥下发后依旧保持需要密码,报错如下:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@WARNING: UNPROTECTED PRIVATE KEY FILE!. @@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
这个报错是因为 Windows 下生成的 id_rsa id_rsa.pub 及 konw_hosts 权限不是 600
于是更改文件属性到如下
修改后如下:
执行以下脚本进行同步:
@ECHO OFF
SET CWRSYNCHOME=C:\cwRsync_5.5.0_x86_Free
IF NOT EXIST %CWRSYNCHOME%\home\%USERNAME%\.ssh MKDIR %CWRSYNCHOME%\home\%USERNAME%\.ssh
SET CWOLDPATH=%PATH%
SET PATH=%CWRSYNCHOME%\bin;%PATH%
rsync -vzrtopg –progress –delete backup@总部前置机 IP:/home/share/ /cygdrive/e/
设置任务计划,就可以实现定时自动同步。
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-04/142429.htm