tftp 服务部署

news/2024/10/21 6:18:05/

这个服务挺简单的,但是今天用到了,还是写一下把

简单文件传输协议(Trivial File Transfer Protocol,TFTP)是一种基于 UDP 协议在客户端
和服务器之间进行简单文件传输的协议。顾名思义,它提供不复杂、开销不大的文件传输服
务(可将其当作 FTP 协议的简化版本)。
TFTP 的命令功能不如 FTP 服务强大,甚至不能遍历目录,在安全性方面也弱于 FTP
服务。而且,由于 TFTP 在传输文件时采用的是 UDP 协议,占用的端口号为 69,因此
文件的传输过程也不像 FTP 协议那样可靠。但是,因为 TFTP 不需要客户端的权限认证,
也就减少了无谓的系统和网络带宽消耗,因此在传输琐碎(trivial)不大的文件时,效率
更高。

TFTP 服务是使用 xinetd 服务程序来管理的。xinetd 服务可以用来管理
多种轻量级的网络服务,而且具有强大的日志功能。简单来说,在安装 TFTP 软件包后,还需
要在 xinetd 服务程序中将其开启,把默认的禁用(disable)参数修改为 no:

  1. 安装tftp

    yum install tftp-server tftp xinetd 
    
    # 检查一下包是否安装
    [root@localhost ~]# rpm -qa|grep tftp
    tftp-5.2-22.el7.x86_64
    tftp-server-5.2-22.el7.x86_64
    [root@localhost ~]# rpm -qa|grep xinetd
    xinetd-2.3.15-14.el7.x86_64
    
  • tftp-server 服务端
  • tftp 客户端
  • xinetd 用来管理TFTP 的程序
  1. 编辑 /etc/xinetd.d/tftp

    service tftp
    {socket_type             = dgramprotocol                = udpwait                    = yesuser                    = rootserver                  = /usr/sbin/in.tftpdserver_args             = -s /var/lib/tftpboot -c   disable                 = no 	per_source              = 11cps                     = 100 2flags                   = IPv4
    }
    
  • disable = no 启用tftp服务器
  • server_args = -s /var/lib/tftpboot -c /var/lib/tftpboot 默认的存储位置,可以修改, -c 加上-c参数可以上传文件,不然就无法上传

重启xinetd服务

[root@localhost ~]# systemctl restart xinetd
[root@localhost ~]# systemctl enable xinetd

tftp使用udp 69端口,需要开放端口,或者关闭防火墙

  1. 测试
    tftp默认文件路径在/var/lib/tftpboot/
    在服务端生成文件
    [root@localhost ~]# echo "success" > /var/lib/tftpboot/test.txt
    

在客户端下载测试

[root@localhost ~]# tftp 192.168.92.80
tftp> get test.txt
tftp> q
[root@localhost ~]# cat test.txt 
success

192.168.92.80 是服务端的IP

在客户端上传测试

[root@localhost ~]# ll
total 8
-rw-------. 1 root root 1357 Apr 28 10:41 anaconda-ks.cfg
-rw-r--r--. 1 root root    8 May  7 09:31 test.txt
[root@localhost ~]# tftp 192.168.92.80
tftp> put test.txt
Error code 0: Permission denied
[root@localhost ~]# tftp 192.168.92.80
tftp> put anaconda-ks.cfg
Error code 0: Permission denied
[root@localhost ~]# chmod 777 anaconda-ks.cfg 
[root@localhost ~]# tftp 192.168.92.80
tftp> put anaconda-ks.cfg
Error code 0: Permission denied
[root@localhost ~]# ls
anaconda-ks.cfg  test.txt
[root@localhost ~]# tftp 192.168.92.80
tftp> put anaconda-ks.cfg

在上面报了一个权限错误 Error code 0: Permission denied,解决办法将 服务端 执行:
chmod 777 /var/lib/tftpboot


http://www.ppmy.cn/news/1458710.html

相关文章

【Redis7】10大数据类型之Set类型

文章目录 1.Set类型2.常用命令:3.示例3.1 SADD,SMEMBERS和SISMEMBER3.2 SREM和SCARD3.3 SRANDMEMBER和SPOP3.4 SMOVE 4.集合运算相关命令4.1 集合交集 (SINTER)4.2 集合并集 (SUNION)4.3 集合差集 (SDIFF)4.4 Redis7新命令sintercard 1.Set类型 Redis的Set类型是一…

如何使用ArcGIS Pro进行选房分析

无论是研究城市规划布局还是寻找理想的住房,都需要综合考虑购物、医疗、教育和休闲等多方面因素,此时我们的GIS软件就可以派上用场了,这里为大家介绍一下如何使用 ArcGIS Pro 进行选房分析,希望能对你有所帮助。 数据来源 教程所…

【Java】还不会数组?一文万字全搞定

前言:前面两章我们详细讲解了Java基本程序设计结构中的基本知识,,包括:一个简单的Java应用,注释,数据类型,变量与常量,运算符,字符串,输入输出,控…

1707jsp电影视频网站系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 JSP 校园商城派送系统 是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统采用web模式,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数…

SQL注入基础-5

一、Access注入 1、asp网站常用数据库:access,mssql 2、access数据库 (1)没有库,没有端口 (2)结构:表--》字段--》数据 3、注入流程: 判断类型判断表名:遍历、爆破判断列名判断列名下的数据长度查出数…

MySQL-数据结构(索引)选择的合理性

MySQL衡量查询效率的标准就是磁盘IO次数(对索引的使用效率至关重要)加速查找速度的数据结构,基本分为以下两类: 树,增删改查的平均时间复杂度都是O(log2N)哈希(hash),增删改查的平均…

HFSS学习-day2-T形波导的优化设计

入门实例–T形波导的内场分析和优化设计 HFSS--此实例优化设计 优化设计要求1. 定义输出变量Power31、Power21、和Power11,表示Port3、Port2、Port1的输出功率2.参数扫描分析添加扫描变量和输出变量进行一个小设置添加输出变量进行扫描分析 3. 优化设计&#xff0c…

多线程学习D10 收尾了应该

线程安全集合类概述 重点介绍java.util.concurrent.* 下的线程安全集合类,可以发现它们有规律,里面包含三类关键词:Blocking、CopyOnWrite、Concurrent Blocking 大部分实现基于锁,并提供用来阻塞的方法 CopyOnWrite 之类容器修改…