後端主要技術是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)