天天看點

搭建簡易堡壘機

堡壘機,是在一個特定的網絡環境下,為了保障網絡和資料不受來自外部和内部使用者的入侵和破壞,而運用各種技術手段實時收集和監控網絡環境中每一個組成部分的系統狀态、安全事件、網絡活動,以便集中報警、及時處理及審計定責。

我們又把堡壘機叫做跳闆機,簡易的跳闆機功能簡單,主要核心功能是遠端登入伺服器和日志審計。運維堡壘機的理念起源于跳闆機。2000年左右,高端行業使用者為了對運維人員的遠端登入進行集中管理,會在機房裡部署跳闆機。跳闆機就是一台伺服器,維護人員在維護過程中,首先要統一登入到這台伺服器上,然後從這台伺服器再登入到目标裝置進行維護。

堡壘機從功能上講,它綜合了核心系統運維和安全審計管控兩大主幹功能,從技術實作上講,通過切斷終端計算機對網絡和伺服器資源的直接通路,而采用協定代理的方式,接管了終端計算機對網絡和伺服器的通路。形象地說,終端計算機對目标的通路,均需要經過運維安全審計的翻譯。打一個比方,運維安全審計扮演着看門者的工作,所有對網絡裝置和伺服器的請求都要從這扇大門經過。是以運維安全審計能夠攔截非法通路,和惡意攻擊,對不合法指令進行指令阻斷,過濾掉所有對目标裝置的非法通路行為,并對内部人員誤操作和非法操作進行審計監控,以便事後責任追蹤。

安全審計作為企業資訊安全建設不可缺少的組成部分,逐漸受到使用者的關注,是企業安全體系中的重要環節。同時,安全審計是事前預防、事中預警的有效風險控制手段,也是事後追溯的可靠證據來源。

近年來資料安全事故頻發,包括斯諾登事件、希拉裡郵件醜聞以及攜程當機事件等,資料安全與防止洩露成為政府和企業都非常關心的議題,是以雲堡壘機也應運而生。

案例一:

讓我們共同回顧最具代表性的資料洩露引發的安全事故,美國著名的斯諾登事件。2013年6月,美國《華盛頓郵報》報道,美國國家安全局和聯邦調查局于2007年啟動了一個代号為“棱鏡”的秘密監控項目,直接進入美國網際網路公司的中心伺服器裡挖掘資料、收集情報。洩露這些絕密檔案的并非國家安全局的内部員工,而是國家安全局的外聘人員愛德華·斯諾登。 斯諾登事件若放在今天,将不可能發生,因為我們有了雲堡壘機!其中的管理者角色可以設定敏感操作的事前攔截、事中斷開、事後審計,并且可以做到全程無代理實時監控。類似斯諾登這樣的外聘人員将無法接觸到這些敏感資訊,更不用說洩露出來了。并且某些雲堡壘機支援錄屏功能也可以幫助使用者進行審計和追責。

案例二:

2015年5月28日上午11點至晚上8點,在某旅遊出行平台官網及APP上登入、下單或交易時,跳轉均出現問題,導緻操作無法順利完成。造成直接經濟損失巨大,按照其上一季度的财報公布的資料,當機的損失為平均每小時106.48萬美元。 最終,平台回應此事稱系由于員工誤操作删除了伺服器上的執行代碼導緻。不論是因為黑客攻擊還是員工誤操作,真金白銀800萬美元的經驗教訓告誡我們對于資料的安全和備份必須要引起重視!雲堡壘機能解決這2個問題,一是攻擊面小,二是可定制雙機備份。

以上事實說明,雲堡壘機對安全的重要程度不言而喻。

比較優秀的用于搭建堡壘機的開源軟體:jumpserver。主要功能有:認證、授權、審計、自動化、資産管理等。

商業堡壘機的功能比開源的要強大,比較出名的有:齊治,Citrix XenApp等。

堡壘機需要具有公網IP以及内網IP,其中内網IP用于和機房其他機器通信。公網IP是用于在外部登入,通過公網IP登入到堡壘機後,才能通路内網的機器,這一點和跳闆機一樣。

搭建堡壘機,首先需要限制端口,留出可以遠端登入的端口,其他的端口都封閉掉。然後還需要配置白名單IP,規定隻有哪些IP可以登入,以及禁止密碼登入,隻允許密鑰登入等,做這些事情的目的是為了增加堡壘機的安全性。

除此之外,還需要限制登入的使用者,限制為普通使用者登入,和限制使用者可以執行的指令等。

還需要在客戶機器上做日志審計。

安裝jailkit實作chroot的目的是為了限制登入的使用者能夠執行的指令,因為要防止登入的使用者對堡壘機進行其他的操作。jailkit可以把使用者限制在一個虛拟的系統中,這個虛拟系統的環境是chroot的,讓使用者無法直接操作真實系統。

編譯安裝jailkit:

建立一個目錄作為虛拟系統的根目錄:

給虛拟系統初始化一些指令,讓這個系統具有基本的檔案結構、網絡相關的以及常用指令等:

初始化完成後/home/jail/下會生成以下幾個目錄:

建立真實系統的使用者:

建立虛拟系統的sbin目錄,并拷貝虛拟系統的shell檔案:

建立虛拟系統的使用者:

編輯虛拟系統使用者的密碼檔案内容如下:

完成以上操作後,遠端登入一下jailUser這個賬戶:

搭建簡易堡壘機

登入成功:

搭建簡易堡壘機

如圖可以看到,這個系統可以執行的指令隻有118條。

能夠成功登入後就可以生成密鑰,添加密鑰認證了,配置完密鑰後,還需要在真實系統上編輯sshd_config檔案把PasswordAuthentication的值改為no,這樣就能禁止遠端密碼登入了。

真實系統上,還需要開啟防火牆規則,除了遠端登入端口外其他端口都需要封閉掉,這個很簡單這裡就不示範了。除此之外還需要配置白名單IP,這個在hosts.allow檔案裡配置,hosts.deny裡也需要進行相應的配置,如下示例:

我們還需要在客戶機上做一個簡單的日志審計,記錄在該機器執行過的指令,以下操作是需要在所有被登入機器上做的:

1.首先配置hosts.allow以及hosts.deny檔案,設定僅允許堡壘機的IP登入,其他的一律拒絕登入:

然後在堡壘機上看看能否進行登入:

搭建簡易堡壘機

如圖,能夠成功登入,代表沒問題。

2.配置日志審計:

配置完成後,檢視是否有生成相應的記錄檔案:

如上,可以看到,生成的bash_history 檔案中已經記錄了我剛剛敲過的指令,這樣就能夠記錄哪個使用者在哪個時間點上在這台機器上敲過的指令。

到此,一個簡易的堡壘機就搭建完成了,也算不上真正意義的堡壘機吧,隻能算是個跳闆機。因為我們還沒有使用專業的工具去搭建,是以還不太符合堡壘機的概念,但是如果機器不是那麼多,隻有幾台,而且要求也沒那麼高的話,這種跳闆機也就夠用了。

本文轉自 ZeroOne01 51CTO部落格,原文連結:http://blog.51cto.com/zero01/2062618,如需轉載請自行聯系原作者

繼續閱讀