堡垒机安装
2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
23.1什么是堡壘機(jī)
堡壘機(jī),即在一個特定的網(wǎng)絡(luò)環(huán)境下,為了保障網(wǎng)絡(luò)和數(shù)據(jù)不受來自外部和內(nèi)部用戶的入侵和破壞,而運(yùn)用各種技術(shù)手段實(shí)時收集和監(jiān)控網(wǎng)絡(luò)環(huán)境中每一個組成部分的系統(tǒng)狀態(tài)、安全事件、網(wǎng)絡(luò)活動,以便集中報警、記錄、分析、處理的一種技術(shù)手段。
我們又把堡壘機(jī)叫做跳板機(jī),簡易的跳板機(jī)功能簡單,主要核心功能是遠(yuǎn)程登錄服務(wù)器和日志審計(jì)。
開源堡壘機(jī):麒麟堡壘機(jī) 、jumpserver堡壘機(jī) 、GateOne堡壘機(jī) 商業(yè)堡壘機(jī):昂楷科技 、尚思卓越的尚維堡壘機(jī) 、齊志堡壘機(jī) 、LanSecS(萊恩賽克)堡壘機(jī)、Citri、XenApp其從功能上講,它綜合了核心系統(tǒng)運(yùn)維和安全審計(jì)管控兩大主干功能,從技術(shù)實(shí)現(xiàn)上講,通過切斷終端計(jì)算機(jī)對網(wǎng)絡(luò)和服務(wù)器資源的直接訪問,而采用協(xié)議代理的方式,接管了終端計(jì)算機(jī)對網(wǎng)絡(luò)和服務(wù)器的訪問。形象地說,終端計(jì)算機(jī)對目標(biāo)的訪問,均需要經(jīng)過運(yùn)維安全審計(jì)的翻譯。打一個比方,運(yùn)維安全審計(jì)扮演著看門者的工作,所有對網(wǎng)絡(luò)設(shè)備和服務(wù)器的請求都要從這扇大門經(jīng)過。因此運(yùn)維安全審計(jì)能夠攔截非法訪問,和惡意攻擊,對不合法命令進(jìn)行命令阻斷,過濾掉所有對目標(biāo)設(shè)備的非法訪問行為,并對內(nèi)部人員誤操作和非法操作進(jìn)行審計(jì)監(jiān)控,以便事后責(zé)任追蹤。
安全審計(jì)作為企業(yè)信息安全建設(shè)不可缺少的組成部分,逐漸受到用戶的關(guān)注,是企業(yè)安全體系中的重要環(huán)節(jié)。同時,安全審計(jì)是事前預(yù)防、事中預(yù)警的有效風(fēng)險控制手段,也是事后追溯的可靠證據(jù)來源。
堡壘機(jī)產(chǎn)生的原因
隨著企事業(yè)單位IT系統(tǒng)的不斷發(fā)展,網(wǎng)絡(luò)規(guī)模和設(shè)備數(shù)量迅速擴(kuò)大,日趨復(fù)雜的IT系統(tǒng)與不同背景的運(yùn)維人員的行為給信息系統(tǒng)安全帶來較大風(fēng)險,主要表現(xiàn)在:
?
1.多個用戶使用同一個賬號。這種情況主要出現(xiàn)在同一工作組中,由于工作需要,同時系統(tǒng)管理賬號唯一,因此只能多用戶共享同一賬號。如果發(fā)生安全事故,不僅難以定位賬號的實(shí)際使用者和責(zé)任人,而且無法對賬號的使用范圍進(jìn)行有效控制,存在較大安全風(fēng)險和隱患。
?
2.一個用戶使用多個賬號。目前,一個維護(hù)人員使用多個賬號是較為普遍的情況,用戶需要記憶多套口令同時在多套主機(jī)系統(tǒng)、網(wǎng)絡(luò)設(shè)備之間切換,降低工作效率,增加工作復(fù)雜度。如下圖所示:
?
3. 缺少統(tǒng)一的權(quán)限管理平臺,權(quán)限管理日趨繁重和無序;而且維護(hù)人員的權(quán)限大多是粗放管理,無法基于最小權(quán)限分配原則的用戶權(quán)限管理,難以實(shí)現(xiàn)更細(xì)粒度的命令級權(quán)限控制,系統(tǒng)安全性無法充分保證。
?
4. 無法制定統(tǒng)一的訪問審計(jì)策略,審計(jì)粒度粗。各網(wǎng)絡(luò)設(shè)備、主機(jī)系統(tǒng)、數(shù)據(jù)庫是分別單獨(dú)審計(jì)記錄訪問行為,由于沒有統(tǒng)一審計(jì)策略,并且各系統(tǒng)自身審計(jì)日志內(nèi)容深淺不一,難以及時通過系統(tǒng)自身審計(jì)發(fā)現(xiàn)違規(guī)操作行為和追查取證。
5. 傳統(tǒng)的網(wǎng)絡(luò)安全審計(jì)系統(tǒng)無法對維護(hù)人員經(jīng)常使用的SSH、RDP等加密、圖形操作協(xié)議進(jìn)行內(nèi)容審計(jì)。
?
堡壘機(jī)的使用
https://wenku.baidu.com/view/27fba3ad970590c69ec3d5bbfd0a79563c1ed4b7.html
?
23.2、搭建簡易堡壘機(jī)
- 具備堡壘機(jī)的條件是,該機(jī)器有公網(wǎng)和私網(wǎng),其中私網(wǎng)和機(jī)房其他機(jī)器互通
- 設(shè)計(jì)堡壘機(jī)思路
- 跳板機(jī)安全設(shè)置(iptables端口限制、登錄限制sshd_config)
- 用戶、命令權(quán)限限制(jaikit)http://blog.chinaunix.net/uid-28310119-id-3503318.html
- 客戶機(jī)器日志審計(jì)(只能在客戶器上操作,不能在跳板機(jī)上操作)
- http://www.68idc.cn/help/server/linux/2014042190951
- 安裝過程:
- cd /usr/local ? ? ? ? ? ? #軟件安裝的目錄
- cd /src
- wget http://olivier.sessink.nl/jailkit/jailkit-2.19.tar.bz2
- tar -jxvf jailkit-2.19.tar.bz2
- cd jailkit-2.19/
- ./configure && make && make install
- mkdir /home/jailkit
- ?
- jk_init -v -j /home/jail/basicshe
- jk_init -v -j /home/jail/editors
- jk_init -v -j /home/jail/netutils
- jk_init -v -j /home/jail ssh
?
- useradd wang
- passwd wang
- mkdir /home/jail/usr/sbin?
- cp /usr/sbin/jk_lsh ? /home/jail/usr/sbin/jk_lsh
- jk_jailuser -m -j ?/home/jail ?wang ? ? ? ? ? ? ?#在虛擬系統(tǒng)里面創(chuàng)建wang用戶
- cd /home/jail ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #切換到j(luò)ail ?目錄中
- cat ?etc/passwd ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #查看添加的用戶wang
- vi /home/jail/etc/passwd=vi ? /etc/passwd? ? ? ? ? ? ? ? ? ? ? ? ? #把wang那一行的/usr/sbin/jk_lsh改為/bin/bash
- 使用xshell5遠(yuǎn)程連接wang主機(jī)
- 登錄成功后,使用命令:ls -l /, ? ? ? 兩下tab鍵 ?,命令:$查看可用的命令
- 給普通用戶設(shè)置秘鑰登陸,應(yīng)該到普通用戶的 家目錄里 .ssh/authorized_keys文件里添加秘鑰
- vi ?/etc/ssh/sshd_config ? ? ? ? ? ?#在/etc/ssh/sshd_config 中設(shè)置只允許秘鑰登錄,輸入/passaword,定位到passwd的那一行。把PasswordAuthentication yes底下的兩個yes,改成no。
- vi /etc/hosts.allow ? ? ? ? ? ? ? #限制不需要的IP和服務(wù)。在最底下添加限制的IP,比如添加:sshd: 192.168.133.0/24 1.1.1.1 2.2.2.2
- vi ?/etc/hosts.deny ? ? ? ? ? ? ? ? ?#在最底下添加一行:sshd:ALL
- cat /etc/hosts.deny ? ? ? ? ? ? ? ?#查看有沒有設(shè)置成功
實(shí)例:
使用 wget下載,
當(dāng)?shù)卿泈ang主機(jī)時,顯示沒有/usr/bin/id時,使用命令:ls -l /,查看根目錄
編輯vi .bashrc或者vi .bash-profile中添加。
?
23.4搭建簡易堡壘機(jī)---日志審計(jì)
?以下操作是需要在所有被登錄機(jī)器上做的
? mkdir /usr/local/records
? chmod 777 !$
? chmod +t !$ ? ? ? ? ? ? ? ? ? ? ? ? ? ?#t防刪
? vi /etc/profile //添加
?if [ ! -d? /usr/local/records/${LOGNAME} ];then
? ? mkdir -p /usr/local/records/${LOGNAME}
? ? chmod 300 /usr/local/records/${LOGNAME};fi
export HISTORY_FILE="/usr/local/records/${LOGNAME}/bash_history"
export PROMPT_COMMAND='{ date "+%Y-%m-%d %T ##### $(who am i |awk "{print \$1\" \"\$2\" \"\$5}") #### $(history 1 | { read x cmd; echo "$cmd"; })"; } >>$HISTORY_FILE'
注意:if?....;then中間;號;
fi前面也有
?
實(shí)例:第一步,限制deny,IP地址是跳板機(jī)的IP,使用命令:vi /etc/hosts.all
第二部,vi /etc/hosts.deny
然后再重新登錄一下,再另一個服務(wù)器上使用命令:ssh root@192.168.133.132,鏈接跳板機(jī)。
?
在服務(wù)器上添加本機(jī)windows的ip地址
添加完成后,重新鏈接,這臺機(jī)器,使用命令:w,查看有沒有添加成功。
編輯vi /etc/profile
在服務(wù)端,添加一個張三的用戶,然后再跳板機(jī)上鏈接,使用命令:ssh zhangsan@192.168.133.132
在服務(wù)端,使用命令:cd .. ? ?ls?
?
注意:系統(tǒng)的history命令只能查看正常操作退出的命令歷史,如果是斷電,或者掉線退出終端命令歷史是無法記錄到history中去的
常見問題:
windows的ip
2、在設(shè)置客戶端機(jī)器aming-02的時候,有一個ip地址 192.168.133.1 這個是那個虛擬機(jī)的ip地址?為什么添加192.168.133.1就可以通過root登陸 aminng-02了,我記得aming-02這個虛擬機(jī)的ip地址是192.168.133.132吧?然后,跳板記得ip地址是192.168.133.130,對吧。不明白192.168.133.1這個ip地址是什么?
答:
133.1 是我windows的ip,也就是客戶端的ip地址。
你用哪個ip去連這臺機(jī)器,就設(shè)置哪個ip為白名單ip。?
如果你要用132去連這臺機(jī)器,那就添加這個132ip為白名單。
你用哪個ip去連這臺機(jī)器,就設(shè)置哪個ip為白名單ip。?
如果你要用132去連這臺機(jī)器,那就添加這個132ip為白名單。
3、現(xiàn)在我的需求是跳板機(jī)使用密鑰登錄服務(wù)器。但是zhangsna這個用戶已經(jīng)使用不了ssh-keygen這個命令了,這個應(yīng)該怎么解決。還是說我們在限制用戶之前就生成公鑰備用?
答:可以用root給它生成啊? 私鑰放哪里都無所謂,它登錄的時候指定私鑰位置就行了。?
ssh -i 后面指定私鑰路徑
?
?
?
常見問題:
解壓不了?下載gcc已解決
?
?
2、
Installing indexes ...
Installed 0 object(s) from 0 fixture(s)
?
請輸入管理員用戶名 [admin]:?
請輸入管理員密碼: [5Lov@wife]:?
請?jiān)俅屋斎牍芾韱T密碼: [5Lov@wife]:?
Starting jumpserver service:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?[FAILED]
?
安裝成功,Web登錄請?jiān)L問http://ip:8000, 祝你使用愉快。
請?jiān)L問 https://github.com/jumpserver/jumpserver/wiki 查看文檔
[root@master-ansible-220 install]# cd ..
[root@master-ansible-220 jumpserver-0.3.3]# ./service.sh restart
Stopping jumpserver service:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?[FAILED]
Starting jumpserver service:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?[FAILED]
?
啟動jumpserver失敗
答:查看一下你的系統(tǒng)中是不是已經(jīng)有監(jiān)聽80或者 8000端口。?服務(wù)沒啟動,沒查看到監(jiān)聽8000端口,查一下它的日志吧
?
3、對比docker安裝的視頻我看了一下,下載的是yum install -y docker-ce,怎么我們安裝堡壘機(jī)用的是yum install -y docker 。這兩個之間有區(qū)別嗎?
答:版本不一樣。
?
4、
[root@localhost ~]# yum install -y docker?
已加載插件:fastestmirror
Loading mirror speeds from cached hostfile
?* base: mirrors.cn99.com
?* extras: mirrors.cn99.com
?* updates: mirrors.cn99.com
軟件包 2:docker-1.13.1-53.git774336d.el7.centos.x86_64 已安裝并且是最新版本
無須任何處理
[root@localhost ~]# systemctl enable docker
[root@localhost ~]# systemctl start docker
Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.
我參照PPT里面安裝了一下0.4.0的版本,啟動的時候怎么總是報錯?
答:之前的版本卸載掉。
?
5、
?File "install.py", line 307, in <module>
? ? pre_setup.start()
? File "install.py", line 299, in start
? ? self._input_mysql()
? File "install.py", line 267, in _input_mysql
? ? if self._test_db_conn():
? File "install.py", line 192, in _test_db_conn
? ? import MySQLdb
ImportError: No module named MySQLdb
安裝的時候報這種錯誤。用的centos6.6 ?python2.7,不知道是不是版本問題。
答:
試試這個命令?
yum install MySQL-python
?
6、
[root@jishan-2 jumpserver]# ls
apps ?config_example.py ?data ?docs ?LICENSE ?logs ?README.md ?requirements ?run_server.py ?tmp ?utils
在克隆之后怎么沒有install安裝目錄,老師這個我怎么處理。
答:
版本不對,你這個4.0版本,安裝方法可以參考我ppt里面的方法(docker)
你要想下載3的版本,可以到這里來下載??https://github.com/jumpserver/jumpserver/tree/0.3.3? 下載zip格式的。
?
?
轉(zhuǎn)載于:https://my.oschina.net/u/3803405/blog/1814428
總結(jié)
- 上一篇: 功能式Python中的探索性数据分析
- 下一篇: KafkaConsumer 长时间地在p