CentOS中TFTP配置

摘要:
修改文件/etc/xinetd.d/tftp,主要是设置TFTP服务器的根目录,开启服务。或者执行命令system-config-securitylevel打开“安全级别配置”对话框,将SELinux选项中“强制”改为“允许”。或者使用setup命令,将SELinux设置为DISABLE。

转载:http://www.centoscn.com/image-text/config/2013/1105/2062.html

TFTP是用来下载远程文件的最简单网络协议,它其于UDP协议而实现

1.安装软件

yum install tftp* 安装好tftp-server包, 需要把/etc/xinetd.d/tftp文件做一下几个修改。

2.修改启动配置文件
不管使用的是哪一种super-server,inetd或者xinetd,默认情况下TFTP服务是禁用的,所以要修改文件来开启服务。修改文件/etc/xinetd.d/tftp,主要是设置TFTP服务器的根目录,开启服务。

修改后的配置文件如下:

service tftp
{
       disable =no
       socket_type             =dgram
       protocol                =udp
       wait                    =yes
       user                    =root
       server                  = /usr/sbin/in.tftpd
       server_args             = -u root -s /tftpboot -c #指定tftp服务器的目录,-c为指定为可以创建文件
       per_source              = 11
       cps                     = 100 2
       flags                   =IPv4
}

3.创建tftp根目录,关闭防火墙,启动tftp-server

#mkdir -m 777 /tftpboot

#/etc/init.d/iptables stop //关闭防火墙

#service xinetd restart //重启 xinetd 服务重启xinetd服务,因为TFTP服务受控与xinetd, xinetd是管服务的服务,它是不开端口的。

验证一下TFTP是否起来了:

[root@kashu /]# netstat -tunap | grep :69

出现下面的信息代表已经启动了

udp 0 0 0.0.0.0:69 0.0.0.0:* 1258/xinetd

4.tftp的使用

#tftp 192.168.2.105 登陆到tftp server

>get filename 从tftp server根目录获取文件

>put filename 上传文件到tftp server根目录

>q 离开


安装过程中出现的问题及原因

问题一

tftp> get <filename>

Transfer timed out.

原因:

tftpd服务没有启动

解决:

#service xinetd status 先查看tftp运行状态,如果是没开启服务,再执行如下语句

#service xinetd start

问题二

tftp> put <filename>

Error code 0: Permission denied

原因:

运行命令,查看系统日志

#tail /var/log/messages

发现有如下一段文字:

Mar 24 19:05:26 localhost setroubleshoot: SELinux is preventing /usr/sbin/in.tftpd (tftpd_t) "write" to tftpboot (tftpdir_t). For complete SELinux messages. run sealert -l 40a5a6bf-8ded-4bfa-ab6e-fa669a25fc6c
知道这是是由SELinux造成的,在FC3和FC3以后的FC版本中SELinux默认的都是开启的,现关掉它。

解决:

修改文件 /etc/sysconfig/selinux,设定其中的SELINUX=disabled,然后重启电脑即可。或者执行命令 system-config-securitylevel 打开“安全级别配置”对话框,将SELinux(S)选项中“强制”改为“允许”。或者使用setup命令,将SELinux设置为DISABLE。

问题三

tftp> put <filename>

Error code 1: File not found
原因:

指定的文件不存在;

解决:

/etc/xinetd.d/tftp中的server_args指定的目录中没有该文件,将要下载的文件拷贝到该目录即可,或server_args不是默认的/tftpboot,而是自己设定,但是在后面没有指定-c选项,补上即可。

问题四

tftp> get test.log

Error code 2: Only absolute filenames allowed

原因:

在/etc/xinetd.d/tftpd中设置的server_args为/etc/default/tftpd-hpa

cat /etc/default/tftpd-hpa

#Defaults for tftpd-hpa

RUN_DAEMON="no"

OPTIONS="-s /home/tftpd -c -p -U 077 -u tftpd"

设置的时候只要将server_args=改为你自己设定的服务器文件夹就行了

免责声明:文章转载自《CentOS中TFTP配置》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇selenium select下拉选择框定位处理的两种方式几篇关于MySQL数据同步到Elasticsearch的文章---第一篇:Debezium实现Mysql到Elasticsearch高效实时同步下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

CentOS 修改主机名

最新文章:Virson's Blog 1.临时修改主机名 地址:http://www.cnblogs.com/mawanglin2008/p/3530790.html 显示主机名: oracle@localhost:~$ hostname localhost 修改主机名: oracle@localhost:~$ sudo hostname orcl1 o...

centos下面配置key登录

centos下需要配置使用key登录,并且要禁止root登录 下面的操作都是用root来设置的 1.添加新用户 例如用户名leisiyuan useradd leisiyuan 2.设置密码 passwd leisyuan 3.给新用户添加到root权限组 运行visudo命令,找到root ALL=(ALL) ALL,在下面添加一行 ,然后保存即可 le...

在VMware上安装CentOS -7步骤详解

在VMware上安装CentOS -7一、下载好VMware虚拟机   二、准备好CentOS的镜像文件   在这里安装之前博主都已准备好了。 废话就少啰嗦啦!现在开始安装步骤了 1、首先打开VMware创建新的虚拟机 2、选择自定义(高级)后按下一步 3、继续按下一步   4、选择稍后安装操作系统(S),下一步   5、选择客户机操作系统为Linux,...

Centos7 升级python3,解决升级后不兼容问题

  2017年09月05日 21:16:39阅读数:2274 转载来自:http://www.jianshu.com/p/a538125371d4   Centos7 安装python3详细教程,解决升级后不兼容问题 作者 单单丹丹  2017.06.04 21:52* 字数 940 一、确实当前python版本 [root@cent...

CentOS 7 修改设置静态IP和DNS

用虚拟机装了个CentOS,使用的NAT的网络模式,采用的是动态ip,所以ip经常莫名其妙的就变了。 如果只用putty这类工具还好,只需要改一下ip地址就可以了。但在项目中,很多地方,都需要指定虚拟机的ip地址。这样一来,当ip发生改变后,项目中需要改变的地方非常之多,如配置文件、redis、数据库、solr等,非常非常麻烦。 为了防止再次启动系统的时候...

centos 安装 apache2.4

1. centos 安装 apache2.4 安装基础依赖:# yum install gcc gcc-c++ glibc glibc-devel gd gd-devel zlib zlib-devel libtool-ltdl-devel flex autoconf automakeapache 需要依赖apr 和 apr-util、apr-iconv、...