V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
kawady1994
V2EX  ›  SSH

如何配置 frp 使得能够在外网用 mosh 访问内网计算机?

  •  1
     
  •   kawady1994 · 2017-10-08 10:08:50 +08:00 · 6254 次点击
    这是一个创建于 2630 天前的主题,其中的信息可能已经有所发展或是发生改变。

    请教大家一个关于 mosh 和 frp( https://github.com/fatedier/frp) 的问题。

    我想在外边儿也能访问办公室的电脑,于是用 frp 将办公室电脑的 22 端口 tcp 映射到了 vps 的 6000 端口。此时在外网用 ssh -p 6000 user@server_ip 能够成功登录办公室的电脑。

    但是如果想用 mosh 的话该怎么配置呢? 我尝试将办公室电脑的 60001 端口 udp 映射到 vps 的 6001 端口,然后在外网用 mosh -p 6001 --ssh="ssh -p 6000" user@server_ip 能出现密码输入的提示,但是输入密码后 mosh 无法连接。请问这该怎么处理呢?

    错误提示如下:

    mosh did not make a successful connection to 188.166.182.144:7000. Please verify that UDP port 7000 is not firewalled and can reach the server.

    (By default, mosh uses a UDP port between 60000 and 61000. The -p option selects a specific UDP port number.)

    [mosh is exiting.]

    谢谢大家!

    8 条回复    2024-09-21 09:56:23 +08:00
    kawady1994
        1
    kawady1994  
    OP
       2017-10-08 10:23:08 +08:00
    错误提示写错了,不是 7000 而是 6001. 抱歉抱歉!
    zlhdd108
        2
    zlhdd108  
       2017-10-08 10:50:26 +08:00 via Android
    提示应该是用的 udp,我没记错的话,frp 貌似也支持 udp 转发,不过要改点东西
    WordTian
        3
    WordTian  
       2017-11-04 00:15:32 +08:00 via Android
    啥? frp 居然还支持 udp 转发?
    panda0
        4
    panda0  
       2018-06-28 19:11:13 +08:00
    🐎
    devnkong
        5
    devnkong  
       2019-01-19 16:13:08 +08:00
    同样遇到了这个问题,楼主解决了吗?
    wogong
        6
    wogong  
       2019-01-24 08:32:02 +08:00
    @devnkong #5 建议使用 Wireguard 实现同样的目的。单靠端口转发使用 mosh 不太现实,不太好解决认证问题。
    fangxing204
        7
    fangxing204  
       2021-11-23 10:20:47 +08:00
    我可以

    1. 首先打开 frp 管理页面确保 frp 在监听对应的端口

    2. 还有,楼主可能用错了 user?,因为我就卡在这

    ```
    mosh -p 6001 --ssh="ssh -p 6000" user@server_ip
    ```

    这个 user 是公网服务器的 user ? 应该改为办公室电脑的 user , 假设是 user_in_office

    ```
    mosh -p 6001 --ssh="ssh -p 6000" user_in_office@server_ip
    ```
    newdongyuwei
        8
    newdongyuwei  
       90 天前
    设置 mosh-server 运行在 60003 端口:
    mosh-server new -p 60003

    在 frpc.toml 添加 mosh 配置
    cat frpc.toml
    ```
    serverAddr = "45.63.1.1"
    serverPort = 7000
    auth.token = "update your auth token here"

    [[proxies]]
    name = "ssh"
    type = "tcp"
    localIP = "127.0.0.1"
    localPort = 22
    remotePort = 2222

    # Adding Mosh configuration
    [[proxies]]
    name = "mosh"
    type = "udp"
    localIP = "127.0.0.1"
    localPort = 60003 # You can adjust this port if needed
    remotePort = 60003 # Same port range on the server

    在其他电脑上连接(假设 ssh key 为~/.ssh/macmini2024 ):
    mosh --ssh="ssh -p 2222 -i ~/.ssh/macmini2024" [email protected] --port=60003
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2730 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 11:32 · PVG 19:32 · LAX 03:32 · JFK 06:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.