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) 的相关文章

  • 批量删除文件名中包含 BASH 中特殊字符的子字符串

    我的目录中有一个文件列表 opencv calib3d so2410 so opencv contrib so2410 so opencv core so2410 so opencv features2d so2410 so opencv
  • 仅使用containerd(不使用Docker)修剪容器镜像

    如果我刚刚containerd安装在 Linux 系统上 即 Docker 是not安装 如何删除未使用的容器映像以节省磁盘空间 Docker 就是这么方便docker system prune https docs docker com
  • Google BQ:运行参数化查询,其中参数变量是 BQ 表目标

    我正在尝试从 Linux 命令行为 BQ 表目标运行 SQL 此 SQL 脚本将用于多个日期 客户端和 BQ 表目标 因此这需要在我的 BQ API 命令行调用中使用参数 标志 parameter 现在 我已经点击此链接来了解参数化查询 h
  • 在 .gitconfig 中隐藏 GitHub 令牌

    我想将所有点文件存储在 GitHub 上 包括 gitconfig 这需要我将 GitHub 令牌隐藏在 gitconfig 中 为此 我有一个 gitconfig hidden token 文件 这是我打算编辑并放在隐藏令牌的 git 下
  • 如何使用 Cloud Init 挂载未格式化的 EBS 卷

    Context 我正在使用https wiki jenkins io display JENKINS Amazon EC2 Plugin https wiki jenkins io display JENKINS Amazon EC2 Pl
  • linux-x64 二进制文件无法在 linuxmusl-x64 平台上使用错误

    我正在安装Sharp用于使用 package json 的 Nodejs 项目的 docker 映像上的映像压缩包 当我创建容器时 我收到有关 Sharp 包的以下错误 app node modules sharp lib libvips
  • 执行“minikube start”命令时出现问题

    malik malik minikube start minikube v1 12 0 on Ubuntu 18 04 Using the docker driver based on existing profile Starting c
  • 使用循环在 C 中管道传输两个或多个 shell 命令

    我正在尝试执行ls wc l通过 C 语言程序 而不是使用命令行 这是我当前的工作代码 int main int pfds 2 pipe pfds pid t pid fork if pid 0 The child process clos
  • 如何获取 (Linux) 机器的 IP 地址?

    这个问题和之前问的几乎一样如何获取本地计算机的IP地址 https stackoverflow com questions 122208 get the ip address of local computer 问题 但是我需要找到一个的I
  • 并行运行 shell 脚本

    我有一个 shell 脚本 打乱大型文本文件 600 万行和 6 列 根据第一列对文件进行排序 输出 1000 个文件 所以伪代码看起来像这样 file1 sh bin bash for i in seq 1 1000 do Generat
  • 如何让R使用所有处理器?

    我有一台运行 Windows XP 的四核笔记本电脑 但查看任务管理器 R 似乎一次只使用一个处理器 如何让 R 使用全部四个处理器并加速我的 R 程序 我有一个基本系统 我使用它在 for 循环上并行化我的程序 一旦您了解需要做什么 此方
  • 在 Mono 上运行 .Net MVC5 应用程序

    我正在 Windows 上的 Visual Studio 2013 中开发 Net 4 5 1 MVC5 应用程序 现在我想知道 是否可以在Linux Ubuntu 12 04 上运行这个应用程序 可以使用OWIN吗 Owin 可以自托管运
  • 从 Xlib 转换为 xcb

    我目前正在将我的一个应用程序从 Xlib 移植到 libxcb 但在查找有关我有时使用的 XInput2 扩展的信息时遇到了一些麻烦 libxcb 中有 XInput2 实现吗 如果是的话 在哪里可以找到文档 目前我在使用此功能时遇到问题
  • 错误:“rjags”的包或命名空间加载失败

    在终端的 conda 环境之一中 我能够成功安装包 rjags 但是 当我在该环境中运行 R 并运行库 rjags 时 出现以下错误 加载所需的包 coda 错误 rjags 的包或命名空间加载失败 rjags 的 loadNamespac
  • 如何查找哪个 Yocto 项目配方填充图像根文件系统上的特定文件

    我经常与 Yocto 项目合作 一个常见的挑战是确定文件为何 或来自什么配方 包含在 rootfs 中 这有望从构建系统的环境 日志和元数据中得出 理想情况下 一组命令将允许将文件链接回源 即配方 我通常的策略是对元数据执行搜索 例如gre
  • 绕过 dev/urandom|random 进行测试

    我想编写一个功能测试用例 用已知的随机数值来测试程序 我已经在单元测试期间用模拟对其进行了测试 但我也希望用于功能测试 当然不是全部 最简单的方法是什么 dev urandom仅覆盖一个进程 有没有办法做类似的事情chroot对于单个文件并
  • 如何在 *nix 中登录时运行脚本?

    我知道我曾经知道如何做到这一点 但是 如何在 unix 中登录时运行脚本 bash 可以 From 维基百科 Bash http en wikipedia org wiki Bash 28Unix shell 29 当 Bash 启动时 它
  • 使用 gdb 调试 Linux 内核模块

    我想知道 API 在内核模块 中返回什么 从几种形式可以知道 这并不是那么简单 我们需要加载符号表来调试内核模块 所以我所做的就是 1 尝试找到内核模块的 text bss和 data段地址 2 在 gdb 中使用 add symbol f
  • Linux/POSIX:为什么 fork() 不分叉*所有*线程

    众所周知 POSIX下创建新进程的默认方式是使用fork 在 Linux 下 这在内部映射到clone 我想知道的是 众所周知 当一个人打电话时fork 子进程是用单个线程创建的 调用的线程fork cf https linux die n
  • cdc_acm:无法设置 dtr/rts - 无法与 USB cdc 设备通信

    我试图使用 pic24fj128gb206 枚举 usb cdc 设备 设备似乎已正确枚举 但是当我将设备连接到 Linux PC 时 我从内核收到以下警告消息 cdc acm 1 8 1 6 7 1 0 failed to set dtr

随机推荐

  • 正割函数(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