ARM Linux如何配置TFTP服务器?

安装TFTP服务

  1. 更新系统

    sudo apt update && sudo apt upgrade -y
  2. 安装必要组件

    sudo apt install tftpd-hpa tftp-hpa -y  # tftpd-hpa是服务端,tftp-hpa是客户端

配置TFTP服务器

  1. 创建共享目录并授权

    sudo mkdir -p /srv/tftp
    sudo chmod 777 /srv/tftp  # 开放读写权限
  2. 修改配置文件
    编辑配置文件:

    sudo nano /etc/default/tftpd-hpa

    修改为以下内容:

    TFTP_USERNAME="tftp"
    TFTP_DIRECTORY="/srv/tftp"  # 指定共享目录
    TFTP_ADDRESS=":69"
    TFTP_OPTIONS="--secure --create"  # 允许文件创建
  3. 重启服务生效

    sudo systemctl restart tftpd-hpa
    sudo systemctl enable tftpd-hpa  # 设置开机自启

防火墙设置(如启用)

sudo ufw allow 69/udp  # 开放UDP 69端口
sudo ufw reload

客户端测试传输

  1. 本地测试(服务端同机操作)

    echo "Hello TFTP" > /srv/tftp/test.txt  # 创建测试文件
    tftp localhost  # 连接本机服务
    tftp> get test.txt  # 下载文件
    tftp> put upload.txt  # 上传文件(需先创建)
    tftp> quit
  2. 跨设备测试(从另一台Linux设备)

    tftp <服务器IP>
    tftp> get test.txt

常见问题排查

  • 错误 “Access violation”
    检查目录权限:sudo chmod -R 777 /srv/tftp

  • 错误 “File not found”
    确认文件路径在/srv/tftp内,且文件名大小写匹配

  • 服务启动失败
    检查日志:journalctl -u tftpd-hpa -b

安全注意事项

  1. 仅限内网使用:TFTP无加密传输,避免在公网使用
  2. 最小权限原则:定期清理/srv/tftp无用文件
  3. IP白名单限制(高级):
    编辑/etc/default/tftpd-hpa,在TFTP_OPTIONS中添加:
    --address 192.168.1.100:69 # 限制监听IP

引用说明:本文配置基于Debian/Ubuntu ARM系统,参考官方文档TFTP-HPA及Linux Man Pages,其他发行版需调整包管理命令(如RPM系使用yum install tftp-server),测试设备为Raspberry Pi 4B(ARMv8)。

最终效果

  • 服务端运行状态:systemctl status tftpd-hpa 显示 active (running)
  • 传输验证:在/srv/tftp目录可见上传/下载的文件,客户端无报错即成功。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6409.html

(0)
酷番叔酷番叔
上一篇 2025年7月6日 07:46
下一篇 2025年7月6日 07:56

相关推荐

  • linux如何创建系统用户名和密码错误

    Linux 中创建系统用户名和密码,可使用命令“sudo user

    2025年8月18日
    12200
  • linux如何创建交换分区

    Linux 系统中,可通过分区工具创建分区,将其格式化为 swap 分区,然后使用 m

    2025年8月16日
    12700
  • Linux系统中,如何查看网络端口占用情况及对应的占用进程?

    在Linux系统中,查看网络端口占用情况是系统管理和故障排查中的核心技能,无论是服务启动失败、端口冲突还是安全审计,都需要准确掌握端口的使用状态,本文将详细介绍Linux中查看网络端口占用的三大主流命令——netstat、ss和lsof,通过具体示例和对比分析,帮助用户在不同场景下高效完成端口查询任务,使用ne……

    2025年8月22日
    12500
  • 如何在Linux系统中获取年月日?命令方法详解

    在Linux系统中,获取年月日信息是日常运维和脚本开发中的常见需求,可通过多种方式实现,涵盖命令行工具、Shell脚本及系统接口等,以下是详细方法和示例,命令行工具直接获取date命令(最常用)date是Linux系统时间管理的核心命令,支持通过格式化参数提取年月日,常用格式化符号包括:%Y:四位年份(如202……

    2025年10月5日
    6900
  • 如何30秒优化bash脚本效率?

    在Linux脚本编程中,sleep命令是一个基础但至关重要的工具,用于在脚本执行过程中添加时间延迟,它通过暂停脚本运行指定的时间长度,帮助控制任务节奏、协调进程或处理定时任务,下面从语法、用法到实际案例全面解析其使用,sleep命令的核心作用延迟执行:暂停脚本运行,避免资源冲突(如文件读写竞争),定时任务:配合……

    2025年7月28日
    15000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信