V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
northpolepuppy
V2EX  ›  问与答

分享个 frp 转发 vsftp 的经验把

  •  
  •   northpolepuppy · 2020-03-24 23:02:49 +08:00 · 1293 次点击
    这是一个创建于 1494 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Why

    • 这个其实在 frp 的 issue 里也有人成功了,但是我感觉那位仁兄说的可能不是特别清楚,导致我花了好几天时间才研究明白。一来我觉得要分享一下吧,二来也算做个备份

    Keys

    • frp,vsftp

    Theory

    • 首先要明白 vsftp 其实是使用两个端口的,一个端口负责登录,一个端口负责传输数据,所以这两个端口都需要转发。具体内容可使用搜索引擎检索关键字“FTP 的主动模式和被动模式”。

    How

    • 别的废话也别说了,直接上配置文件。
    #设置为被动模式
    echo 'pasv_enable=YES'>>/etc/vsftpd.conf 
    #设置被动模式的随机端口最大为 6003
    echo 'pasv_max_port=6003'>>/etc/vsftpd.conf
    #设置被动模式的随机端口最小为 6003
    echo 'pasv_min_port=6003'>>/etc/vsftpd.conf
    #既然是通过转发实现的,那么 frpc 上的 vsftp 自然要访问的是 frps 的 ip 而非 ftp 客户端的 ip
    echo 'pasv_address=服务器 IP'>>/etc/vsftpd.conf
    echo ' [common]' >/etc/frpc.ini
    echo ' server_addr = 服务器 IP' >/etc/frpc.ini
    echo ' server_port = 7000' >/etc/frpc.ini
    echo ' token = 你的 token' >/etc/frpc.ini
    echo ' ' >/etc/frpc.ini
    echo ' [ftp1]' >/etc/frpc.ini
    echo ' type=tcp' >/etc/frpc.ini
    echo ' local_ip=127.0.0.1' >/etc/frpc.ini
    echo ' local_port=21' >/etc/frpc.ini
    #转发 frps 端口 6002 到 frpc 的 21 端口
    echo ' remote_port=6002' >/etc/frpc.ini
    echo ' ' >/etc/frpc.ini
    echo ' [ftp2]' >/etc/frpc.ini
    echo ' type=tcp' >/etc/frpc.ini
    echo ' local_ip=127.0.0.1' >/etc/frpc.ini
    echo ' local_port=6003' >/etc/frpc.ini
    #转发 frps 端口 6003 到 frpc 的 6003 端口
    echo ' remote_port=6003' >/etc/frpc.ini
    
    4 条回复    2020-03-25 11:21:55 +08:00
    northpolepuppy
        1
    northpolepuppy  
    OP
       2020-03-24 23:03:18 +08:00
    欢迎指出错误,不懂的可以提问
    privil
        2
    privil  
       2020-03-24 23:05:51 +08:00
    用 eof 写脚本没那么累,手动扶额
    northpolepuppy
        3
    northpolepuppy  
    OP
       2020-03-24 23:09:24 +08:00
    @privil 学习到了
    northpolepuppy
        4
    northpolepuppy  
    OP
       2020-03-25 11:21:55 +08:00 via iPhone
    诶,我第一次分享这种东西鸭,怎么没人捧场
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2697 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 11:04 · PVG 19:04 · LAX 04:04 · JFK 07:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.