V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
GjriFeu
V2EX  ›  Linux

端口转发原理和实现

  •  
  •   GjriFeu · 2017-03-19 11:33:49 +08:00 · 4019 次点击
    这是一个创建于 2805 天前的主题,其中的信息可能已经有所发展或是发生改变。

    一台主机上的 22 端口被禁用了,我登上了,如何改变 ssh 的端口 用端口转发实现,看了下不明白原理和实现

    15 条回复    2017-03-20 08:19:03 +08:00
    GjriFeu
        1
    GjriFeu  
    OP
       2017-03-19 11:35:19 +08:00
    求解释通俗点
    nanpuyue
        2
    nanpuyue  
       2017-03-19 11:47:31 +08:00
    vi /etc/ssh/sshd_config
    GjriFeu
        3
    GjriFeu  
    OP
       2017-03-19 11:51:07 +08:00
    @nanpuyue 这样是可以,但是我想知道用端口转发怎么实现
    izhaohui
        4
    izhaohui  
       2017-03-19 11:52:36 +08:00 via Android
    装个 haproxy 把别的端口转发到 22 ,或者 iptables 把另一个端口 redirect 到本机 22 应该可行
    seawing
        5
    seawing  
       2017-03-19 11:54:08 +08:00 via Android   ❤️ 1
    如果 22 端口被禁用的意思是指只有本地才可以访问的话,可以用这条命令
    ssh -NfL xxxxx: localhost:22 localhost , xxxxx 指你可以从外部访问的端口
    这条命令的意思是 localhost 监听自己的 xxxxx 端口,将所有流量转发到本地的 22 端口,所以 ssh -p xxxxx 就可以了
    nanpuyue
        6
    nanpuyue  
       2017-03-19 11:54:24 +08:00
    @GjriFeu
    想用哪种端口转发, iptables 还是 ssh ?
    要实现什么,能利用的条件有什么?
    一般来说,要想获得详细的解答,首先要有详细的问题描述。
    GjriFeu
        7
    GjriFeu  
    OP
       2017-03-19 11:55:36 +08:00
    @seawing 谢谢,我试试
    artandlol
        8
    artandlol  
       2017-03-19 11:56:31 +08:00 via Android
    ssh 自带端口转发
    GjriFeu
        9
    GjriFeu  
    OP
       2017-03-19 11:57:05 +08:00
    @nanpuyue 我指的是 ssh 端口转发,我有的条件是能登上主机还有 root 权限。
    GjriFeu
        10
    GjriFeu  
    OP
       2017-03-19 11:58:11 +08:00
    GjriFeu
        11
    GjriFeu  
    OP
       2017-03-19 11:59:43 +08:00
    @seawing 外网登录时 22 端口被禁用了,但是登录跳板机能登录,这是应该是限制 ip 访问吧?
    seawing
        12
    seawing  
       2017-03-19 12:08:05 +08:00 via Android
    @GjriFeu 应该是防火墙过滤掉了,防火墙在哪一层要看你的网络环境,看你描述估计是跳板机和目标主机在同一个网络内部?所以他们之间不受防火墙影响。
    nanpuyue
        13
    nanpuyue  
       2017-03-19 12:14:13 +08:00
    VYSE
        14
    VYSE  
       2017-03-19 16:13:50 +08:00
    iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 22 -j REDIRECT --to-port 80
    这能封就别要这台 VPS 了
    mytsing520
        15
    mytsing520  
       2017-03-20 08:19:03 +08:00
    iptables -t nat -A PREROUTING -p tcp --dport 本地端口号 -j DNAT --to-destination 远端主机地址:端口号
    iptables -t nat -A POSTROUTING -p tcp -d 远端主机地址 --dport 端口号 -j SNAT --to-source 本地主机地址

    iptables -t nat -A PREROUTING -p udp --dport 本地端口号 -j DNAT --to-destination 远端主机地址:端口号
    iptables -t nat -A POSTROUTING -p udp -d 远端主机地址 --dport 端口号 -j SNAT --to-source 本地主机地址
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1047 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 23:07 · PVG 07:07 · LAX 15:07 · JFK 18:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.