一、背景
在做國盛通項目的時候,有兩套並行測試環境,因為基本架構采用的是供應商提供的程序,需要將兩套banner圖做同步,因為圖片數量多,進GitLab版本控制進行分支策略管理,進而同步兩套環境,意義不大,所以考慮服務器之間的同步。
二、環境與需求
環境:
主線測試環境:172.50.1.172(資訊接入服務器)
並行測試環境:172.50.1.132(資訊接入服務器)
操作系統:Windows Server 2008 R2
軟件包:OpenSSH-Win64.zip
GitHub地址:https://github.com/PowerShell/Win32-OpenSSH/releases
需求:
將172.50.1.172的目錄D:\zzinfo\mszx\download\qdymanage同步至172.50.1.132所對應的目錄
三、開始安裝
1.將解壓之后的OpenSSH-Win64.zip放入至C:\Program Files (x86)\OpenSSH-Win64
2.開始安裝,如圖1所示,命令如下:
::打開cmd,安裝sshd cd "C:\Program Files (x86)\OpenSSH-Win64" powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1 ::設置服務自動啟動並啟動服務 sc config sshd start= auto net start sshd
(圖1)
3.設置環境變量
將 C:\Program Files (x86)\OpenSSH-Win64 追加到如圖2所示的位置
(圖2)
------------------------------以上操作,172.50.1.132和172.50.1.172都需要進行------------------------------
4.因為是132從172上取圖片數據,所以172是OpnenSSH服務端,132是OpnenSSH客戶端
以下開始配置免秘鑰登錄
::1.在132服務器上打開cmd,生成密鑰對,一直回車 ssh-keygen -t rsa ::2.生成的公鑰在C:\Users\Administrator\.ssh(如果你是administrator用戶),如圖3所示 ::3.將在132上的id_rsa.pub拷貝至172服務器上C:\Users\Administrator\.ssh目錄上,並在該目錄下,新建一個authorized_keys文件,注意沒有后綴格式!!! ::4.將id_rsa.pub里面的內容拷貝至authorized_keys
圖3
5.重要的一步,注釋服務端172的一個配置C:\ProgramData\ssh\ssh_config,這個目錄是隱藏目錄,如圖4所示
圖4
5.重啟服務端172 sshd服務
net stop sshd net start sshd
四、驗證
在132上打開cmd,輸入命令
ssh administrator@172.50.1.172
如圖5所示,表示已經登錄上
圖5
五、同步172.50.1.172上的D:\zzinfo\mszx\download\qdymanage目錄
batch腳本如下
@echo off echo "---------script:同步172.50.1.172qdymanage-------" echo "----------author by Michael Ho------------" echo "----------start bak_qdymanage----------" rd d:\backup\qdymanage /s /q md d:\backup\qdymanage C:\Windows\System32\xcopy.exe d:\zzinfo\mszx\download\qdymanage d:\backup\qdymanage /s /e rd d:\zzinfo\mszx\download\qdymanage /s /q echo "---------------end bak_qdymanage-------------" echo "-----------172_qdymanage deploy to 132_qdymanage-----------" scp -r administrator@172.50.1.172:d:\zzinfo\mszx\download\qdymanage d:\zzinfo\mszx\download\ echo "-------end-------" exit 0
六、加入Windows任務計划程序
略