前言:
好久都沒來寫博客,最近忙啥去了呢?
一是忙於saltstack的二次開發,二是雲計算的學習研究中,所以就一直沒寫東西,今天給大家介紹個工具。
好了,開始正文!
1.首先來說一下為什么要web ssh?
有人是說,有xshell,secureRT,putty等眾多的ssh終端,為嘛還要弄個web的ssh,不是夠二的嗎?能起多大作用?
有個web的ssh,的確沒有多大作用,的確無法代替ssh客戶端,但是你想過沒有,類似於xshell,secureRT,putty,在運維管理中確實有很多麻煩,不同的用戶,需要不同的登錄名,授權等等管理,而且存在一定的風險,比如個人電腦被攻擊等等安全問題?
2.是否有解決方案呢?
其實,很多公司目前都會用堡壘機,跳板機等一系列安全措施來防止系統非法訪問,不少公司都已經實現了登錄系統需要手機驗證碼了,不失為一種安全解決方案。
3.是否還有其他解決方案呢?
那么,這里我推薦一個可以替代運維堡壘機的功能的一個軟件,那就是這里的gateone。
在說運維堡壘機之前,先來了解下什么是運維堡壘機?
運維堡壘機的理念起源於跳板機,那么跳板機的弱勢在哪里?
理念一:唯有控制才能真正解決問題
理念二:系統賬號無法確認用戶身份
理念三:人為操作難免會出問題
於是,產生了后來的運維堡壘機,運維堡壘機具有對運維人員的身份認證、對運維操作的訪問控制和審計等功能(來自看百度百科的解釋http://baike.baidu.com/view/4274690.htm,目前有不少廠家可以提供運維堡壘機產品,但是,作為devops或是運維人員,喜歡自己動手去實現功能!
4.推薦方案
可以看到,運維堡壘機好處很多,有效的控制了運維風險,而今天給大家介紹的gateone,就是一套自己的開源堡壘機解決方案。
5.Gateone的簡介
個人認為gateone是一個高端大氣上檔次的web ssh,同類產品中,要么是體驗不好,要么就是界面看着不順眼,要么還帶着細微的bug,直到遇到了gateone,才覺得web ssh原來可以這么好用。
不妨看看都有哪些web的ssh終端
https://github.com/aluzzardi/wssh
https://code.google.com/p/shellinabox
http://code.google.com/p/web-shell
https://github.com/antonylesuisse/qweb
大家可以一一嘗試的。
GateOne 是一款使用 HTML5 技術編寫的網頁版 SSH 終端模擬器。
· 基於現代的 HTML5 技術,無需任何瀏覽器插件。
· 支持多個 SSH 進程。
· 可以嵌入到其他任意應用程序中。
· 支持使用 JavaScript,Python 甚至純 CSS 編寫的插件。
· 支持 SSH 進程副本,打開多個進程而無需重復輸入密碼。
· 支持各種服務器端的日志功能,支持 Keberos-based 單點登錄甚至活動目錄。
· 支持操作日志記錄,具有操作記錄回放功能
項目地址 https://github.com/liftoff/GateOne
文檔地址 http://liftoff.github.io/GateOne/About/
開發語言 python
框架 tornado+html5
當前版本 1.1
安裝簡單,使用方便,更多功能請參看官方文檔。
【防盜鏈,本文出自http://itnihao.blog.51cto.com/1741976/1311506】
6.安裝gateone
我的系統版本是CentOS release 6.4 64bit
瀏覽器版本是chrome 30,看官方文檔,gateone在ie瀏覽器不受支持(鄙視ie,雖然我的電腦上有ie瀏覽器,但是一直都讓其躺着睡打覺的),支持的瀏覽器有chrome,firefox,所以若是你用ie不能顯示……
安裝gateone,可以rpm包安裝,也可以源碼包安裝,但是本文推薦rpm包安裝,源碼安裝就不說了,請參看官方文檔
|  
               
                1 
                
              
                2 
                
              
                3 
                 |  
              
              #wget https://github.com/downloads/liftoff/GateOne/tornado-2.4-1.noarch.rpm 
               #wget https://github.com/downloads/liftoff/GateOne/gateone-1.1-1.noarch.rpm 
               #wget ftp://ftp.univie.ac.at/systems/linux/fedora/epel/beta/6/i386/python-ordereddict-1.1-2.el6.noarch.rpm 
                |  
            
ftp://ftp.univie.ac.at/systems/linux/fedora/epel/6/x86_64/python-ordereddict-1.1-2.el6.noarch.rpm
# rpm -ivh http://mirrors.sohu.com/fedora-epel/6Server/x86_64/epel-release-6-8.noarch.rpm(epel源,可以不用安裝的)
|  
               
                1 
                
              
                2 
                
              
                3 
                
              
                4 
                
              
                5 
                 |  
              
              #yum localinstall tornado-2.4-1.noarch.rpm 
               #yum localinstallgateone-1.1-1.noarch.rpm 
               #rpm -ivh python-ordereddict-1.1-2.el6.noarch.rpm 
               #當然也可以用源碼包安裝ordereddict,命令如下 
               # easy_install install ordereddict 
                |  
            
|  
               
                1 
                
              
                2 
                
              
                3 
                 |  
              
              #cd  /opt/gateone 
               #./gateone.py 
               #運行這個腳本,會生成server.conf配置文件 
                |  
            
假如出現以下錯誤
是提示你沒有安裝ordereddict
好了,啟動服務
#cd /opt/gateone 
        #./gateone.py 
        如果你想讓其后台運行,請使用serveri來啟動
|  
               
                1 
                 |  
              
              # /etc/init.d/gateone start 
                |  
            
ok,服務啟動成功,通過瀏覽器去訪問
我的ip地址是192.168.0.201
所以訪問地址為https://192.168.0.201,點擊繼續
如果出現以下提示信息,則按照以下步驟處理即可
提示此url訪問被拒絕了,看web日志如下
解決辦法:
1.修改server.conf
|  
               
                1 
                 |  
              
              #vim /opt/gateone/server.conf 
                |  
            
2,好了,啟動服務
如果一切順利,講看到如下界面
哈哈,終於進入系統,ls以下
來個vim /etc/passwd試試
別急,還有日志審計功能,支持日志回放哦!
一個屏是不是有些單調呢,來,開4個屏試試
還有更多好玩的功能,顯示圖片,顯示pdf
如果還沒有看夠,建議你趕快動手試試?去體驗以下web ssh的魅力!
怎么樣,是不是高端大氣上檔次?
【防盜鏈,本文出自http://itnihao.blog.51cto.com/1741976/1311506】
8.說了這么多,不是說好的要弄什么運維堡壘機的功能嗎,我怎么沒有看到,別急,這正是我要說的功能。
Gateone提供了基於web的ssh功能,那么,資產系統,運維系統,其他用戶權限分配系統,以及日志回放功能,需要devops自己去開發,結合gateone,保證讓你玩的爽歪歪,至於怎么去開發這個堡壘機功能的系統,自己慢慢體會哦,這里就點到為止!
學習貴在舉一反三,歡迎有新想法的童鞋一起交流哦!
另外,本人以前搞過一個opsadmin項目,各位有興趣的可以看看,同時也歡迎大家共同參與https://github.com/itnihao/opsadmin




















