堡壘機透明代理(SOCKS5代理)模式,針對Linux運維體驗進行優(yōu)化,提升了運維人員的運維體驗。本文介紹如何配置透明代理。
透明代理(SOCKS5代理)模式
實現(xiàn)原理
- 建立SSH的SOCKS5隧道,隧道建立后產(chǎn)生數(shù)據(jù)通道A通道為:SOCKS5服務(wù)端—SSH客戶端進程1—堡壘機SSH服務(wù)。
- 設(shè)置SOCKS5代理,使對目標主機的訪問通過SOCKS5隧道完成。最終的數(shù)據(jù)通道為:SSH客戶端進程2—SOCKS5客戶端—A通道—目標主機。
圖形客戶端配置
以Xshell為例,操作步驟如下:
- 新建Xshell會話,建立SSH的SOCKS5隧道,即與堡壘機建立隧道連接在會話配置中分別填入堡壘機IP、端口(60022)。
- 填寫堡壘機用戶名密碼/密鑰(也可打開會話時手動輸入)。
- SSH配置,勾選紅框中內(nèi)容。
- 進入會話屬性的SSH-隧道菜單。
- 單擊添加,按下圖設(shè)置。
- 單擊確定,保存并打開會話,保持在如下界面,此時隧道已經(jīng)建立。
- 新建會話,填寫目標服務(wù)器IP、端口。
- 填寫服務(wù)器用戶名密碼(也可打開會話時輸入,若堡壘機授權(quán)組內(nèi)綁定了憑據(jù),則可只填用戶名,不需要填寫密碼)。
- 進入SSH-代理菜單,單擊瀏覽。
- 單擊會話,添加代理,按照下圖配置。
- 保存后,返回代理菜單勾選該服務(wù)器。
- 打開會話,可直接登錄至已授權(quán)給用戶使用的服務(wù)器,且流量可在堡壘機內(nèi)進行審計。
- 批量配置代理服務(wù)器可在建立多個Xshell會話后,選中多個會話,點擊右鍵屬性,批量配置代理服務(wù)器。
- 配置完成后,只需打開Xshell會話即可登錄服務(wù)器,不需要先登錄堡壘機再選擇服務(wù)器進入。
openSSH配置
說明 此方法不支持密鑰登錄堡壘機(密鑰登錄服務(wù)器可將私鑰存在堡壘機憑據(jù)中)
- 編輯~/.ssh/ssh_config文件(沒有該文件可新建),輸入如下內(nèi)容(可直接復(fù)制,更改堡壘機用戶名與IP即可)。
#堡壘機別名 Host __USM__ #堡壘機用戶名(本地賬號、AD/LDAP賬號、RAM子賬號) User 136xxxxxxxx #堡壘機IP Hostname 120.55.xx.xx #端口 Port 60022 #目標服務(wù)器 Host 1* 2* 3* 4* 5* 6* 7* 8* 9* #關(guān)閉密鑰驗證 PubkeyAuthentication no #設(shè)置堡壘機為代理 ProxyCommand ssh -F /root/.ssh/ssh_config -A -q __USM__ -W %h:%p Host a* b* c* d* e* f* h* i* j* k* l* m* n* o* p* q* r* s* t* u* v* w* x* y* z* PubkeyAuthentication no ProxyCommand ssh -F /root/.ssh/ssh_config -A -q __USM__ -W %h:%p Host A* B* C* D* E* F* H* I* J* K* L* M* N* O* P* Q* R* S* T* U* V* W* X* Y* Z* PubkeyAuthentication no ProxyCommand ssh -F /root/.ssh/ssh_config -A -q __USM__ -W %h:%p
- 指定配置文件即可通過堡壘機進行登錄、文件上傳下載等操作。
- 通過堡壘機登錄xxx.xxx.xxx.xxx服務(wù)器。
ssh -F .ssh/ssh_config root@xxx.xxx.xxx.xxx
按要求輸入堡壘機用戶密碼。
- 通過堡壘機與xxx.xxx.xxx.xxx互相上傳下載文件。
scp -F .ssh/ssh_config filename root@xxx.xxx.xxx.xxx:/
。若連接時出現(xiàn)如下錯誤:ssh_exchange_identification: Connection closed by remote host
,請刪除~/.ssh/known_hosts后再次執(zhí)行。說明 此功能的目的為減少運維人員登錄操作,請依據(jù)自身情況判斷酌情使用。
- 通過堡壘機登錄xxx.xxx.xxx.xxx服務(wù)器。