国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

圖書館數(shù)字資源遠(yuǎn)程訪問系統(tǒng)的搭建

2022-12-21 03:02:20申繼年劉新霞
中國教育網(wǎng)絡(luò) 2022年8期
關(guān)鍵詞:配置文件日志示例

文/申繼年 劉新霞

VPN技術(shù)在圖書館應(yīng)用已久,但是面對(duì)數(shù)字資源種類繁多的授權(quán)訪問方式,導(dǎo)致使用過程中出現(xiàn)了諸多問題,如:Web代理方式的VPN訪問國外的部分?jǐn)?shù)據(jù)庫時(shí),經(jīng)常會(huì)出現(xiàn)瀏覽器無法自動(dòng)跳轉(zhuǎn)的情況;僅提供Web訪問的VPN無法滿足客戶端和移動(dòng)端的App的使用;需要安裝瀏覽器插件的VPN無法在移動(dòng)終端上使用。鑒于此,筆者將圖書館數(shù)字資源的訪問方式分為三類:第一類,Web頁面訪問的數(shù)字資源,如大多數(shù)電子數(shù)據(jù)庫;第二類,客戶端訪問,如Endnote、NoteExpress等文獻(xiàn)管理軟件;第三類,移動(dòng)終端訪問,如書香中國、超星等需要在移動(dòng)終端閱讀的電子書。本文旨在選擇一種VPN,可以滿足數(shù)字資源的各類訪問要求,提升用戶體驗(yàn)。

VPN技術(shù)的選擇

VPN技術(shù)對(duì)比

目前,VPN技術(shù)主要包括:PPTP、L2TP/IPSec、SSL VPN、OpenVPN和WebVPN幾種,筆者通過表1對(duì)五種VPN進(jìn)行對(duì)比。

表1 常見VPN技術(shù)比較

PPTP、L2TP/IPSec對(duì)網(wǎng)絡(luò)要求很高,當(dāng)運(yùn)營商的網(wǎng)絡(luò)存在地址轉(zhuǎn)換設(shè)備時(shí),將無法正常連接。目前,最常用的VPN技術(shù)主要為SSL VPN和WebVPN。

WebVPN提供基于Web的內(nèi)網(wǎng)應(yīng)用訪問控制,允許授權(quán)用戶訪問只對(duì)內(nèi)網(wǎng)開放的Web應(yīng)用,實(shí)現(xiàn)類似VPN的功能。區(qū)別于傳統(tǒng)VPN技術(shù),WebVPN無需用戶做任何配置或安裝客戶端軟件及瀏覽器插件,直接在網(wǎng)頁上通過身份驗(yàn)證即可進(jìn)入內(nèi)網(wǎng)應(yīng)用,大大降低了使用門檻,提升了用戶體驗(yàn)感。但是,WebVPN只適用于采用B/S架構(gòu)的Web瀏覽器的應(yīng)用,而對(duì)C/S架構(gòu)的客戶端和移動(dòng)端的應(yīng)用無法支持。

SSL VPN是以SSL協(xié)議為安全基礎(chǔ)的VPN遠(yuǎn)程接入技術(shù)。遠(yuǎn)程用戶使用SSL VPN可以安全方便地接入內(nèi)網(wǎng),訪問內(nèi)網(wǎng)資源;無需安裝額外軟件,直接使用瀏覽器訪問內(nèi)網(wǎng)Web資源,也可以通過安裝瀏覽器插件,訪問其他非Web資源;SSL VPN既支持全局流量,也支持局部流量,根據(jù)不同用戶的身份,分配不同的訪問權(quán)限,實(shí)現(xiàn)精細(xì)控制。

OpenVPN作為一個(gè)開源軟件,就是一個(gè)典型的SSL VPN應(yīng)用,使用的是工業(yè)標(biāo)準(zhǔn)的SSL/TLS協(xié)議。OpenVPN不是一個(gè)基于Web代理的應(yīng)用,也不是基于瀏覽器訪問,而是需要安裝專門的客戶端,其客戶端可以支持當(dāng)前所有主流終端類型。

OpenVPN技術(shù)

OpenVPN的技術(shù)核心是虛擬網(wǎng)卡,其次是SSL協(xié)議實(shí)現(xiàn)。虛擬網(wǎng)卡工作原理如圖1所示。OpenVPN是一個(gè)基于SSL加密的純應(yīng)用層VPN協(xié)議,是SSL VPN的一種,支持UDP與TCP兩種方式。UDP的效率會(huì)比較高,速度也相對(duì)較快。所以,盡量使用UDP連接方式,如果網(wǎng)絡(luò)延遲高或者丟包嚴(yán)重,再使用TCP連接方式。

圖1 虛擬網(wǎng)卡工作原理

OpenVPN支持全局流量和局部流量兩種方式,客戶端軟件可以很方便地配合路由表,實(shí)現(xiàn)不同線路的路由選擇,實(shí)現(xiàn)一部分目標(biāo)IP走VPN,另一部分目標(biāo)IP走本地網(wǎng)絡(luò)。

遠(yuǎn)程訪問系統(tǒng)的功能設(shè)計(jì)與實(shí)現(xiàn)

OpenVPN功能設(shè)計(jì)

OpenVPN是一個(gè)強(qiáng)大、高度可配置的開源軟件,可以根據(jù)場景和業(yè)務(wù)需求進(jìn)行靈活部署。OpenVPN工作在OSI模型的第2層或第3層, 使用SSL/TLS協(xié)議進(jìn)行網(wǎng)絡(luò)傳輸,支持多種認(rèn)證方法,如證書、加上用戶名密碼的證書認(rèn)證,還支持與LDAP等認(rèn)證系統(tǒng)進(jìn)行對(duì)接;支持多臺(tái)部署以實(shí)現(xiàn)高可用與負(fù)載均衡;不但支持全流量的全路由模式,還支持指定流量的局部路由模式;具有完整的日志記錄功能,支持通過自定義腳本實(shí)現(xiàn)用戶訪問資源的統(tǒng)計(jì)與監(jiān)控。

本文根據(jù)圖書館的業(yè)務(wù)需求,主要在高可用性、局部路由推送、用戶管理和日志監(jiān)控等方面進(jìn)行討論,為其設(shè)計(jì)的系統(tǒng)結(jié)構(gòu)如圖2所示。

圖2 OpenVPN系統(tǒng)架構(gòu)

OpenVPN功能實(shí)現(xiàn)

1.多出口部署

很多高校的校園網(wǎng)采用多出口方案,校園網(wǎng)會(huì)根據(jù)校內(nèi)用戶所訪問的外網(wǎng)資源所在ISP而自動(dòng)選擇相應(yīng)的ISP出口。同理,外網(wǎng)用戶訪問校內(nèi)資源最快的方式,也是選擇相應(yīng)的校園網(wǎng)ISP出口。

為了讓用戶在外網(wǎng)獲得更快的訪問速度,OpenVPN采用多出口部署,OpenVPN服務(wù)器分別在各ISP的出口做IP地址映射。其網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖3所示。

圖3 網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)

在出口防火墻的in方向上,做出口IP到OpenVPN服務(wù)器的地址映射,其映射關(guān)系如表2所示。

表2 防火墻出口地址映射表

2.高可用負(fù)載均衡設(shè)計(jì)

OpenVPN采用兩臺(tái)部署,不僅實(shí)現(xiàn)VPN的高可用性,還可以進(jìn)行流量的負(fù)載均衡。負(fù)載均衡采用DNS輪詢方案,配合智能DNS的自動(dòng)應(yīng)答功能,實(shí)現(xiàn)不同ISP用戶請求,返回對(duì)應(yīng)的響應(yīng)地址。

(1)利用DNS實(shí)現(xiàn)負(fù)載均衡。每次域名解析請求DNS會(huì)根據(jù)對(duì)應(yīng)的負(fù)載均衡算法計(jì)算出一個(gè)不同的IP地址并返回,這樣A記錄中配置多個(gè)服務(wù)器就可以構(gòu)成一個(gè)集群,并可以實(shí)現(xiàn)負(fù)載均衡。如用戶請求openvpn.cpu.edu.cn,DNS根據(jù)A記錄和負(fù)載均衡算法計(jì)算得到一個(gè)IP地址,并返回給用戶,用戶根據(jù)該IP地址,訪問真實(shí)的物理服務(wù)器。所有這些操作對(duì)用戶來說都是透明的,用戶可能只知道openvpn.cpu.edu.cn這個(gè)域名即可。

(2)智能DNS根據(jù)來源IP實(shí)現(xiàn)智能應(yīng)答。智能DNS技術(shù)能根據(jù)用戶所在網(wǎng)絡(luò)的不同,返回不同的解析結(jié)果。換言之,智能DNS技術(shù)可以智能地判斷訪問用戶,然后根據(jù)不同的訪問者把域名分別解析成不同的IP地址,從而達(dá)到讓用戶快速訪問資源的目的。

當(dāng)網(wǎng)絡(luò)用戶通過域名對(duì)openvpn.cpu.edu.cn進(jìn)行訪問時(shí),DNS系統(tǒng)根據(jù)用戶不同的源地址,分別做出不同地址的解析。教育網(wǎng)和三大運(yùn)營商返回的IP地址為出口防火墻通過NAT功能將OpenVPN服務(wù)器的IP地址靜態(tài)映射到一個(gè)公網(wǎng)的地址,這樣外網(wǎng)用戶便可高速訪問OpenVPN服務(wù)。具體查詢和解析過程如圖4所示。

圖4 智能DNS查詢解析過程

DNS的View功能自動(dòng)根據(jù)客戶端IP來判斷,然后把DNS請求指向分別相對(duì)應(yīng)的區(qū)文件。這樣,教育網(wǎng)用戶解析出教育網(wǎng)的IP,聯(lián)通用戶解析出聯(lián)通的IP,移動(dòng)用戶解析出移動(dòng)的IP,其它用戶解析出電信的IP,使用戶避免跨網(wǎng)訪問,從而提高訪問速度。

3.用戶端策略路由設(shè)計(jì)

默認(rèn)情況下,VPN連接成功后會(huì)自動(dòng)增加一些路由,并把VPN設(shè)置成默認(rèn)網(wǎng)關(guān),客戶端所有的流量都會(huì)通過VPN來傳送,這顯然不是很合理。OpenVPN支持局部路由功能,可以指定哪些流量通過VPN,或者哪些流量不通過VPN,從而達(dá)到節(jié)省流量和提高訪問速度的目的。

當(dāng)校外用戶訪問圖書館的數(shù)字資源時(shí),需要在OpenVPN服務(wù)器的配置文件中將數(shù)字資源對(duì)應(yīng)的IP加入。OpenVPN服務(wù)器向客戶端push路由,客戶端通過pull指令獲得服務(wù)器push的所有選項(xiàng)并應(yīng)用。例如訪問中國知網(wǎng)CNKI,需要訪問www.cnki.net、kns.cnki.net、image.cnki.net、wgcy.cnki.net等域名,通過DNS解析工具,將域名解析成對(duì)應(yīng)的IP,并加入到配置文件中。同理,其他數(shù)字資源也如此獲得,其部分配置示例如下:

獲取數(shù)字資源IP的方法可以有很多種,比如直接從數(shù)據(jù)商獲得,或者通過工具查詢獲得。當(dāng)然,OpenVPN也支持用戶在客戶端自己添加路由信息,格式為:route ip/域名,如route www.baidu.com。

4.用戶認(rèn)證與管理

OpenVPN支持靈活的客戶端授權(quán)方式,支持證書、智能卡、用戶名和密碼。圖書館擁有多種數(shù)字資源,并向師生提供VPN服務(wù),最合適的認(rèn)證方式就是用戶名和密碼認(rèn)證,既簡單安全又方便管理。用戶名和密碼認(rèn)證既支持內(nèi)建賬號(hào)和密碼,也支持與現(xiàn)有的LDAP或者radius服務(wù)器對(duì)接。本文采用與現(xiàn)有LDAP服務(wù)器進(jìn)行對(duì)接,以實(shí)現(xiàn)用戶的認(rèn)證與管理。

LDAP的實(shí)現(xiàn)方式有很多方式,本文選用最簡單的方式,即OpenVPN自帶的LDAP插件實(shí)現(xiàn)。

(1)打開/etc/openvpn/server.conf文件,對(duì)部分內(nèi)容進(jìn)行修改,具體示例如下:

(2)打開/etc/openvpn/auth/ldap.conf文件,對(duì)部分內(nèi)容進(jìn)行修改,具體示例如下:

這樣就完成了OpenVPN與負(fù)責(zé)用戶管理的LDAP服務(wù)器對(duì)接,實(shí)現(xiàn)了VPN和用戶管理兩個(gè)功能的相互獨(dú)立。獨(dú)立的模塊化部署,既穩(wěn)定又安全,用戶新建、刪除,修改密碼、更新屬性等用戶管理操作,在LDAP服務(wù)器上操作即可,避免每一次用戶修改都會(huì)修改OpenVPN服務(wù)器,減少對(duì)VPN服務(wù)穩(wěn)定性的影響。

客戶端配置

客戶端設(shè)置

客戶端配置文件中的remote選項(xiàng)使用域名,即使多條運(yùn)營商線路,也可以通過域名實(shí)現(xiàn)自動(dòng)選路,而不必針對(duì)不同的運(yùn)營商維護(hù)多個(gè)配置文件。

客戶端配置使用用戶名密碼認(rèn)證,用戶名使用ldap認(rèn)證,具體示例如下:

多客戶端的支持

OpenVPN最大的優(yōu)點(diǎn)就在于客戶端操作系統(tǒng)支持比較廣泛,通過安裝OpenVPN-Client實(shí)現(xiàn)VPN訪問,客戶端支持的操作系統(tǒng)幾乎涵蓋了所有的主流系統(tǒng),包括:Windows、Linux、Mac OS X、Android、IOS和DD-WRT等。

用戶安裝客戶端,需要導(dǎo)入配置文件證書,涉及3個(gè)文件:ca.crt、ta.key(如果不開啟tls-auth,則無需該文件)、client.ovpn。為了使移動(dòng)端(安卓和蘋果)順利導(dǎo)入配置文件,需要將ca.crt和ta.key合并到client.ovpn中,具體示例如下:

日志與用戶訪問監(jiān)控

用戶訪問監(jiān)控

OpenVPN為校外師生訪問圖書館數(shù)字資源提供穩(wěn)定的VPN服務(wù)的同時(shí),用戶訪問監(jiān)控功能同樣重要。管理員利用該功能,可以更詳細(xì)地了解用戶的登錄與退出時(shí)間,登錄IP和訪問URL等信息。這樣一旦出現(xiàn)惡意下載事件,管理員可以利用日志進(jìn)行高效的事件追蹤。本文根據(jù)OpenVPN的日志,利用自定義腳本統(tǒng)計(jì)用戶的登錄與退出等信息。

1.記錄用戶撥入腳本

建立/etc/openvpn/connect文件,具體示例如下:

2.記錄用戶退出腳本

建立/etc/openvpn/disconnect文件,具體示例如下:

3.修改OpenVPN服務(wù)器配置文件,啟用腳本

打開/etc/openvpn/server.conf文件,對(duì)部分內(nèi)容進(jìn)行修改,具體示例如下:

這樣每天就會(huì)在/var/log/openvpn下面建立文件名為2020-12-27這樣的文件,該文件記錄了當(dāng)天登錄OpenVPN的用戶名和時(shí)間,輸出如下:

定時(shí)報(bào)表

通過郵件將用戶訪問日志定時(shí)發(fā)送給管理員,可以讓管理員詳細(xì)了解每天用戶的訪問情況。

1.創(chuàng)建發(fā)信腳本

新建/etc/openvpn/mail2admin文件,編輯內(nèi)容,具體示例如下:

2.定時(shí)發(fā)信

建立cron工作表,每天定時(shí)23:55發(fā)送當(dāng)天的日志給管理員,具體示例如下:

筆者借鑒OpenVPN在其他行業(yè)的應(yīng)用經(jīng)驗(yàn),構(gòu)建低成本、易實(shí)施、高效率的數(shù)字資源遠(yuǎn)程訪問系統(tǒng)。由于OpenVPN是開源的,并且在設(shè)計(jì)之初就充分考慮了系統(tǒng)的擴(kuò)展性,所以在VPN的基礎(chǔ)上可以很方便地?cái)U(kuò)展。例如:用戶連接數(shù)、日志審計(jì)等方面。高校圖書館可以進(jìn)一步探索OpenVPN的功能,尤其是在數(shù)字資源訪問量統(tǒng)計(jì)上做深入的開發(fā),可以通過程序監(jiān)控用戶訪問特定資源的時(shí)間和數(shù)量,對(duì)特定數(shù)字資源進(jìn)行監(jiān)控,對(duì)有可能被資源提供商視為“違規(guī)”下載的用戶行為給予提醒和及時(shí)制止,避免因懲罰影響廣大用戶的合理使用。同時(shí),也為圖書館數(shù)字資源建設(shè)、評(píng)估、采購等提供有力依據(jù)。

猜你喜歡
配置文件日志示例
大還是小
提示用戶配置文件錯(cuò)誤 這樣解決
一名老黨員的工作日志
扶貧日志
心聲歌刊(2020年4期)2020-09-07 06:37:14
搭建簡單的Kubernetes集群
2019年高考上海卷作文示例
互不干涉混用Chromium Edge
常見單位符號(hào)大小寫混淆示例
山東冶金(2019年5期)2019-11-16 09:09:22
忘記ESXi主機(jī)root密碼怎么辦
“全等三角形”錯(cuò)解示例
阳城县| 施秉县| 湘潭市| 治多县| 马山县| 大丰市| 靖远县| 兰坪| 宜州市| 宁晋县| 马山县| 奇台县| 会同县| 禄丰县| 闸北区| 太康县| 天水市| 巴彦淖尔市| 晋宁县| 昔阳县| 姜堰市| 德惠市| 教育| 安塞县| 田阳县| 枝江市| 包头市| 灵台县| 利辛县| 措勤县| 宝应县| 房产| 乐业县| 信阳市| 嘉黎县| 建湖县| 通城县| 名山县| 吴忠市| 营口市| 交城县|