近日,公司在跳板機前架設了堡壘機,以防止ssh攻擊,但這帶來一個問題,咱們日常直接ssh跳板機,能夠直接使用scp來上傳或下載跳板機數據到本地服務器
架設堡壘以後常常使用的scp工具很差用了ssh
因而本期就來解決跨堡壘機實現scp問題,解決方案一樣適用阿里雲子帳號實現工具
常見堡壘-跳板-ECS結構拓撲圖:測試
堡壘機、跳板機、服務器處於相同網段,能夠直接內網訪問,只留下堡壘機一個出口供外部使用阿里雲
在上述拓撲中,本地和堡壘機實現了ssh便捷登陸(普通堡壘機只須要保存本地公鑰便可,阿里雲堡壘機需配置子帳號認證)spa
堡壘機和跳板機實現了ssh便捷登陸,咱們假設本地登陸堡壘機ssh信息以下:code
堡壘機開放ssh端口:60022blog
堡壘機域名:xxxxxx-public.bastionhost.aliyuncs.comip
堡壘機IP:47.104.69.199域名
普通堡壘機登陸:
admin@AdmindeMacBook-Pro-3 ~: ssh -p 60022 root@47.104.69.199
阿里雲堡壘機登陸:(dongxixi爲子帳號)
admin@AdmindeMacBook-Pro-3 ~: ssh -p 60022 dongxixi@xxxxxx-public.bastionhost.aliyuncs.com
經過以上命令咱們能夠輕鬆登陸堡壘機(普通堡壘機直接登陸,阿里雲堡壘機須要繼續輸入子帳號密碼和MFA code)
咱們假設跳板機ssh信息以下(只容許內網訪問):
跳板機開放ssh端口:22
跳板機IP:47.105.21.22
當咱們站在堡壘機上時,能夠經過如下命令直接登陸跳板機
root@47.104.69.199 ~:ssh 47.105.21.22
當上述流程都ok時,咱們就開始配置本地ssh,實現跨堡壘機scp了
進入本地ssh配置目錄:
admin@AdmindeMacBook-Pro-3 ~: cd ~/.ssh/
編輯config文件
admin@AdmindeMacBook-Pro-3 ~: vi config
若是本地存在config文件則追加,不存在則新建便可,如下配置根據本身實際填寫
# 堡壘機配置 Host爲別名 HostName能夠是解析後的域名,也能夠是ip,User爲登陸的用戶 Host bastion HostName xxxxx-public.bastionhost.aliyuncs.com # 或 47.104.69.199 User dongxixi Port 60022 # 跳板機配置 Host jumper HostName 47.105.21.22 User root Port 22 Host jumper ProxyCommand ssh -A -q bastion -W %h:%p
esc + wq!保存退出
接下來測試配置是否成功
# 上傳測試,若是堡壘機是阿里雲堡壘機,回車後會提示輸入子帳號密碼和MFA code
admin@AdmindeMacBook-Pro-3 ~: scp -r ~/Downloads/test.txt jumper:~/
# 執行後若是沒有報錯,自行上跳板機查看是否存在相應文件
# 下載測試,若是堡壘機是阿里雲堡壘機,回車後會提示輸入子帳號密碼和MFA code
admin@AdmindeMacBook-Pro-3 ~: scp -r jumper:~/test.txt ~/Downloads
多堡壘機、多跳板可在上述方案基礎上繼續改造!
謝謝!