frp透传

概述

在contos6.5系统上搭建了一个ftp服务器(vsftpd),因无固定ip,只能在内部使用,限制了ftp服务器的作用,于是开始折腾怎样实现内网透传。
teamview和向日葵是比较成熟的透传工具,但非开源,需付费使用。通过比较,发现frp是可实现透传功能的项目,但需要具有公网ip电脑做frp服务器,内网电脑做frp客户端。刚好手上有一个阿里的云主机,开始搭建frp,实现透传功能。


frp 介绍

frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp, http, https 协议。开源、免费、稳定是其主要特点。
frp要求:

  1. 需要1台公网ip的主机做frp服务器。
  2. 需要frp安装文件

操作

  • 服务器(具有固定IP的主机)
  1. 下载frp软件:下载地址
    https://github.com/fatedier/frp/releases,选择下载版本
    命令:
    wget https://github.com/fatedier/frp/releases/download/v0.21.0/frp_0.21.0_linux_386.tar.gz
  2. 解压下载文件。
    命令:tar -zvxf frp_0.21.0_linux_386.tar.gz
  3. 修改配置文件。
    先到减压后的文件夹,frp_0.21.0_linux_386,然后用vim打开frps.ini文件。
    命令:vim frps.ini
    在文件中,增加如下内容:
    bind_port = 4443
    privilege_token = 12345678
    其中,记住bind_port和privilege_token值,在配置客户端时需要设置相同值。
  4. 启动服务。
    命令: ./frps -c ./frps.ini
    该命令后,服务器可是运行。但服务器重启后,装置不会自动启动。如需自动启动后,服务自动运行,需要修改/etc/rc.local文件。
    在文件后添加(exit 0前),添加如下内容(假设减压后的文件路径为:/root/frp93):
    nohup /root/frp93/frps -c /root/frp93/frps.ini &
  • 客户端(需要透传的主机)
  1. 下载frp软件:下载地址
    https://github.com/fatedier/frp/releases,选择下载版本
    命令:
    wget https://github.com/fatedier/frp/releases/download/v0.21.0/frp_0.21.0_linux_386.tar.gz
  2. 解压下载文件。
    命令:tar -zvxf frp_0.21.0_linux_386.tar.gz
  3. 修改配置文件。
    先到减压后的文件夹,frp_0.21.0_linux_386,然后用vim打开frpc.ini文件。
    在文件中,增加如下内容:

[common]
server_addr = 服务端IP
server_port = 4443
privilege_token = 12345678

[ssh]
type = tcp
local _ip = 127.0.0.1
local_port = 22
remote_port = 10085

[test_static_file]
tpye = tcp
remote_port = 10088
plugin = static_file

plugin_local_path = /data/backup
plugin_http_user = ftpbackup
plugin_http_passwd = 12345678

[ftp1]
type = tcp
local_ip = 127.0.0.1
local_port = 21
remote_port = 10021

[ftp2]
type = tcp
local_ip = 127.0.0.1
local_port = 5000
remote_port = 5000

[ftp3]
type = tcp
local_ip = 127.0.0.1
local_port = 5001
remote_port = 5001

[ftp4]
type = tcp
local_ip = 127.0.0.1
local_port = 5002
remote_port = 5002

  1. 启动服务。
    命令: ./frpc -c ./frpc.ini
    该命令后,服务器可是运行。但服务器重启后,装置不会自动启动。如需自动启动后,服务自动运行,需要修改/etc/rc.local文件。
    在文件后添加(exit 0前),添加如下内容(假设减压后的文件路径为:/root/frp93):
    nohup /root/frp93/frpc -c /root/frp93/frpc.ini &

其他

通过frp透传,使用ssh很稳定;但用ftp能够连接成功,不能访问路径,后将ftp采用post模拟,端口限制为5000-5003后,能够访问路径,但总是掉线(查找相关资料,认为是ftp需要双端口,且很主机都屏蔽了ftp端口)。为远程访问文件,通过http静态文件([test_static_file])访问实现,目前测试稳定,但只能下载文件。

你可能感兴趣的:(frp透传)