在NAT网关上会有一张映射表,表上记录了内网向公网哪个IP和端口发起了请求,然后如果内网有主机向公网设备发起了请求,内网主机的请求数据包传输到了NAT网关上,那么NAT网关会修改该数据包的源IP地址和源端口为NAT网关自身的IP地址和任意一个不冲突的自身未使用的端口,并且把这个修改记录到那张映射表上。最后把修改之后的数据包发送到请求的目标主机,等目标主机发回了响应包之后,再根据响应包里面的目的IP地址和目的端口去映射表里面找到该转发给哪个内网主机。这样就实现了内网主机在没有公网IP的情况下,通过NAPT技术借助路由器唯一的一个公网IP来访问公网设备。 具体原理参照上图。
10款内网穿透工具:
1、Ngrok
ngrok 是一个反向代理,通过在公共端点和本地运行的 Web 服务器之间建立一个安全的通道,实现内网主机的服务可以暴露给外网。ngrok 可捕获和分析所有通道上的流量,便于后期分析和重放,所以ngrok可以很方便地协助服务端程序测试。
参考博客:10分钟教你搭建自己的ngrok服务器
>1、Ngrok
ngrok 是一个反向代理,通过在公共端点和本地运行的 Web 服务器之间建立一个安全的通道,实现内网主机的服务可以暴露给外网。ngrok 可捕获和分析所有通道上的流量,便于后期分析和重放,所以ngrok可以很方便地协助服务端程序测试。
参考博客:10分钟教你搭建自己的ngrok服务器
2、Natapp
natapp是 基于ngrok的国内收费内网穿透工具,类似花生壳,有免费版本,比花生壳好。免费版本:提供>方法/步骤
安装FTP服务
开始--》管理工具--》服务器管理器
安装IIS/FTP角色
打开服务器管理器,找到添加角色,然后点击,d出添加角色对话框,选择下一步
选择Web服务器(IIS),然后选择FTP服务,直到安装完成。
在IIS中查看,如果能够右键创建FTP站点,则表明FTP服务安装成功
创建Windows用户名和密码,用于FTP使用。
开始--》管理工具--》服务器管理器,添加用户,如下图:本实例使用ftptest
在服务器磁盘上创建一个供FTP使用的文件夹,创建FTP站点,指定刚刚创建的用户FtpTest,赋予读写权限
步骤阅读
7
客户端测试。直接使用ftp://服务器ip地址:ftp端口,如图。d出输入用户名和密码的对话框表示配置成功,正确的输入用户名和密码后,即可对FTP文件进行相应权限的 *** 作。[必须]标识头
[common]
是不可或缺的部分
[必须]服务器IP
bind_addr = 0000
0000为服务器全局所有IP可用,假如你的服务器有多个IP则可以这样做,或者填写为指定其中的一个服务器IP,支持IPV6
[必须]FRP通讯端口
bind_port = 7000
用于和客户端内网穿透传输数据的端口,可自定义。
用于KCP协议UDP通讯端口
kcp_bind_port = 7000
也可以和“bind_port”共用同一端口,如果没有设置,则kcp在frps中被禁用,可自定义。
UDP通讯端口
bind_udp_port = 7001
以帮助使UDP打洞穿透NAT,可自定义。
[必须]连接认证密钥-特权模式
privilege_token = > 如果你想支持>
说明: FrpMgr是一个基于Frp的快速配置Web面板,可以一键配置生成客户端的Frp配置文件,远程安装Frp服务到任意一台服务器,让我们在使用配置Frp上方便很多。对于类似这种带Web面板的穿透工具,之前也发过不少,比如nps、lanproxy等,都挺不错的,有兴趣可以去了解下,这里就介绍下FrpMgr安装及使用。
截图
安装
Github地址: >
个人建议不要拿家用电脑,特别是台式机来做服务器。原因如下:
1现在大部分人带宽并没有固定IP地址,要解决这个问题要么打电话给运营商客服叫其帮忙固定一个IP,要么用路由器DDNS,或者自己搭建一个FRP服务器做内网穿透。
2家用电脑特别是台式机功耗高,一直开着比较费电
3家用电脑硬盘属于个人消费级别的硬盘,没有企业硬盘或专用硬盘那样经的起整日开机使用
4家用电脑作为服务器,就一定会对外开发端口,假设电脑中有漏洞那么就相当于给了那些不怀好意的人一个 *** 作你电脑窥探你隐私的机会
如果真想在家中常备一台服务器可以用一下方法:
1买一台专业的家用NAS设备,如群晖NAS等,然后购买一台阿里云ECS做frp服务器即可
2若自己动手能力不错,也可以自己购买硬件组装NAS机器,但是前提是一定要控制好功耗
FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。如果要用ftp外网穿透,需要使用被动模式。被动模式(PASV)连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用PASV命令告诉客户端:“我打开了XXXX端口,你过来连接我”。于是客户端向服务器的XXXX端口发送连接请求,建立一条数据链路来传送数据。
所以,在使用ftp的时候,不仅需要转发默认的21端口,还需要转发数据端口。
考虑到frp转发的情况,所以数据端口最好是固定的,所以这里需要修改ftp服务器的配置,这里以vsftpd服务为例。修改 vsftpdconf 文件,固定被动模式端口范围
这里只开启了50000、50001、50002三个端口,意思就是同时只能有三个用户连接,如果需要更多用户可以配置更多的端口。
在frp的配置中,需要添加默认端口21和被动数据端口50000、50001、50002四个端口配置
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)