helllkz
V2EX  ›  问与答

SSH 转发能实现这样的功能吗

  •  
  •   helllkz · Jul 6, 2018 · 2298 views
    This topic created in 2944 days ago, the information mentioned may be changed or developed.

    有台服务器 A,如果用用户 A1 登录,就将 SSH 转发到 B 服务器上,如果用 A2 登录,则不用转发,可以实现这个功能吗?

    主要需求是原因是目前的 gitlab,没用自带的 nginx,自己安装的,现在准备把其他服务器上的 nginx 都提出来,转发放个反代服务器上面,但是这样出现个问题,就是 gitlab 的网页没问题,但是 ssh 方式就会登录到反代服务器上面

    6 replies    2018-07-06 17:08:21 +08:00
    ETiV
        1
    ETiV  
       Jul 6, 2018 via iPhone
    在 authorized_key 的 command 参数上做文章?
    wps353
        2
    wps353  
       Jul 6, 2018
    feather12315
        3
    feather12315  
       Jul 6, 2018 via Android
    ssh 执行的第一个命令默认是`/bin/bash`,这个实在`/etc/passwd`还是`/etc/shadow` 中,尝试修改这个命令试试?
    helllkz
        4
    helllkz  
    OP
       Jul 6, 2018
    想了下貌似不行,现在是通过 Key 登录的,A 服务器上根本就没有用户的 Key,自然就没法转发到 B 服务器上了,如果用 Nginx 的 Stream 转发,那又会把所有 SSH 都转发了,感觉这个需求没法实现
    liuhaotian
        5
    liuhaotian  
       Jul 6, 2018
    反代服务器的 SSH 端口改掉,22 端口转发,不就行了?
    helllkz
        6
    helllkz  
    OP
       Jul 6, 2018
    @liuhaotian
    谢谢,目前确实可以用这种方式解决,如果下次还有个什么应用必须要用 22 端口就没办法了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5396 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 55ms · UTC 08:28 · PVG 16:28 · LAX 01:28 · JFK 04:28
    ♥ Do have faith in what you're doing.