美文网首页公众号:阿区先生Java
本地Mac通过堡垒机代理实现跨堡垒机scp问题

本地Mac通过堡垒机代理实现跨堡垒机scp问题

作者: 程序花生 | 来源:发表于2021-01-25 21:19 被阅读0次

    近日,公司在跳板机前架设了堡垒机,以防止ssh攻击,但这带来一个问题,我们平常直接ssh跳板机,可以直接使用scp来上传或下载跳板机数据到本地

    架设堡垒之后经常使用的scp工具不好用了

    于是本期就来解决跨堡垒机实现scp问题,解决方案同样适用阿里云子账号实现

    常见堡垒-跳板-ECS结构拓扑图:

    堡垒机、跳板机、服务器处于相同网段,可以直接内网访问,只留下堡垒机一个出口供外部使用

    在上述拓扑中,本地和堡垒机实现了ssh便捷登录(普通堡垒机只需要保存本地公钥即可,阿里云堡垒机需配置子账号认证)

    堡垒机和跳板机实现了ssh便捷登录,我们假设本地登录堡垒机ssh信息如下:

    堡垒机开放ssh端口:60022

    堡垒机域名:xxxxxx-public.bastionhost.aliyuncs.com

    堡垒机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
    

    多堡垒机、多跳板可在上述方案基础上继续改造!

    作者:希希大队长

    链接:https://www.cnblogs.com/dongxixi/p/14325932.html

    相关文章

      网友评论

        本文标题:本地Mac通过堡垒机代理实现跨堡垒机scp问题

        本文链接:https://www.haomeiwen.com/subject/traizktx.html