tftp+Filezilla文件双向传输(1)-centos(VMware)-win10(host)

2023-11-15

目录

1.下载安装vsftpd+tftp+tftp-server

2.配置服务 

2.1  配置服务  修改文件 /etc/vsftpd.conf 

2.2  配置服务 守护进程 /etc/xinetd.d/tftp 

2.3 配置服务 tftp服务器 

2.4 配置登录用户

 2.4.1 修改selinux

2.4.2 匿名用户登录

2.4.3 新建账户,不能登陆系统,只能登陆ftp

2.4.4修改配置文件

​2.4.5 修改完配置文件重启ftp服务

2.4.6验证匿名登陆状况

 2.4.7 测试用户登录状况

3.本地验证


TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。端口号为69。

ftpd-hpa是tftp服务器

tftp-hpa是tftp客服端

inetd的全称是extended internet daemon,xinetd是新一代的网络守护进程服务程序,又叫超级Internet服务器,提供类似于inetd+tcp_wrapper的功能。

与ubuntu 的区别:
1.centos 上 需要添加防火墙放行。
2.配置文件:

          

centos

ubuntu

vsftpd 配置:

配置:
/etc/vsftpd.conf

xinetd守护进程

配置:/etc/xinetd.d/tftp

配置:
/etc/xinetd.d/tftp

tftp客户端  程序安装在/bin目录下。
tftp服务器端

目录:
/usr/lib/systemd/system

文件:
tftp.service

tftp.socket

配置:

/etc/default/tftpd-hpa

/sbin/usr/sbin目录下均多了一个服务端程序文件in.tftpd。这两个文件的MD5值是一样的。

用户权限(匿名

+指定用户)

防火墙设置

      centos 上 安装完后,在/sbin/usr/sbin目录下均多了一个服务端程序文件in.tftpd
    

# which in.tftpd
/sbin/in.tftpd
# ls /usr/sbin | grep tftp
in.tftpd

  

1.下载安装vsftpd+tftp+tftp-server

 
下载:

FileZilla - The free FTP solution

 

#1.下载安装服务 vsftpd
yum install -y vsftpd
# 配置服务  vsftpd   /etc/vsftpd.conf
 
local_enable=YES
write_enable=YES
 
#重启+查看
systemctl restart vsftpd.service
ps -ef|grep vsftpd

#开放端口

firewall-cmd --zone=public --add-port=21/tcp --permanent #开放21端口
firewall-cmd --reload                                    #重新加载防火墙配置
firewall-cmd --zone=public --list-ports                  #查看防火墙端口开放状况

 
#2. 下载安装 客户端tftp,服务器端tftpd-server, 守护进程xinetd
yum install tftp tftpd-server
yum install xinetd
 

# 3.配置  客户端+服务器端参数  /sbin  /usr/sbin  多了一个服务端程序文件in.tftpd
    在 /usr/lib/systemd/system 多了2个文件 tftp.service tftp.socket




# 4.配置 开启 客户端+服务器端  tftp    /etc/xinetd.d/tftp
# 在linux下,不管使用的是哪一种super-server,inetd或者xinetd,默认情况下TFTP服务是禁用的,所以要修改文件来开启服务。
 
service tftp
{
        socket_type    = dgram
        protocol       = udp
        wait           = yes
        user           = root
        server         = /usr/sbin/in.tftpd
        server_args    = -s /home/test/tftpboot
        disable        = no
        per_source     = 11
        cps            = 100 2
        flags          = IPv4
}
# tftp的目录文件
   server_args    = -s /home/test/tftpboot
 
#3.

 
#重启tftpd服务
 
Systemctl start tftp
/etc/init.d/vsftpd restart


2.配置服务
 

2.1  配置服务  修改文件 /etc/vsftpd.conf
 

## 以下两行如果注释的话,打开注释
local_enable=YES
write_enable=YES

2.2  配置服务 守护进程 /etc/xinetd.d/tftp
 

service tftp  
{  
    socket_type     = dgram                        #socket的链接类型是dgram(UDP)
    protocol        = udp                          #UDP协议
    wait            = yes                          #等待到启动完成
    user            = root                         #指定root用户启动服务进程
    server          = /usr/sbin/in.tftpd           #指定服务进程是/usr/sbin/in.tftpd
    server_args     = -s /home/tang/tftp -c        #指定传给该进程的参数
    disable         = no                           #no表示启动TFTP服务器
    per_source      = 11                           #表示每一个ip地址上最多可以建立的实例数目
    cps             = 100 2                        #每秒100个入站链接,超过限制,等待2秒
    flags           = IPv4                         #允许IPV4连接
}

2.3 配置服务 tftp服务器 

 

使用yum安装完tftp服务端程序后,在/usr/lib/systemd/system目录下多了两个文件,tftp.servicetftp.socket,他们是tftp服务端的配置文件

# pwd
/usr/lib/systemd/system

# cat tftp.service 
[Unit]
Description=Tftp Server
Requires=tftp.socket
Documentation=man:in.tftpd

[Service]
ExecStart=/usr/sbin/in.tftpd -c -p -s /var/lib/tftpboot
StandardInput=socket

[Install]
Also=tftp.socket

# cat tftp.socket 
[Unit]
Description=Tftp Server Activation Socket

[Socket]
ListenDatagram=69

[Install]
WantedBy=sockets.target

2.4 配置登录用户
 

 2.4.1 修改selinux

默认情况下,CentOS 的FTP 是不允许实体账号登录取得用户主目录数据的,这是因为 SELinux 的问题。

getsebool -a | grep ftp #查看有关selinux的策略

setsebool -P tftphome_dir=1 #修改规则

 

2.4.2匿名用户登录
 

 用ftp客户端匿名链接测试:

设置:"主动"
输入:anonymous
成功后 :显示pub这个文件夹。

 

2.4.3新建账户,不能登陆系统,只能登陆ftp

useradd tangftp -s /sbin/nologin
passwd  tangftp

#创建一个目录 /home/ftp
#增加用户rootftp,并设置密码
useradd -d /home/ftp rootftp 
passwd rootftp

2.4.4修改配置文件
 

/etc/vsftpd/vsftpd.conf

anonymous_enable=YES 改为NO 



2.4.5 修改完配置文件重启ftp服务

systemctl restart vsftpd.service #重启服务
ps -ef | grep vsftpd #查看进程

2.4.6验证匿名登陆状况

 
2.4.7 测试用户登录状况

 


3.本地验证
 

本地测试:
在/tftpboot目录创建一个 ser.txt 文件,供客户端下载;
在/home/samba/(或其他任意目录都行) 创建cli.txt,用于上传到tftp服务器 ;
在/home/samba/执行tftp客户端,下载 ser.txt,上传cli.txt


touch /home/tang/tftpboot/ser.txt
touch /home/tang/cli.txt
tftp 127.0.0.1
tftp> get ser.txt
tftp> put cli.txt
tftp> q










 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

tftp+Filezilla文件双向传输(1)-centos(VMware)-win10(host) 的相关文章

  • Unix 中的访问时间是多少

    我想知道访问时间是多少 我在网上搜索但得到了相同的定义 读 被改变 我知道与touch我们可以改变它 谁能用一个例子来解释一下它是如何改变的 有没有办法在unix中获取创建日期 时间 stat结构 The stat 2 结构跟踪所有文件日期
  • 如何使用 nohup 获取正在运行的程序列表

    我正在通过 SSH 连接访问运行 CentOS linux 发行版 的服务器 由于我无法始终保持登录状态 因此我使用 nohup command 来运行我的程序 我找不到如何获取我开始使用 nohup 的所有程序的列表 工作 只有在我注销之
  • grep 彩色线条

    我编写了一个简单的 PHP shell 脚本 它解析文件并输出某些元素 它产生大量的输出 采用不同的 bash 颜色 绿色表示正常 黄色表示警告 红色表示错误等 在开发过程中我想过滤掉一些行 例如 所有包含红色文本的行 我可以使用grep
  • Linux 中的 Windows NAmed Pipes 替代品

    我们正在将现有的 Windows 代码移植到 Linux 我们使用 ACE 作为抽象层 我们使用 Windows 命名管道与多个客户端进行通信并执行重叠操作 linux 下这个相当于什么 我检查了linux命名管道 FIFO 但它们似乎只支
  • 打印 STDOUT/STDERR 并将它们写入 Bash 中的文件?

    有没有办法让 Bash 将 STDOUT STDERR 重定向到文件 但仍然将它们打印到终端 这会将 STDOUT 和 STDERR 重定向到同一个文件 some command 2 gt 1 tee file log Example to
  • 错误:libXext.so.6:无法打开共享对象文件:没有这样的文件或目录[重复]

    这个问题在这里已经有答案了 运行尝试打开 ods 文件的 java 文件时出现以下错误 线程 main 中出现异常 java lang UnsatisfiedLinkError opt software jdk1 6 0 45 jre li
  • Linux 上的“软/硬 nofile”是什么意思

    当我尝试在RedHat EL5上安装软件时 我得到了错误 软 硬nofile的期望值是4096 而默认值是1024 我设法增加了这个数字 但我不知道参数是什么 他们指的是软链接和硬链接吗 我改变的方法是 a 修改 etc security
  • 为什么我的代码在编译用于分析 (-pg) 时在多线程下运行比在单线程下运行慢?

    我正在写一个光线追踪器 最近 我在程序中添加了线程 以利用 i5 四核上的附加内核 奇怪的是 应用程序的调试版本现在运行速度变慢 但优化后的构建运行速度比添加线程之前更快 我将 g pg 标志传递给 gcc 以进行调试构建 并将 O3 标志
  • Flex 的远程版本误解了我的规则

    我使用 flex 和 bison 编写了一个小汇编程序 可以在我的机器 ubuntu 10 10 上构建并运行正常 现在其他人正在尝试在 arch linux 上构建它 并且他们安装的 flex 产生了不同的 lex yy c 这是不匹配的
  • sudo pip install python-Levenshtein 失败,错误代码 1

    我正在尝试在 Linux 上安装 python Levenshtein 库 但每当我尝试通过以下方式安装它时 sudo pip install python Levenshtein 我收到此错误 命令 usr bin python c 导入
  • ARM 的内核 Oops 页面错误错误代码

    Oops 之后的错误代码给出了有关 ARM EX 中的恐慌的信息 Oops 17 1 PREEMPT SMP在这种情况下 17 给出了信息 在 x86 中它代表 bit 0 0 no page found 1 protection faul
  • 在 CentOS 中安装 PHP Zip 扩展

    我正在尝试在 CentOS 中安装 PHP Zip 扩展 我的服务器没有外部互联网访问权限 所以我自己从 PECL 下载了它 http pecl php net package zip http pecl php net package z
  • 在bash中用其他文件过滤一个文件

    我有一个带有数字的文件 例如 cat file 31038467 32048169 33058564 34088662 35093964 31018168 31138061 31208369 31538163 31798862 和其他例如
  • 如果目录不存在,有没有办法让 mv 创建要移动到的目录?

    因此 如果我在主目录中并且想将 foo c 移动到 bar baz foo c 但这些目录不存在 是否有某种方法可以自动创建这些目录 以便你只需要输入 mv foo c bar baz 一切都会顺利吗 似乎您可以将 mv 别名为一个简单的
  • 在Linux中将日期附加到文件名

    我想在文件名旁边添加日期 somefile txt 例如 somefile 25 11 2009 txt 或 somefile 25Nov2009 txt 或任何类似的内容 也许脚本或终端窗口中的某些命令可以执行 我正在使用Linux Ub
  • 早于 0.4.12 的 Node.js 无法在 AWS EC2 上正常工作。为什么?

    我无法在 AWS EC2 Ubuntu 或 CentOs 没关系 上安装 node js v0 6 1 安装后我输入node 处理器负载达到100 但 v0 4 12 工作正常 可能只有我有这个问题 那不好意思了 请告诉我我做错了什么 提前
  • 有没有办法只安装mysql客户端(Linux)? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有没有不需要安装整个mysql db安装包的Linux mysql命令行工具 我想做的是从服务器 1 应用程序服务器 执行将在服务器 2
  • 将 bash 脚本作为守护进程运行

    我有一个脚本 它每 X 次运行我的 PHP 脚本 bin bash while true do usr bin php f my script php echo Waiting sleep 3 done 我怎样才能将它作为守护进程启动 要从
  • 如何清理 Runtime.exec() 中使用的用户输入?

    我需要通过命令行调用自定义脚本 这些脚本需要很少的参数并在 Linux 机器上调用 当前版本容易出现各种shell注入 如何清理用户给出的参数 参数包括登录名和路径 Unix 或 Windows 路径 用户应该能够输入任何可能的路径 该路径
  • 为什么 proc/ID/maps 有多个共享库条目

    我正在查看嵌入式Linux下的proc ID maps 我注意到一些共享库在进程的内存映射中出现了几次 为什么会这样呢 40094000 400d9000 r xp 00000000 b3 09 723 system lib libc so

随机推荐

  • 正割函数(sec)

    1 定义 正割与余弦互为倒数 余割与正弦互为倒数 即 sec
  • js获取数组中最大最小值及对应索引值(下标)

    1 使用原生Js实现该功能 主要是通过循环实现 getMaxMin data key gt if data return false let maxIndex 0 let minIndex 0 let maxNum data 0 key 0
  • 蓝桥杯每日一题——填空题·顺子日期

    本题为填空题 只需要算出结果后 在代码中使用输出语句将所填结果输出即可 小明特别喜欢顺子 顺子指的就是连续的三个数字 123 456 等 顺子日期指的就是在日期的 yyyymmdd 表示法中 存在任意连续的三位数是一个顺子的日期 例如 20
  • 惊:FastThreadLocal吞吐量居然是ThreadLocal的3倍!!!

    说明 接着上次手撕面试题ThreadLocal 面试官一听 哎呦不错哦 本文将继续上文的话题 来聊聊FastThreadLocal 目前关于FastThreadLocal的很多文章都有点老有点过时了 本文将澄清几个误区 很多文章关于Fast
  • 读取excel中的url链接下载图片并生成新excel保存图片

    1 在实际使用问卷星对班级的学生的健康码 核算记录 行程码进行统计时 导出的excel里是链接而非图片 但是上级要求上交的excel必须是图片为解决该问题 通过以下的main方法解决了该问题 package com changshin im
  • 'react-scripts' 不是内部或外部命令,也不是可运行的程序 或批处理文件。 error Command failed with exit code 1.aPritice\\JieDe\\e

    本地使用create react app脚手架新建项目 因为下载了其他的包 改了一些文件 可能对这个项目的启动项产生了影响 导致包不全了 运行react项目时 报错 react scripts 不是内部或外部命令 也不是可运行的程序 或批处
  • 论文笔记——HRFormer

    摘要 本文提出了一种高分辨率Transformer HRFomer 它在密集的预测任务中学习高分辨率表示 而原来的Vison Transformer则产生低分辨率表示 具有高内存和计算成本 作者利用了高分辨率卷积网络 HRNet 中引入的多
  • C#基础(字符串拼接)

    字符串拼接方式1 之前的算术运算符 只是用来数值类型变量进行数学运算的 而 string 不存在算术运算符 不能计算 但是可以通过 号来进行字符串拼接 用 号来进行字符串拼接 str str 456 复合运算符 str 1 4 true s
  • 群晖虚拟机部署线上恋爱网站

    文章目录 前言 1 安装网页运行环境 1 1 安装php 1 2 安装webstation 2 下载网页源码文件 2 1 访问网站地址并下载压缩包 2 2 解压并上传至群辉NAS 3 配置webstation 3 1 配置网页服务 3 2
  • 关于电子设计大赛

    一年一度的电子设计大赛选拔赛开始了 作为参加两年的选手还是很有感悟 下面我简单从电赛是什么和经验教训谈论一下 电赛全称全国大学生电子设计大赛 它国赛和省赛交叉进行 是衡量大学生电子设计能力的重要平台 也是用人单位评价别人的基础之一 比赛时间
  • SpringBoot接收前端参数json格式的五种方式

    import java util List import java util Map import org springframework web bind annotation RequestBody import org springf
  • 游戏开发 - 开发流程 - 收集

    1 应用场景 主要用于了解 掌握游戏开发的整个流程 2 学习 操作 1 文档阅读 复习课 带你梳理客户端开发的三个重点 极客时间 2 整理输出 2 1 游戏开发流程 参考 按照游戏开发中的三大模块策划 程序 美术 画了一个图 开发游戏的时候
  • 今天遇到了个问题我本想测试一下Java连接一下redis的,结果。。。。。。

    一开始写好了java程序结果idea连接云服务器上的redis报错 Failed to connect to any host resolved for DNS name 期初我以为是我的Jedis有问题或者是redis conf配置又或者
  • 人工智能数学基础:泰勒(Taylor)公式

    一 引言 对于一些较复杂的函数 为了便于研究 往往希望用一些简单的函数来近似表达 例如 当x gt 0时 sinx arcsinx tanx arctanx ln 1 x ex 1 x 由于用多项式表示的函数 只要对自变量进行有限次加 减
  • STM32发送单极性归零码驱动WS2812(二)

    STM32发送单极性归零码驱动WS2812 二 形容我的心情 二 旧事 重提 时间匆匆过去 也到了该着手准备毕业设计的阶段了 我早早就向老师确定了选题 我想做一个智能灯光控制系统 在灯光选型的问题上 我又想到了几个月前令我头疼好长时间的WS
  • 那些令人惊叹的 HTML、CSS、JavaScript 工具和库

    前端开发很奇妙 它入门很简单 但是想要成为大牛却很难 有太多的事情需要考虑 到处都有需要微调的地方 太多的细节处理才能保证让一切都刚刚好 幸运的是 开发者和设计师一直致力于为我们提供有用的工具和资源 来提高我们的技能 让我们做的更好 所以今
  • Linux安装Phantomjs

    PhantomJS是一个可编程的无头浏览器 无头浏览器 一个完整的浏览器内核 包括js解析引擎 渲染引擎 请求处理等 但是不包括显示和用户交互页面的浏览器 1 页面自动化测试 希望自动的登陆网站并做一些操作然后检查结果是否正常 2 网页监控
  • 机器学习中的流形学习算法 Manifold Learning

    1 流形学习概述 流形学习manifold learning 于2000年在Science杂志上首次提出 是一大类基于流形的框架 是机器学习 模式识别中的一种方法 在维数约简 降维 方面具有广泛的应用 它的主要思想是将高维的数据映射到低维
  • 最新视频/图集去水印/步数/王者战力/红包封面等小程序源码带流量主【源码+教程】

    免服务器域名 已测试 上传即可用带流量主功能 这套源码目前没在网上看到过几次 源码内附带教程 去水印支持快手抖音视频 图集其他平台自测 下载地址 最新视频 图集去水印 步数 王者战力 红包封面等小程序源码带流量主 源码 教程
  • tftp+Filezilla文件双向传输(1)-centos(VMware)-win10(host)

    目录 1 下载安装vsftpd tftp tftp server 2 配置服务 2 1 配置服务 修改文件 etc vsftpd conf 2 2 配置服务 守护进程 etc xinetd d tftp 2 3 配置服务 tftp服务器 2