1 Jumpserver 堡壘機(jī)概述-部署 Jumpserver 運(yùn)行環(huán)境
跳板機(jī)就是一臺(tái)服務(wù)器钥星,開(kāi)發(fā)或運(yùn)維人員在維護(hù)過(guò)程中首先要統(tǒng)一登錄到這臺(tái)服務(wù)器,然后再登錄到
目標(biāo)設(shè)備進(jìn)行維護(hù)和操作育韩。
跳板機(jī)缺點(diǎn):沒(méi)有實(shí)現(xiàn)對(duì)運(yùn)維人員操作行為的控制和審計(jì),使用跳板機(jī)的過(guò)程中還是會(huì)出現(xiàn)誤操作、
違規(guī)操作導(dǎo)致的事故尚镰,一旦出現(xiàn)操作事故很難快速定位到原因和責(zé)任人慢逾;
堡壘機(jī)概述:
堡壘機(jī)立倍,即在一個(gè)特定的網(wǎng)絡(luò)環(huán)境下,為了保障網(wǎng)絡(luò)和數(shù)據(jù)不受來(lái)自外部和內(nèi)部用戶的入侵和破壞侣滩,
而運(yùn)用各種技術(shù)手段實(shí)時(shí)收集和監(jiān)控網(wǎng)絡(luò)環(huán)境中每一個(gè)組成部分的系統(tǒng)狀態(tài)口注、安全事件、網(wǎng)絡(luò)活動(dòng)胜卤,以便
集中報(bào)警尚揣、及時(shí)處理及審計(jì)定責(zé)龄恋。
總結(jié):堡壘機(jī)比跳板機(jī)多了實(shí)時(shí)收集颠悬、監(jiān)控網(wǎng)絡(luò)環(huán)境省有、集中報(bào)警等功能。
Jumpserver 概述:
Jumpserver 是一款使用 Python, Django 開(kāi)發(fā)的開(kāi)源跳板機(jī)系統(tǒng), 為互聯(lián)網(wǎng)企業(yè)提供了認(rèn)證扛门,授
權(quán),審計(jì),自動(dòng)化運(yùn)維等功能悔醋。JumpServer 現(xiàn)已支持管理 SSH、 Telnet兽叮、 RDP芬骄、 VNC 協(xié)議資產(chǎn)
官方網(wǎng)址: http://www.jumpserver.org
JumpServer 2 環(huán)境要求:
硬件配置: 4 個(gè) CPU 核心, 6G 內(nèi)存, 50G 硬盤(最低)
1.2Jumpserver 實(shí)驗(yàn)拓?fù)鋱D
實(shí)驗(yàn)環(huán)境:
xuegod63 IP : 192.168.1.63 jumpserver 服務(wù)端 6G 內(nèi)存
xuegod64 IP:192.168.1.64 資源,被管理的服務(wù)器 2G 內(nèi)存
初始化系統(tǒng)環(huán)境
關(guān)閉防火墻
[root@xuegod63~]# systemctl stop firewalld&&systemctl disable firewalld
關(guān)閉 selinux
[root@xuegod63~]# setenforce0
永久關(guān)閉(重啟后生效鹦聪,先設(shè)置臨時(shí)再設(shè)置永久账阻。)
[root@xuegod63~]# sed-i"s/SELINUX=enforcing/SELINUX=disabled/g"/etc/selinux/config
1.4安裝 jumpserver 所需相關(guān)服務(wù)
自動(dòng)部署
[root@xuegod63~]# curl-sSL https://github.com/jumpserver/jumpserver/releases/download/v2.10.2/quick_start.sh | bash
cd 進(jìn)入安裝管理目錄啟動(dòng) jms
[root@xuegod63~]# cd/opt/jumpserver-installer-v2.10.2/[root@xuegod63 jumpserver-installer-v2.10.2]#./jmsctl.sh restart
注:不用配置開(kāi)機(jī)啟動(dòng),因?yàn)樾掳姹镜?jumpserver 是以 docker 運(yùn)行的泽本。這些 docker 實(shí)例開(kāi)身就是開(kāi)機(jī)自動(dòng)啟動(dòng)的淘太。
Web 訪問(wèn),新版本提供了 2 個(gè)訪問(wèn)地址一個(gè) http 一個(gè) https
http://192.168.1.63:8080/core/auth/login/ 用戶:admin 密碼: admin
https://192.168.1.63:8443/core/auth/login/
首次登錄需要修改密碼规丽,這里我們測(cè)試環(huán)境修改為 123456
2 jumpserver 平臺(tái)系統(tǒng)初始化
這里要寫成自己真實(shí)的 URL 地址蒲牧,不然后期用戶訪問(wèn)不了。http://192.168.1.63赌莺,設(shè)置完成后冰抢,
并點(diǎn)擊“提交”按鈕。
這里可以選擇 http 或 https
http://192.168.1.63:8080
https://192.168.1.63:8443
我們使用 https
點(diǎn)擊頁(yè)面上邊的"郵件設(shè)置" TAB 艘狭,進(jìn)入郵件設(shè)置頁(yè)面
配置 163 郵箱
注:自己郵箱要開(kāi)啟 smtp 和 pop3 服務(wù)并增加授權(quán)碼:
開(kāi)啟 POP3/SMTP/IMAP 服務(wù)方法:
請(qǐng)登錄 163 郵箱挎扰,點(diǎn)擊頁(yè)面右上角的“設(shè)置”—在“高級(jí)”下,點(diǎn)“POP3/SMTP/IMAP”巢音,開(kāi)啟
圖中兩個(gè)選項(xiàng)鼓鲁,并開(kāi)啟客戶端刪除郵件提醒。即可開(kāi)啟成功港谊。開(kāi)通后即可用閃電郵骇吭、Outlook 等軟件收
發(fā)郵件了。
新增授權(quán)密碼:
ARYAOQXHFMXGBJVR
babrziluawkibaej
我的授權(quán)碼是系統(tǒng)自動(dòng)生成的歧寺,需要復(fù)制保存
服務(wù)器地址:POP3 服務(wù)器:pop.163.com | SMTP 服務(wù)器:smtp.163.com | IMAP 服務(wù)
器:imap.163.com
提交完之后測(cè)試郵件是否能夠正常發(fā)送燥狰。
郵箱中查看郵件
3 使用 jumpserver 管理王者榮耀數(shù)萬(wàn)臺(tái)游戲服務(wù)器
用戶名即 Jumpserver 登錄賬號(hào)龙致。用戶組是用于資產(chǎn)授權(quán),當(dāng)某個(gè)資產(chǎn)對(duì)一個(gè)用戶組授權(quán)后顷链,這個(gè)
用戶組下面的所有用戶就都可以使用這個(gè)資產(chǎn)了目代。角色用于區(qū)分一個(gè)用戶是管理員還是普通用戶。
點(diǎn)擊用戶管理 —> 查看用戶組 —> 添加用戶組
添加新的小組 —> 王者榮耀-華北區(qū)運(yùn)維部門
查看剛才添加的組
點(diǎn)擊用戶管理 —> 用戶列表 —> 創(chuàng)建用戶
其中榛了,名稱是真實(shí)姓名在讶,用戶名即 Jumpserver 登錄賬號(hào)。
然后點(diǎn)提交霜大。就會(huì)收到用戶創(chuàng)建成功的郵件
擴(kuò)展:
MFA构哺,Multi-FactorAuthentication,即多因子認(rèn)證战坤,是一種簡(jiǎn)單有效的安全認(rèn)證方法曙强。它能夠在
用戶名和密碼之外,再增加一層保護(hù)途茫。MFA 設(shè)備碟嘴,又叫動(dòng)態(tài)口令卡或 Token 卡,是提供這種安全認(rèn)證
方法的設(shè)備囊卜。
MFA 設(shè)備如:
硬件 MFA 設(shè)備
硬件 MFA 設(shè)備如下圖所示臀防,正面的 6 位數(shù)動(dòng)態(tài)安全碼 30 秒更新一次,背面有該硬件 MFA 設(shè)備
的序列號(hào)边败。
手機(jī)校驗(yàn)碼:
查看添加的用戶
使用無(wú)痕瀏覽器,打開(kāi)一個(gè)新窗口捎废,登錄郵箱:
成功提交用戶信息后笑窜,Jumpserver 會(huì)發(fā)送一條設(shè)置"用戶密碼"的郵件到您填寫的郵箱。
登錄一下 163 郵箱登疗,查看郵件如下:
點(diǎn)擊鏈接排截,跳轉(zhuǎn)到 修改密碼:123456
使用瀏覽器,無(wú)痕模式打開(kāi):https://192.168.1.63:8443/ 用戶:mk 密碼: 123456
能登錄成功辐益。
切換到 admin 用戶断傲,給新用戶 mk,配置 ssh 密鑰
用戶可以重置密碼智政,也可以重置 SSH 密鑰认罩,方便后期登錄:我在自己的另一臺(tái) linux 上,使用 mk
用戶生成自己的 ssh 密鑰续捂。
[root@xuegod63~]# useradd mk[root@xuegod63~]# echo123456|passwd--stdinmk[root@xuegod63~]# su-mk[mk@xuegod63~]$ ssh-keygen? ? #一路回車[mk@xuegod63~]$ cat~/.ssh/id_rsa.pubssh-rsaAAAAB3NzaC1yc2EAAAADAQABAAABAQDFMqCGfXDW8UW7Dd0QoXzvnny/4u9ET2sKBt2SQf+wVVS6pLJHE3QNXzHxg+uI1KRJwVtGiPWPtOQ4yj3HiMsBSLsFjOWFoIcv1myXYtLFuwovLfUJgyCwD/LHfSgJ821bUQ2w9uUkAKirBJtjKFC/E4l9Z+GgZmLr9ckRWfZOt3g+xD3iNlh/lD4FlTYz0U9hlb4GrpikP5WtsYZgpIImMTgPsxq3yspQGvTpzsj1ApfOgt0SEHsqd1yYv4K+2bokMDrpTSmvsHXTWCBwpXsp2NQA2s1aDKJIOTY3mDCDQdJl9aMbBAjErdYFvEoNybNdH98KTcEQeCsrCrI0SfR9 mk@xuegod63.cn
把上面生成的公鑰粘到這里:
提交完成
3.2編輯資產(chǎn)樹(shù)添加節(jié)點(diǎn)
使用 admin 用戶登錄 jumpserver垦垂,添加節(jié)點(diǎn),節(jié)點(diǎn)不能重名牙瓢,右擊節(jié)點(diǎn)可以添加劫拗、刪除和重命名
節(jié)點(diǎn),以及進(jìn)行資產(chǎn)相關(guān)的操作矾克。
名字為:王者榮耀-華北區(qū)-服務(wù)器
Jumpserver 里各個(gè)用戶的說(shuō)明:
管理用戶是服務(wù)器的 root页慷,或擁有 NOPASSWD: ALL sudo 權(quán)限的用戶,Jumpserver 使用該
用戶來(lái)推送系統(tǒng)用戶、獲取資產(chǎn)硬件信息等酒繁。
名稱: 王者榮耀-華北區(qū)-服務(wù)器管理用戶-root 密碼是: 123456
前提滓彰,你的王者榮耀-華北區(qū)-服務(wù)器節(jié)點(diǎn)中所有的服務(wù)器 root 用戶密碼都是:123456
這樣就可以使用此 root 用戶管理服務(wù)器。
注意:在創(chuàng)建管理用戶時(shí)的“密碼”處欲逃,需要指定為服務(wù)器 linux 系統(tǒng)中真實(shí)的 root 用戶的密碼找蜜。
系統(tǒng)用戶是 Jumpserver 跳轉(zhuǎn)登錄資產(chǎn)時(shí)使用的用戶,可以理解為登錄資產(chǎn)用戶稳析, Jumpserver
使用系統(tǒng)用戶登錄資產(chǎn)洗做。
系統(tǒng)用戶的 Sudo 欄填寫允許當(dāng)前系統(tǒng)用戶免 sudo 密碼執(zhí)行的程序路徑,如默認(rèn)的
/sbin/ifconfig彰居,意思是當(dāng)前系統(tǒng)用戶可以直接執(zhí)行 ifconfig 命令或 sudo ifconfig 而不需要輸入當(dāng)
前系統(tǒng)用戶的密碼诚纸,執(zhí)行其他的命令任然需要密碼,以此來(lái)達(dá)到權(quán)限控制的目的陈惰。
#此處的權(quán)限應(yīng)該根據(jù)使用用戶的需求匯總后定制畦徘,原則上給予最小權(quán)限即可。
系統(tǒng)用戶創(chuàng)建時(shí)抬闯,如果選擇了自動(dòng)推送 Jumpserver 會(huì)使用 Ansible 自動(dòng)推送系統(tǒng)用戶到資產(chǎn)
中井辆,如果資產(chǎn)(交換機(jī)、Windows )不支持 Ansible, 請(qǐng)手動(dòng)填寫賬號(hào)密碼溶握。
Linux 系統(tǒng)協(xié)議項(xiàng)務(wù)必選擇 ssh 杯缺。如果用戶在系統(tǒng)中已存在,請(qǐng)去掉自動(dòng)生成密鑰睡榆、自動(dòng)推送勾
選萍肆。
增加一個(gè)名稱:檢查服務(wù)器運(yùn)行狀態(tài)的用戶;
用戶名 : user
權(quán)限: /sbin/ifconfig,/usr/bin/top,/usr/bin/free
添加系統(tǒng)管理員用戶
名稱: 系統(tǒng)管理員用戶
; 用戶名:manager
sudo 權(quán)限:/usr/local/sbin/,/usr/local/bin/,/usr/sbin/,/usr/bin/,/root/bin/
注:如果寫的是一個(gè)目錄胀屿,不用具體命令塘揣。 目錄路徑最后面加一個(gè)/,這樣看得更清楚宿崭。當(dāng)然不加/
也可以亲铡,只是有時(shí)可能會(huì)把/usr/local/sbin 當(dāng)成一個(gè)命令。 必須使用英文逗號(hào)分隔葡兑。
注: 增加資產(chǎn)前奴愉,一定要把 xuegod64,先運(yùn)行起來(lái)
開(kāi)啟虛擬機(jī) xuegod64.cn。 一會(huì)把這臺(tái)機(jī)器當(dāng)成資源添加平臺(tái)中铁孵。
主機(jī)名:game64.xuegod.cn-王者榮耀-華北區(qū)
IP: 192.168.1.64
系統(tǒng)平臺(tái):Linux
協(xié)議組:ssh 22
管理用戶:王者榮耀-華北區(qū)-服務(wù)器管理用戶-root(root)
設(shè)置完成并點(diǎn)“提交”锭硼。
資產(chǎn)創(chuàng)建信息填寫好保存之后,按下 F5 刷新一下頁(yè)面,可以看到已經(jīng)可以連接資產(chǎn)蜕劝,說(shuō)明正常:
如果資產(chǎn)不能正常連接檀头,請(qǐng)檢查管理用戶的用戶名和密鑰是否正確以及該管理用戶是否能使用 SSH
從 Jumpserver 主機(jī)正確登錄到資產(chǎn)主機(jī)上轰异。
節(jié)點(diǎn),對(duì)應(yīng)的是資產(chǎn)暑始,代表該節(jié)點(diǎn)下的所有資產(chǎn)搭独。
用戶組,對(duì)應(yīng)的是用戶廊镜,代表該用戶組下所有的用戶牙肝。
系統(tǒng)用戶,及所選的用戶組下的用戶能通過(guò)該系統(tǒng)用戶使用所選節(jié)點(diǎn)下的資產(chǎn)嗤朴。
節(jié)點(diǎn)配椭,用戶組,系統(tǒng)用戶是一對(duì)一的關(guān)系雹姊,所以當(dāng)擁有 Linux股缸、Windows 不同類型資產(chǎn)時(shí),應(yīng)該
分別給 Linux 資產(chǎn)和 Windows 資產(chǎn)創(chuàng)建授權(quán)規(guī)則吱雏。
名稱:王者榮耀-華化區(qū)-服務(wù)器授權(quán)規(guī)則
#注:用戶和用戶組是指要給誰(shuí)授權(quán)敦姻,如果授權(quán)了用戶組,則該組中用戶全部擁有權(quán)限歧杏。
用戶:不用寫
用戶組: 王者榮耀-華北運(yùn)維部門
注資產(chǎn)和節(jié)點(diǎn)可授權(quán)單個(gè)資產(chǎn)也可按照節(jié)點(diǎn)進(jìn)行授權(quán)镰惦。授權(quán)華北節(jié)點(diǎn)則華北節(jié)點(diǎn)下所有服務(wù)器被授
權(quán)。
資產(chǎn):
節(jié)點(diǎn):/Default/王者榮耀-華北區(qū)-服務(wù)器
動(dòng)作:權(quán)限打勾犬绒,點(diǎn)開(kāi)可以分配詳細(xì)權(quán)限旺入。
其它選項(xiàng),使用默認(rèn)懂更,然后提交就可以了。
注:這一條授權(quán)的含意是: 只要是“王者榮耀-華北區(qū)運(yùn)維部門”組中的人急膀,對(duì)節(jié)點(diǎn)“王者榮耀-華
北區(qū)-服務(wù)器”中的所有服務(wù)器沮协,擁有“系統(tǒng)管理員用戶”的權(quán)限。
授權(quán)成功后卓嫂,你自己手動(dòng)到 xuegod64 上查看:
[root@xuegod64~]# tail/etc/passwd-n5dbus:x:81:81:System message bus:/:/sbin/nologinpolkitd:x:999:998:Userforpolkitd:/:/sbin/nologinsshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologinpostfix:x:89:89::/var/spool/postfix:/sbin/nologinmanager:x:1000:1000:系統(tǒng)管理員用戶:/home/manager:/bin/bash? #自動(dòng)推送一個(gè)帳號(hào)慷暂,自動(dòng)在資產(chǎn)服務(wù)器上創(chuàng)建系統(tǒng)用戶[root@xuegod64~]# visudo? #sudo? 相關(guān)的規(guī)則也會(huì)被自動(dòng)推送過(guò)來(lái)manager ALL=(ALL)NOPASSWD:/usr/local/sbin,/usr/local/bin,/usr/sbin,/usr/bin,/root/bin
登錄 Jumpserver : https://192.168.1.63:8443 用戶: mk 密碼: 123456
創(chuàng)建授權(quán)規(guī)則的時(shí)候,選擇了用戶組晨雳,所以這里需要登錄所選用戶組下面的用戶才能看見(jiàn)相應(yīng)的資
產(chǎn)行瑞。
使用無(wú)痕瀏覽器,再打開(kāi)一個(gè)窗口餐禁,進(jìn)行登錄:
用戶正確登錄后的頁(yè)面:
1血久、使用 web 界面連接資產(chǎn),點(diǎn)擊頁(yè)面左邊的 Web 終端:
打開(kāi)資產(chǎn)所在的節(jié)點(diǎn):
雙擊資產(chǎn)名字帮非,就連上資產(chǎn)了:
如果顯示連接超時(shí)氧吐,請(qǐng)檢查為資產(chǎn)分配的系統(tǒng)用戶用戶名和密鑰是否正確讹蘑,是否正確選擇 Linux 操
作系統(tǒng),協(xié)議 ssh筑舅,端口 22座慰,以及資產(chǎn)的防火墻策略是否正確配置等信息。
接下來(lái)翠拣,就可以對(duì)資產(chǎn)進(jìn)行操作了版仔。
3.8在 xshell 字符終端下連接 jumpserver 管理服務(wù)器
[root@xuegod63~]# ssh-p2222 mk@192.168.1.63#進(jìn)行鏈接? jumpserver 或使用 xshell 進(jìn)行連接? jumpserver
輸入 jumpserver 用戶 mk 和密碼 123456
點(diǎn)擊確定開(kāi)始連接
Opt> 64 #輸入一個(gè) 64,就可以直接登錄:192.168.1.64
Connecting to manager@game64.xuegod.cn-王者榮耀-華北區(qū) 0.3
Last login: Thu Jun 7 23:15:13 1718 from xuegod63.cn
[manager@xuegod64 ~]$ whoami #發(fā)現(xiàn)登錄使用的是系統(tǒng)用戶 manager
manager
[manager@xuegod64 ~]$ exit
登出
Opt> p #顯示你有權(quán)限的主機(jī)
Opt> g #顯示你有權(quán)限的主機(jī)組
在線會(huì)話
歷史會(huì)話
在這此误墓,可以新建文件夾蛮粮,也可以上傳文件到服務(wù)器。這些創(chuàng)建的文件和上傳的文件优烧,都會(huì)存在目標(biāo)
服務(wù)器的/tmp 目錄下
[root@xuegod64~]# ls/tmp/
1蝉揍、任務(wù)列表
作業(yè)是 Jumpserver 向其所管理下的資產(chǎn)發(fā)送的指令, 例如, 測(cè)試資產(chǎn)可連接性、獲取資產(chǎn)硬件信
息畦娄、測(cè)試管理用戶可連接性和測(cè)試系統(tǒng)用戶可連接性等命令又沾。默認(rèn)展示最近 7 天的作業(yè)記錄。
點(diǎn)擊作業(yè)名稱可以查看作業(yè)的具體詳情熙卡、作業(yè)的歷史版本以及作業(yè)執(zhí)行的歷史記錄
2杖刷、批量命令
可以通過(guò)該功能快速下發(fā)命令到資產(chǎn), 目前僅支持能被 ansible 管理的資產(chǎn), 要求 系統(tǒng)用戶 登陸方
式為 自動(dòng)登陸
更多內(nèi)容,可以參數(shù)官方手冊(cè):
https://jumpserver.readthedocs.io/zh/master/
https://docs.jumpserver.org/zh/1.4.8/introduce.html
4 使用 jumpserver 管理 mysql 數(shù)據(jù)庫(kù)
4.1安裝 mariadb 數(shù)據(jù)庫(kù)
[root@xuegod64~]# yum install-y mariadb-server[root@xuegod64~]# systemctl enable--nowmariadb設(shè)置 root? 密碼[root@xuegod64~]# mysqladmin-uroot password"123456"創(chuàng)建 ecshop 數(shù)據(jù)庫(kù)和 xuegod 用戶驳癌,要指定 xuegod 用戶可以從任意地方登錄 mysql? 數(shù)據(jù)庫(kù)滑燃。[root@xuegod64~]# mysql-uroot-p123456MariaDB[(none)]>create database ecshop;MariaDB[(none)]>use ecshop;#創(chuàng)建電商網(wǎng)站數(shù)據(jù)庫(kù)? ecshopMariaDB[(none)]>create tableuser(idint(20),namechar(40));#創(chuàng)建一個(gè)表? userMariaDB[(none)]>grant all privileges on*.*to'xuegod'@'%'identified? by'123456';
4.2jumpserver 管理數(shù)據(jù)庫(kù)
添加 Mysql 系統(tǒng)用戶
名稱:xuegod-mysql
登錄模式:自動(dòng)登錄
#賬戶信息為安裝數(shù)據(jù)庫(kù)后創(chuàng)建的授權(quán)用戶
用戶名:xuegod
密碼:123456
創(chuàng)建應(yīng)用
名稱:xuegod-mysql
主機(jī):192.168.1.64
端口:3306
注:這里數(shù)據(jù)庫(kù)是指 mysql 中的哪個(gè)庫(kù),我們測(cè)試環(huán)境選擇 mysql 數(shù)據(jù)庫(kù)即可颓鲜。
指定登錄后表窘,要使用的數(shù)據(jù)庫(kù):ecshop
應(yīng)用授權(quán)
名稱:xuegod-mysql
用戶組:王者榮耀-華北區(qū)運(yùn)維部門
應(yīng)用:xuegod-mysql
系統(tǒng)用戶:xuegod-mysql
授權(quán)完成后,以 mk 用戶登錄甜滨,就可以在 Web 終端中管理 mysql 應(yīng)用了乐严。
總結(jié):
17.1Jumpserver 堡壘機(jī)概述-部署 Jumpserver 運(yùn)行環(huán)境
17.2jumpserver 平臺(tái)系統(tǒng)初始化
17.3實(shí)戰(zhàn):使用 jumpserver 管理王者榮耀數(shù)萬(wàn)臺(tái)游戲服務(wù)器
17.4使用 jumpserver 管理 mysql 數(shù)據(jù)庫(kù)