本地搭建免費開源的Syncthing自動文件同步服務(wù)器【遠程訪問】

1.前言
在數(shù)據(jù)爆炸的當下,每天都會產(chǎn)生海量的數(shù)據(jù),這些數(shù)據(jù)可能是我們手機里新拍的照片、工作接收的文件檔案、隨手編輯寫下的文檔、或者新下載的視頻等等,這些數(shù)據(jù)很快就能填滿容量堪憂的智能設(shè)備(手機、平板等)。正因如此,云存儲一時間風頭無兩,不僅能讓這些海量的數(shù)據(jù)有地方安身,還能隨時分享給需要的人。但大廠的云盤總是問題多多,只能自建云盤保平安。

實際上,現(xiàn)在的私人云盤軟件已經(jīng)發(fā)展得十分完善,不僅能滿足基本的大容量存儲需求,還能不受限速困擾。當然,一些私有云盤軟件,還能提供很多特色功能。今天,筆者就為大家介紹,如何安裝能夠自行同步備份數(shù)據(jù)的軟件Syncthing,以及如何與cpolar配合,讓我們能在公共互聯(lián)網(wǎng)上對Syncthing進行操作。
2. Syncthing網(wǎng)站搭建
Syncthing與知名的Resilio Sync很像,都是基于P2P分布式技術(shù),能夠讓對臺設(shè)備實現(xiàn)實時同步文件(也可以選擇某臺設(shè)備文件只上傳)。不過從其功能設(shè)計上看,可能更偏向“文件/文件夾”同步工具,不過并不妨礙我們將其作為云盤服務(wù)器工具來使用。
2.1. Syncthing下載和安裝
Syncthing雖然是以web頁面進行操控,但其安裝并不像其他Web部署那樣,需要將Web文件放進運行環(huán)境中,而是直接提供了對Windows系統(tǒng)來說十分方便的.exe文件安裝方式(為什么說Windows?因為筆者使用Windows?。?,我們只要在其官網(wǎng)下載頁面【https://syncthing.net/downloads/】,下載對應(yīng)操作系統(tǒng)軟件即可。當然Syncthing也提供其他主流操作系統(tǒng)版本的軟件下載。



Syncthing軟件壓縮包下載完成后,將壓縮包解壓,找到解壓后文件夾里的Syncthing.exe程序,雙擊即可運行。在安裝過程中,可能會彈出Windows防火墻詢問,我們只要允許其訪問即可。


安裝程序結(jié)束后,Syncthing會自動打開瀏覽器的8384端口(Syncthing的默認輸出端口),進入Syncthing的主界面,我們可以在這里對Syncthing進行設(shè)置,如同步內(nèi)容,設(shè)備準入等等。

在設(shè)置頁面,我們也能找到Syncthing的輸出端口號,而我們之后的操作,主要就是將這個只能在局域網(wǎng)內(nèi)訪問到的Syncthing頁面,變成能夠在公共互聯(lián)網(wǎng)上訪問到的私人云盤入口。

2.2. Syncthing網(wǎng)頁測試
當然,為了確定我們能在局域網(wǎng)內(nèi)訪問到Syncthing網(wǎng)頁,確保Syncthing網(wǎng)頁運行無誤,我們可以進行一個小測試,即在瀏覽器的無痕模式中,輸入Syncthing地址+端口號,如果能正常訪問到Syncthing網(wǎng)頁,即證明我們的Syncthing可以正常運行

需要注意的是,Syncthing在沒有添加到Windows服務(wù)列表并啟用后臺運行時,需要保持命令行窗口運行,如果關(guān)閉的話,會導致Syncthing運行終止。
2.3.cpolar的安裝和注冊
完成Syncthing的安裝后,就可以轉(zhuǎn)入cpolar的安裝。與Syncthing一樣,cpolar的安裝注冊同樣很簡單。我們可以直接在cpolar的官網(wǎng)頁面找到“下載”按鈕。
cpolar官網(wǎng):https://www.cpolar.com/

筆者使用的是Windows操作系統(tǒng),因此選擇Windows版本進行下載。
Cpolar下載完成后,將下載的文件解壓,雙擊解壓后的.msi文件,即可自動執(zhí)行安裝程序。接著只要一路“Next”就能完成安裝。


由于cpolar會為每個用戶創(chuàng)建獨立的數(shù)據(jù)隧道,并輔以用戶密碼和token碼保證數(shù)據(jù)安全,因此我們在使用cpolar之前,需要進行用戶注冊。注冊過程也非常簡單,只要在cpolar主頁右上角點擊“用戶注冊”,在注冊頁面填入必要信息,就能完成注冊。


3.本地網(wǎng)頁發(fā)布
現(xiàn)在,我們有了可以正常運行的Syncthing軟件,和可以建立內(nèi)網(wǎng)穿透數(shù)據(jù)隧道的cpolar,接下來我們就可以使用cpolar,創(chuàng)建一個能夠連接本地測試頁面的公共互聯(lián)網(wǎng)地址,讓我們的Syncthing能在公共互聯(lián)網(wǎng)上進行操作設(shè)置。
3.1.Cpolar云端設(shè)置
文件同步可能是隨機和持續(xù)的,單cpolar免費版的數(shù)據(jù)隧道每24小時重置一次。相信誰也不會想每天進行數(shù)據(jù)隧道的重連,因此可以將cpolar升級至vip版,以便獲得能長期穩(wěn)定存在的內(nèi)網(wǎng)穿透數(shù)據(jù)隧道。
下一步,我們著手對內(nèi)網(wǎng)穿透數(shù)據(jù)隧道進行設(shè)置,要獲得長期穩(wěn)定的內(nèi)網(wǎng)穿透數(shù)據(jù)隧道,需要先登錄cpolar的官網(wǎng),并在用戶主頁面左側(cè)找到“預留”按鈕,并點擊進入cpolar的數(shù)據(jù)隧道預留頁面。
在這里生成一個公共互聯(lián)網(wǎng)地址(也可以看做數(shù)據(jù)隧道的入口),由于此時這個地址沒有連接本地的軟件輸出端口,因此也可以看做是一條空白的數(shù)據(jù)隧道。

在預留頁面,可以看到很多種可保留的數(shù)據(jù)隧道,這里我們選擇“保留二級子域名”欄位。

在“保留二級子域名”欄位,需要進行幾項信息的簡單設(shè)置,設(shè)置內(nèi)容為:
地區(qū)
:服務(wù)器所在區(qū)域,就近選擇即可二級域名
:會最終出現(xiàn)在生成的公共互聯(lián)網(wǎng)地址中,作為網(wǎng)絡(luò)地址的標識之一描述
:可以看做這條數(shù)據(jù)隧道的描述,能夠與其他隧道區(qū)分開即可
完成這幾項設(shè)置后,就可以點擊右側(cè)的“保留”按鈕,將這條數(shù)據(jù)隧道保留下來。

當然,如果這條數(shù)據(jù)隧道不打算再使用,還可以點擊右側(cè)的“x”將其輕松刪除,節(jié)約寶貴的隧道名額。

3.2.Cpolar本地設(shè)置
完成cpolar云端的設(shè)置,并保留了空白數(shù)據(jù)隧道后,我們打開本地的cpolar客戶端,將云端生成的空白數(shù)據(jù)隧道與本地的測試頁面連接起來。
在本地打開并登錄cpolar客戶端后(可以在瀏覽器中輸入localhost:9200直接訪問,也可以在開始菜單中點擊cpolar客戶端的快捷方式)。

點擊客戶端主界面左側(cè)“隧道管理”項下的“創(chuàng)建隧道”按鈕,進入本地隧道創(chuàng)建頁面(如果要創(chuàng)建臨時數(shù)據(jù)隧道,可直接在這里進行設(shè)置,不必登錄cpolar官網(wǎng)設(shè)置空白數(shù)據(jù)隧道)。
在這個頁面,同樣需要進行幾項信息設(shè)置,這些信息設(shè)置包括:
1.?
隧道名稱
?– 可以看做cpolar本地的隧道信息注釋,只要方便我們分辨即可;
2.?協(xié)議
?– 由于Syncthing是網(wǎng)頁顯示的,因此選擇http協(xié)議;
3.?本地地址
?– 本地地址即為Syncthing的輸出端口號,而Syncthing默認輸出端口為8384,因此這里也填入8384;
4.?域名類型
?– 在這個例子中,我們已經(jīng)在cpolar云端預留了二級子域名的數(shù)據(jù)隧道,因此勾選“二級子域名”(如果預留的是自定義域名,則勾選自定義域名),并在下一行“Sub Domain”欄中填入預留的二級子域名,該例子中為“Syncthingweb”(如果打算創(chuàng)建臨時數(shù)據(jù)隧道,則直接勾選“隨機域名”,由cpolar客戶端自行生成網(wǎng)絡(luò)地址);
5.?地區(qū)
?– 與cpolar云端預留的信息一樣,我們依照實際使用地填寫即可;

完成這幾項簡單設(shè)置,就可以點擊頁面下方的“創(chuàng)建”按鈕,將cpolar云端的空白數(shù)據(jù)隧道與本地的Syncthing頁面連接起來。
我們可以在“隧道管理”項下的“隧道列表”頁面中,對這條數(shù)據(jù)隧道進行管理,包括開啟、關(guān)閉或刪除這條隧道,也可以點擊“編輯”按鈕,最這條數(shù)據(jù)隧道的信息進行修改。

4.公網(wǎng)訪問測試
最后,我們點擊左側(cè)“狀態(tài)”項下的“在線隧道列表”按鈕,就能找到這個頁面的公共互聯(lián)網(wǎng)地址。

不過Syncthing有host頭檢查功能,因此我們還需要對cpolar的數(shù)據(jù)隧道進行一個小修改,才能在公共互聯(lián)網(wǎng)上訪問到本地Syncthing網(wǎng)頁。我們回到“隧道管理”項下的“隧道列表”頁面,找到“Syncthing頁面”的“編輯”,并在數(shù)據(jù)隧道

進入“Syncthing頁面”,點擊“高級”按鈕,為這條數(shù)據(jù)隧道編輯一個新的host頭。

點開“高級”設(shè)置頁面,找到“Host頭域”,將Syncthing在本地的網(wǎng)頁地址填入空格處,也就是“l(fā)ocalhost:8384”,這樣公共互聯(lián)網(wǎng)訪客通過cpolar訪問本地Syncthing網(wǎng)頁時,cpolar可以重寫host頭。填寫完成后,點擊頁面下方的“更新”按鈕,保存我們所做的host頭變更。

完成host頭的設(shè)置后,我們回到“在線隧道列表”頁面,找到Syncthing頁面的公共互聯(lián)網(wǎng)地址,將這個地址粘貼到瀏覽器中,就能看到本地Syncthing頁面,讓我們能在公共互聯(lián)網(wǎng)上,訪問到Syncthing頁面。


5.結(jié)語
當然,使用cpolar創(chuàng)建的數(shù)據(jù)隧道訪問本地Syncthing頁面并不是cpolar的唯一用途,我們可以使用cpolar創(chuàng)建任何指向本地tcp或http端口的內(nèi)網(wǎng)穿透數(shù)據(jù)隧道,將本地網(wǎng)頁或軟件發(fā)布到公共互聯(lián)網(wǎng)上。