Docker使用Jumpserver搭建一個安全的堡壘機系統(tǒng)
1、簡述
在當(dāng)今的信息化環(huán)境中,隨著企業(yè)規(guī)模的擴大和系統(tǒng)復(fù)雜性的增加,安全性和權(quán)限管理變得尤為重要。堡壘機作為一種重要的安全工具,能夠有效地管理服務(wù)器訪問權(quán)限,并提供會話審計功能,以保障系統(tǒng)的安全性和穩(wěn)定性。本文將介紹Jumpserver,一款基于MySQL數(shù)據(jù)庫的開源堡壘機解決方案,并指導(dǎo)如何搭建和配置Jumpserver來實現(xiàn)安全的堡壘機管理。
2、優(yōu)點
Jumpserver 是一款開源的堡壘機系統(tǒng),具有許多優(yōu)點,使其成為管理服務(wù)器權(quán)限和會話審計的理想選擇。以下是 Jumpserver 的一些優(yōu)點:
安全性高
Jumpserver 提供了嚴格的權(quán)限控制和身份驗證機制,包括用戶認證、角色管理、多因素認證等,能夠確保系統(tǒng)的安全性,防止未授權(quán)的訪問和操作。操作便捷
Jumpserver 提供了直觀的 Web 界面和豐富的功能,使得管理員可以輕松地管理服務(wù)器的訪問權(quán)限和會話記錄,而無需深入了解復(fù)雜的命令行操作。支持多種認證方式
Jumpserver 支持多種認證方式,包括 LDAP、本地賬戶、第三方認證等,可以與現(xiàn)有的身份驗證系統(tǒng)集成,方便用戶進行統(tǒng)一身份認證。會話審計功能
Jumpserver 提供了完善的會話審計功能,可以記錄和監(jiān)控用戶在服務(wù)器上的操作記錄,包括命令輸入、文件操作等,幫助管理員更好地了解系統(tǒng)使用情況和安全事件。可擴展性強
Jumpserver 的架構(gòu)設(shè)計靈活,支持多種部署方式,可以根據(jù)實際需求進行靈活配置和擴展,適應(yīng)不同規(guī)模和復(fù)雜度的組織需求。社區(qū)活躍
Jumpserver 是一款開源項目,擁有一個活躍的開發(fā)和用戶社區(qū),可以及時獲取技術(shù)支持、Bug修復(fù)和新功能開發(fā),保障系統(tǒng)的穩(wěn)定性和功能更新。跨平臺支持
Jumpserver 支持多種操作系統(tǒng)和平臺,包括 Linux、Windows、Mac 等,可以在不同的環(huán)境中部署和運行,滿足不同用戶的需求。免費開源
Jumpserver 是一款完全免費的開源軟件,無需支付任何費用即可使用和修改,具有較高的靈活性和可定制性。
綜上所述,Jumpserver 是一款功能強大、安全可靠的堡壘機系統(tǒng),具有許多優(yōu)點,適合用于各種規(guī)模和復(fù)雜度的組織中,幫助管理員輕松管理服務(wù)器權(quán)限和會話審計。
3、安裝
Jumpserver 使用 Python / Django 進行開發(fā),遵循 Web 2.0 規(guī)范,配備了業(yè)界領(lǐng)先的 Web Terminal 解決方案,交互界面美觀、用戶體驗好。 采納分布式架構(gòu),支持多機房跨區(qū)域部署,中心節(jié)點提供 API,各機房部署登錄節(jié)點,可橫向擴展、無并發(fā)訪問限制
硬件要求?:
4Core/8GB RAM/300G HDD
3.1 安裝MySQL
在終端中執(zhí)行以下命令拉取 MySQL 官方鏡像:
docker pull mysql
運行以下命令創(chuàng)建并啟動 MySQL 容器:
mkdir -p /data/mysql/data docker run -d --name mysql --restart=always -e MYSQL_ROOT_PASSWORD=admin123 -p 3306:3306 -v /data/mysql/data:/var/lib/mysql mysql:latest --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
運行以下命令創(chuàng)建數(shù)據(jù)庫:
docker exec -it mysql /bin/bash mysql -u root -padmin123 mysql> create database jumpserver default charset 'utf8mb4'; mysql> GRANT ALL PRIVILEGES ON jumpserver.* TO 'root'@'%'; mysql> flush privileges; mysql> exit;
3.2 安裝Redis
在終端中執(zhí)行以下命令拉取 Redis 官方鏡像:
docker pull redis
運行以下命令創(chuàng)建并啟動 Redis 容器:
mkdir -p /data/redis/data docker run -d -it --name redis -p 6379:6379 -v /data/redis/data:/data --restart=always --sysctl net.core.somaxconn=1024 redis:latest --requirepass "123456"
3.3 安裝Jumpserver
在終端中執(zhí)行以下命令拉取 Jumpserver官方鏡像:
docker pull jumpserver/jms_all
在終端創(chuàng)建映射的目錄:
mkdir -p /data/jumpserver
終端生成SECRET_KEY隨機秘鑰:
if [ "$SECRET_KEY" = "" ]; then SECRET_KEY=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 50`; echo "SECRET_KEY=$SECRET_KEY" >> ~/.bashrc; echo $SECRET_KEY; else echo $SECRET_KEY; fi
終端生成TOKEN隨機秘鑰:
if [ "$BOOTSTRAP_TOKEN" = "" ]; then BOOTSTRAP_TOKEN=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 16`; echo "BOOTSTRAP_TOKEN=$BOOTSTRAP_TOKEN" >> ~/.bashrc; echo $BOOTSTRAP_TOKEN; else echo $BOOTSTRAP_TOKEN; fi
運行docker run指令啟動容器:
docker run -d --name jumpserver -h jumpserver --restart=always \ -v /data/jumpserver:/opt/jumpserver/data/media \ -p 80:80 \ -p 2222:2222 \ -e SECRET_KEY=dzyzZrDWAeZF5QDgKBl8uqs8H5dOZVlJmTg6R0dEsojhum7OMO \ -e BOOTSTRAP_TOKEN=xezlBxLpNG51LSBi \ -e DB_ENGINE=mysql \ #指定數(shù)據(jù)庫 -e DB_HOST=192.168.254.138 \ -e DB_PORT=3306 \ -e DB_USER=root \ -e DB_PASSWORD="admin123" \ -e DB_NAME=jumpserver \ -e REDIS_HOST=192.168.254.138 \ -e REDIS_PORT=6379 \ -e REDIS_PASSWORD="123456" \ jumpserver/jms_all:latest
首次訪問,默認賬號和密碼:admin/ChangeMe,會提示修改密碼:
4、結(jié)語
通過本文的介紹,你已經(jīng)了解了如何使用Jumpserver來搭建一個安全的堡壘機系統(tǒng),并實現(xiàn)服務(wù)器權(quán)限管理和會話審計。Jumpserver作為一款開源的堡壘機解決方案,具有強大的功能和靈活的配置,能夠滿足各種規(guī)模的組織需求,幫助提高系統(tǒng)安全性和管理效率。
以上就是Docker使用Jumpserver搭建一個安全的堡壘機系統(tǒng)的詳細內(nèi)容,更多關(guān)于Docker Jumpserver堡壘機系統(tǒng)的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
解決docker容器中出現(xiàn)Access denied for user &apo
這篇文章主要介紹了解決docker容器中出現(xiàn)Access denied for user 'root'@'172.17.0.2'(using password: YES)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-06-06