利用frp实现内网服务器穿透(远程ssh以及远程jupyter)

本文详细介绍了如何使用frp在内网环境中实现服务器穿透,包括配置公网服务器frps、内网客户端frpc,以及通过frp访问远程ssh和Jupyter Notebook。教程适合Windows服务器和Ubuntu客户端,涉及frpc、frps文件配置和外网访问步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考资料:

  1. 十分钟教你配置frp实现内网穿透
  2. frp安装报错:./frpc: cannot execute binary file: Exec format error
  3. 如何查看linux系统的体系结构
  4. frpn内网穿透软件各版本下载
  5. 利用frp内网穿透远程访问Jupyter Notebook
  6. jupyter notebook + frp 实现外网访问

一、已有硬件配置

1.一台具有公网ip的腾讯云服务器,系统为windows
2.一台内网中的linux客户机,系统为ubuntu,系统体系结构为386

二、frp内网穿透极简步骤

1.在服务器和客户机上下载对应版本的frp压缩包,并解压到某个磁盘上

进入解压目录cd frp_0.3.16_linux_386,这里主要关注4个文件,分别是

frpc、frpc.ini和
frps、frps.ini,

前者两个文件是内网客户端所关注文件,
后者两个文件是公网服务器所关注两个文件。

2.配置公网服务器,首先删掉frpc、frpc.ini两个文件,然后再进行配置

vim ./frps.ini

[common]
bind_port = 7000           #与客户端绑定的进行通信的端口

保存然后启动服务./frps -c ./frps.ini,这是前台启动,后台启动命令为nohup ./frps -c ./frps.ini &

3.配置内网客户机,首先删掉frps、frps.ini两个文件,然后再进行配置

vi ./frpc.ini

[common]
server_addr = 120.88.88.120   #公网服务器ip
server_port = 7000            #与服务端bind_port一致
 
#公网通过ssh访问内部服务器
[ssh]
type = tcp              #连接协议
local_ip = 192.168.3.1 #内网服务器ip
local_port = 22         #ssh默认端口号
remote_port = 6000      #自定义的访问内部ssh端口号

保存然后执行./frpc -c ./frpc.ini启动,这是前台启动,后台启动命令为nohup ./frpc -c ./frpc.ini &

4.从外网访问ssh

外网ssh访问内网服务器(直接使用配置里面数据演示)

ip:120.88.88.120 port:6000
用户名:linux服务器的用户 密码:linux服务器的密码

三、frp内网穿透jupyter

刚才内网穿透,远程访问服务器的命令行大家已经会了,下面就是访问jupyter,很简单,方法如下:

3.1 外网服务器端 frps.ini文件

1 [common]
2 bind_port = 7000 #与客户端绑定进行通信的窗口
3 vhost_http_port = 8080 #通过这个服务器端口访问内网的Jupyter

3.2 内网客户机端 frpc.ini文件

1 [common]
  2 server_addr = 120.88.88.120 #公网的ip地址 
  3 server_port = 7000 #与frps.ini中的bind_port相同
  4 
  5 [ssh] #用于ssh连接服务器
  6 type = tcp
  7 local_ip = 180.201.3.3 #本地内网服务器的ip地址
  8 local_port = 101  #本地的ssh使用的tcp端口
  9 remote_port = 6001 #远程端口
 10 
 11 [jupyter]
 12 type = http
 13 local_ip = 127.0.0.1 #本地jupyter服务的地址
 14 local_port = 8888  #内网提供web(jupyter)服务的端口号,jupyter默认是8888
 15 custom_domains = jupyter.tina.com #所绑定的公网服务器域名,一级、二级域名都可以

3.3 外网访问内网服务器上的jupyter

浏览器输入 jupyter.tina.com:8080 即可

FRP(Fast Reverse Proxy)是一个高效的内网穿透工具,它通过创建一个反向代理来解决内网设备的远程访问问题。以下是使用FRP实现内网穿透远程访问SSH服务的详细配置步骤: 参考资源链接:[frp内网穿透教程:部署与使用](https://wenku.youkuaiyun.com/doc/4i9a44ntqj?spm=1055.2569.3001.10343) 1. **FRPS的部署**:首先,你需要在拥有公网IP的服务器上部署FRP服务端(FRPS)。 - 下载FRP服务端的发布版本:访问官方GitHub仓库提供的下载链接。 - 解压下载的压缩包到合适目录,例如`/etc/frp/`。 - 配置FRPS,编辑`frps.ini`文件,设置监听端口和其他必要的参数,例如: ```ini [common] bind_port = 7000 ``` - 启动FRPS服务,通过运行如下命令: ```bash ./frps -c ./frps.ini ``` 2. **FRPC的配置**:接着,在内网环境中需要被远程访问的机器上部署FRP客户端(FRPC)。 - 同样地,下载FRPC的相应版本并解压。 - 编辑`frpc.ini`文件,设置服务端的地址和端口,配置SSH服务的本地和远程端口映射,例如: ```ini [common] server_addr = x.x.x.x # 替换为你的FRPS服务器公网IP server_port = 7000 [ssh] type = tcp local_ip = ***.*.*.* # 本地SSH服务监听的IP local_port = 22 # 本地SSH服务监听的端口 remote_port = 6000 # 外网访问的端口 ``` - 启动FRPC服务,通过运行如下命令: ```bash ./frpc -c ./frpc.ini ``` 3. **连接测试**:完成以上步骤后,你可以通过外网访问`[公网IP]:6000`来连接到内网SSH服务,其中`公网IP`是你FRPS服务器的公网IP地址,`6000`是你在`frpc.ini`中指定的远程端口。 通过以上步骤,FRP帮助你实现内网SSH服务的远程访问。需要注意的是,FRP虽然功能强大,但因为它处于开发阶段,可能存在不稳定性。在生产环境中部署前,务必进行充分的测试,并关注官方更新,以确保系统的稳定性和安全性。 参考资源链接:[frp内网穿透教程:部署与使用](https://wenku.youkuaiyun.com/doc/4i9a44ntqj?spm=1055.2569.3001.10343)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

五阿哥爱跳舞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值