树洞剪藏#剪藏#树洞剪藏

在公司使用家里树莓派的 ftp 服务 - 链滴

2024 年 11 月 18 日1 分钟
分享Twitter / XTelegram微博

同步来源:树洞剪藏 源站剪藏 ID:117 原文地址:https://ld246.com/article/1608716277988

打开原文 · 打开源站剪藏快照


在公司使用家里树莓派的 ftp 服务 - 链滴

首页

领域

问答

榜单

最新

查看所有消息

🎉 发布反馈或分享

❓ 进行提问或求助

🌛 发布清风明月

🗂️ 个人主页 🎉 活动

🧾 积分 🗃️ 文件 📙 帮助

⚙️ 设置 💤 登出

首页

标签

树莓派 /

frp /

内网穿透 /

FTP

在公司使用家里树莓派的 ftp 服务

本贴最后更新于 1425 天前,其中的信息可能已经斗转星移

买了一块树莓派吃灰一年多了,百度会员也快过期了,正好趁双十二买个硬盘当云盘使。

材料清单:

云服务器(任意一 厂家)

树莓派 3B+

TF 卡(建议 8G)

硬盘(买了一块 2T 的,机械就好)

可外接电源的硬盘盒(保护硬盘用,而且树莓派 usb 口供电不够,需要外接电源)

步骤一:

树莓派烧录系统,安装系统,打开 ssh,使用 xshell 连接树莓派,不会可以看 树莓派实验室

步骤二:挂载硬盘

因为我的硬盘文件系统是 exfat,所以可以直接挂载,其他文件系统的硬盘挂载方式文后有链接

查看硬盘状态:sudo fdisk -l

487 x 103

如果看不到,排除接线问题后,可能是硬盘供电不足的原因

然后 df -h 查看是否已自动挂载

384 x 171

发现没有挂载,已经挂载也可以重新挂载

先创建一个目录 sudo mdkir /home/pi/sda

然后使用 mount 挂载 sudo mount /dev/sda2 /home/pi/sda/

值得一提的是,如果你本身在挂载目录使用挂载命令,挂载成功后使用 ls 命令查看硬盘里的文件是看不到的,需要重新使用 cd 命令进入目录

451 x 98

当然,也可以使用 df -h 命令查看挂载情况

422 x 189

步骤三:云服务器安装 frp 工具

frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。(Ctrl+C、Ctrl+V)

首先从 github 下载安装包:

在 github 上找到 frp 项目: https://github.com/fatedier/frp ,进入下载目录:

733 x 225

807 x 248

下载对应系统版本的压缩包

338 x 566

使用 ftp 工具将压缩包上传到云服务器,在用户目录创建 app/frp 目录(个人习惯将新安装的软件安装在 app 中),将 frp 压缩包移动到该目录,解压 tar -zxvf frp_0.34.3_linux_386.tar.gz

打开目录

frpc 表示客户端,frps 表示服务端,.ini 文件是配置文件

610 x 66

修改 frps.ini 配置文件

服务端只需要打开一个端口以监听客户端请求即可,我打开的是 10001,配置好端口后, 一定要记得打开安全组 。

运行 frps 命令:./frps -c frps.ini

步骤四:树莓派安装 frp 工具

因为树莓派属于 arm 架构,所以下载的包应该是 frp_0.34.3_linux_arm.tar.gz

515 x 589

使用 ftp 工具将包下载到树莓派上,解压 tar -zxvf frp_0.34.3_linux_arm.tar.gz,进入目录

修改 frpc.ini 文件

304 x 600

server_addr 是云服务器的 ip 地址

server_port 是 frps 监听的端口

除[common]代表与 frp 服务器的连接外,其余[]都可看做是内网穿透连接的别名,

local_ip 是本机的 ip

local_port 是本机要暴露出去的端口

remote_port 是表示 frp 服务端将要监听的端口,发送到服务端该端口的数据流将转发到本地的 local_port 端口

ftp21 是 ftp 默认的命令端口,ftpdata1、ftpdata2、ftpdata3 的配置会在后文介绍

frp 客户端打开命令:frpc -c frpc.ini

步骤五:配置 ftp

首先要讲一下 ftp 的两种工作模式

主动模式:也是默认使用的模式

ftp 客户端通过任意非特殊的端口连接入 ftp 服务器的命令端口--21

ftp 客户端通过另外一非特殊端口监听,并通过该端口发送命令给 ftp 服务器,并将该端口号作为数据端口发送给 ftp 服务器

ftp 服务器会反过来连接用户指定的数据端口

但是,ftp 服务器用来连接客户端数据端口的端口并不是固定的,又因为我们通过 frp 做内网穿透需要指定端口,所以无法使用主动模式来使用 ftp

被动模式:为了解决服务器发起到客户端的连接的问题,人们开发出一种不同的 ftp 连接方式,就是被动模式,也叫 PASV,流程如下

ftp 客户端通过任意非特殊端口连接入 ftp 服务器的命令端口--21

服务器监听到由连接命令端口的连接后,会打开另外一非特殊端口作为数据端口,并将端口号发送给客户端

客服端拿到端口号后,开启另一非特殊端口连接服务器该端口,并传输数据

ps:非特殊端口一般指大于 1024 的端口

由于 ftp 默认使用主动模式 ,所以我们要打开被动模式

首先查看树莓派 ftp 服务所使用的配置文件,这里使用 ps -ef | grep ftp 命令

610 x 70

使用管理员方式修改该文件 sudo vim /etc/vsftpd.conf

增加以下配置:

同时修改

其中,pasv_min_port 和 paxv_max_port 表示使用 10020-10022 端口作为数据端口,所以我们需要使用 frp 将 10020~10022 端口开放

pasv_address 是服务器 ip 地址,我使用的是 ipv4 地址,所以将 listen 修改为 YES,注释掉 listen_ipv6

保存配置文件后,重启 ftp

最后:现在可以使用 ftp 工具连接树莓派了

733 x 553

1187 x 895

我这里使用的是 xftp,注意:要改为被动模式连接

733 x 553

1187 x 895

其他:开机自启与后台运行

以上操作后,每次使用 ftp 都需要先连接到树莓派,然后再打开 ftp,有时把不能即时连接到树莓派,所以开机自启是非常有必要的

创建以下文件:

sudo vim /lib/systemd/system/frpc.service

内容:

733 x 221

747 x 225

保存后,启动 ftp 并设置开机启动

sudo systemctl enable frpc

sudo systemctl start frpc

sudo systemctl status frpc

733 x 182

944 x 235

服务器也可使用相同配置,不过我一般习惯后台运行并输出日志

在 frp 软件目录下

nohup ./frps -c frps.ini > /root/app/frp/frp_0.34.3_linux_386/log 2>&1 &

以上命令会后台运行 frps 并记录日志

树莓派挂载移动硬盘或 U 盘

可以参考树莓派实验室- 给树莓派挂载移动硬盘或 U 盘

我没有试过,因为我没有别的存储设备了 →_→

后记:

网速好慢。。。

树莓派

frp

内网穿透

FTP

moyv 3 年前

北京 位置

1 回帖

713

30

159

73

73

17

5

348

1 回帖

在公司使用家里树莓派的 ftp 服务

请输入回帖内容...

nn200433 • 3 年前

订阅者

支持者

勇士

云服务器小水管当然慢了,大水管又买不起。所以动态域名代理是个好东西,让运营商给你开公网 ip,买个域名吧

相关帖子

Windows 上搭建 Apache FtpServer

(转载)Windows 上搭建 Apache FtpServer 因工作需要,最近经常接触到 FTP,今天我来介绍一个开源的 FTP 服务器,那就是 Apache FTPServer,Apache FTPServer 是一个 100%纯 Java 的 FTP 服务器。 它的设计是基于现有的开放式协议的完整和便携式 FT ..

77

2 年前

Apache FtpServer 实现文件的上传和下载

Apache FtpServer 实现文件的上传和下载 1 下载需要的 jar 包 Ftp 服务器实现文件的上传和下载,主要依赖 jar 包为: [图片] 2 搭建 ftp 服务器 参考 Windows 上搭建 Apache FtpServer,搭建 ftp 服务器 3 主要代码 在 eclipse 中实现 ftp 的 ..

115

2 年前

封装 ftp-spring-boot-starter 并实现文件上传

[图片] 1 准备 FTP 服务器,匿名 or 用户名/密码均可 2 封装 ftp-spring-boot-starter 2.1 配置类 FtpProperties.java package com.coctrl.ftp.configuration; import org.springframework.boot.c ..

232

3 年前

centos 常用命令 - 连接 ftp

1.安装 yum install lftp -y 2.连接 ftp lftp -p 21 [链接]ip 3.常用命令 cd #切换 FTP 目录 lcd #切换本地目录 ls #列出 FTP 目录文件 !ls #列出本地目录文件 find ./ -name file #查找文件 mv #移动 rm #删除 mkdir ..

1.8K

3 年前

centos 软件安装 -ftp

1、安装并启动 FTP 服务 1.1 安装 VSFTPD 使用 yum 安装 vsftpd yum install -y vsftpd 1.2 启动 VSFTPD 安装完成后,启动 FTP 服务: service vsftpd start 2、配置 FTP 权限 2.1 了解 VSFTP 配置 vsftpd 的配置目录 ..

102

3 年前

win10 搭建 FTP 服务器,实现局域网内上传下载文件

[图片] 启动 IIS 服务和 FTP 服务器 首先打开控制面板,点击程序。 [图片] [图片] 按图中所示勾选选项,然后点击确定。 [图片] 通过 IIS 搭建 FTP 站点 在搜索框里搜索 IIS,出现下图所示: [图片] 点击进入,添加 FTP 站点。 [图片] 站点名字自己定义,然后选择一个文件夹,作为 FTP ..

1.5K

4 年前

java 监听 ftp 服务器上的文件夹

java 怎么监听远程 ftp 服务器上的具体的一个文件夹,当文件夹中有文件新增的时候,执行一个函数?用的 springboot 框架。是和监听本地文件夹一样的吗?我现在是本地文件夹。 [图片] [图片]

20

5 年前

moyv

北京

回帖

0

帖子

3

积分

461

聊天

关注

材料清单: 步骤一: 步骤二:挂载硬盘 步骤三:云服务器安装 frp 工具 步骤四:树莓派安装 frp 工具 步骤五:配置 ftp 最后:现在可以使用 ftp 工具连接树莓派了 树莓派挂载移动硬盘或 U 盘 后记:

北京 API 关于 数据统计 靠爱发电 思源笔记会员

© 2024 链滴

记录生活,连接点滴

滇ICP备14007358号-5 • Sym v3.6.4

相关文章