開源運維堡壘機(跳板機)系統 python

edithfang發表於2014-08-22
架構:



後端主要技術是LDAP,配置了LDAP集中認證伺服器, 所有伺服器的認證都是由ldap完成的,我的做法是每個使用者一個密碼,把密碼加密放到了資料庫中,當使用者輸入ip從跳板機登陸伺服器的時候,跳板機系統取出密碼,並解密,通過pexpect模組將密碼傳送過去,來完成登入的。
 
登入介面和方法

使用者登入跳板機,用的是祕鑰認證,登入跳板機後會自動執行跳板機的系統



輸入完整IP或者部分IP可以完成登入,如果輸入的部分ip匹配的ip不是唯一,會有提示,沒有許可權的會提示沒有許可權

 
 
輸入P/p可以檢視自己擁有許可權的伺服器ip

      



輸入E/E可以在幾臺伺服器上執行同樣的命令,IP直接以逗號分隔

 
日誌記錄
 
日誌記錄用的是pexpect自帶的日誌記錄,記錄的日誌既儲存了命令又儲存了命令的輸出,也不小心講傳送的密碼記錄(不滿意),pexpect模組處理有些難做,我的想法是將日誌每天再處理一遍,將密碼等去掉,日誌儲存在logs目錄下面,檔名是 ip_日期_使用者名稱 ps:用的chinaren登入的,提示視窗卻是baidutest,這是由於我個人原因導致的。

http://laoguang.blog.51cto.com  Free Linux, Share Linux

 
訪問控制和授權

訪問控制和授權是由一套web來實現的

管理員介面

主頁:



檢視使用者:



新增使用者:



主機列表:



新增主機:



許可權列表:



新增許可權:



後面的pptp和openvpn新增是我根據需要新增的,可以去掉
 
使用者登入介面:



更改登入密碼:



修改key密碼:

 
我把程式碼放到 github了,有需要的朋友,可以去看看,大家也可以一同改進,有時間寫寫部署文件

https://github.com/ibuler/jumpserver

本文出自 “Free Linux, Share Linux” 部落格
相關閱讀
評論(2)

相關文章