官網:http://www.jumpserver.org/html
安裝文檔:http://docs.jumpserver.org/zh/docs/step_by_step.htmllinux
一 跳板機概述:
跳板機就是一臺服務器,開發或運維人員在維護過程當中須要統一登陸到這臺服務器,而後再登陸到目標設備進行維護和操做。
跳板機的缺點:沒有實現對運維人員操做行爲的控制和審計,使用跳板機的過程當中仍是會出現誤操做、違規操做致使的事故,一旦出現操做事故很難快速定位的緣由和責任人。git
二 堡壘機的概述:
堡壘機,即在一個特定的網絡環境下,爲了保障網絡和數據不受來自外部和內部用戶的***和破壞,而運用各類技術手段實時收集和監控網絡環境中每個組成部分的系統狀態、安全事件、網絡活動,以便集中報警、及時處理及審計定責。
總結:堡壘機比跳板機 多了實時收集、監控網絡環境、集中報警等功能。github
三 Jumpserver的概述:vim
jumpserver是一款使用Python、Django開發的開源跳板機(堡壘機)系統,能夠實現認證、受權、審計及自動化運維功能,助力企業高效用戶、資產、權限、審計管理。它是徹底開源的,咱們能夠針對它來進行二次開發,實現更多的功能。瀏覽器
jumpserver採納分佈式架構,支持多機房跨區域部署,中心節點提供 API,各機房部署登陸節點,可橫向擴展、無併發限制。安全
功能:服務器
Auth統一認證網絡
CMDB資產管理架構
日誌審計
自動化運維(ansible)
Jumpserver服務端:jinkai03 192.168.186.144
客戶機:jinkai02 192.168.186.141
設置firewalld防火牆規則,容許指定端口放行
[root@jinkai02 ~]# firewall-cmd --zone=public --add-port=80/tcp --permanent
success
[root@jinkai02 ~]# firewall-cmd --zone=public --add-port=8080/tcp --permanent
success
[root@jinkai02 ~]# firewall-cmd --zone=public --add-port=2222/tcp --permanent
Success
或者直接關閉防火牆
[root@jinkai02 ~]# systemctl stop firewalld
[root@jinkai02 ~]# systemctl disbale firewalld
關閉selinux
[root@jinkai02 ~]# setenforce 0
永久關閉selinux須要去/etc/selinux/config去吧enforcing改爲disabled
修改字符集, 不然可能報 input/output error的問題, 由於日誌裏打印了中文
[root@jinkai02 ~]# localedef -c -f UTF-8 -i zh_CN zh_CN.UTF-8
[root@jinkai02 ~]# export LC_ALL=zh_CN.UTF-8
[root@jinkai02 ~]# echo 'LANG="zh_CN.UTF-8"' > /etc/locale.conf
官網腳本安裝:
curl -sSL
https://github.com/jumpserver/jumpserver/releases/download/v2.5.3/quick_start.sh | sh
執行時間會很長,耐心等待,執行完成後會提示進入:
cd /opt/setuptools/
執行:./jmsctl.sh start
網頁輸入IP登陸jumpserver,默認帳號admin,密碼admin
第一次登陸會提示更改密碼
密碼重置:administrator---我的信息---登陸密碼設置
測試登陸:
Jumpserver平臺初始化--系統設置項:
基本設置--填入堡壘機IP和郵件主題名稱
郵件設置:SMTP主機,SMTP端口,SMTP帳號,SMTP密碼,設置完成後點擊--測試鏈接,看是否能夠收到郵件
這些設置須要手動重啓一下jms服務才能生效
管理用戶是服務器的root,或擁有NOPASSWD: ALL sudo權限的用戶,Jumpserver使用該用戶來 推送系統用戶、獲取資產硬件信息等。
點擊資產管理 → 管理用戶 → 建立
建立管理用戶:名稱(用戶名稱)用戶名和名稱建議設置同樣,密碼爲空,設置SSH祕鑰,無密碼登陸
建立祕鑰:
[root@jinkai03 ~]# ssh-keygen
[root@jinkai03 ~]# ls /root/.ssh/
authorized_keys id_rsa id_rsa.pub known_hosts
[root@jinkai03 ~]# cat /root/.ssh/id_rsa
把顯示的私鑰複製粘貼到Windows上作成文本文檔,導入
點擊提交後linuxprobe用戶建立成功
以後須要到客戶機上建立用戶linuxprobe,並複製堡壘機上的公鑰到authorized_keys文件中
[root@jinkai03 ~]# cat /root/.ssh/id_rsa.pub
---------------------------------------------------省略----------------------
[root@jinkai02 ~]# useradd linuxprobe
[root@jinkai02 ~]# su - linuxprobe
[linuxprobe@jinkai02 ~]$ mkdir .ssh
[linuxprobe@jinkai02 ~]$ vim .ssh/authorized_keys
粘貼堡壘機的公鑰---------省略-----------
[linuxprobe@jinkai02 ~]$ chmod 700 .ssh/
[linuxprobe@jinkai02 ~]$ chmod 400 .ssh/authorized_keys
測試堡壘機是否能夠經過私鑰登陸客戶機jinkai02
[root@jinkai03 .ssh]# ssh linuxprobe@192.168.186.141
Last login: Mon Dec 28 23:57:16 2020
[linuxprobe@jinkai02 ~]$
這樣,咱們jumpserver的管理用戶linuxprobe就建立成功了。之後,每增長一臺新機器,都須要在新機器增長用戶linuxprobe,同時將公鑰複製到authorized_keys文件中。
普通用戶就是用來登陸jumpserver瀏覽器界面的用戶,或者用命令行方式登陸堡壘機的用戶。
首先須要建立一個用戶組 運維 ,用戶管理 → 用戶組 → 建立用戶組
用戶管理 → 用戶列表 → 建立用戶,建立一個普通用戶 zhangsan
點擊提交,用戶建立成功,也會發送一封郵件到剛指定的郵箱,是重置密碼的連接
若是是忘記系統用戶的登陸密碼能夠經過上面的方法進行重置
資產管理 → 資產列表,左側是資產樹,右擊能夠新建、刪除、更改樹節點,受權資產也是以節點方式組織的,右側是屬於該節點下的資產。
點擊建立資產,關聯剛建立的管理用戶linuxprobe,主機名,主機IP,系統平臺,節點
由於關聯了管理用戶linuxprobe,因此jinkai02上也必須有這個用戶,在以前咱們已經建立了該用戶,咱們還須要給這個用戶sudo的權限。
visudo
linuxprobe ALL=(ALL) NOPASSWD:ALL
除了這樣建立之外,咱們還能夠按照模板批量地導入資產,而沒必要這樣一個一個去建立。
添加完機器後,還須要添加系統用戶,系統用戶是 Jumpserver跳轉登陸資產時使用的用戶,能夠理解爲登陸資產用戶。
資產管理 → 系統用戶 → 建立系統用戶
自動推送會在資產中自動生成該用戶,建立以後點擊zhangsan進入系統用戶詳情,這裏也能夠手動去推送及測試連通性
權限管理 → 資產受權,選中Linux節點,點擊建立權限規則
點擊提交,到這裏咱們至關於完成了設置的步驟。
接下來就是測試可否使用系統用戶直接登陸到jinkai02上,先切換到用戶界面
點擊Web終端,會打開一個新頁面
鏈接超時,網絡不通,可是手動檢測是通的