FTP客户端lftp

目录

准备

1 lftp介绍

2 lftp语法

3 lftp选项

4 下载

 4.1 服务端

 4.2 客户端

5 上传

5.1 客户端

 5.2 服务端


准备

两台虚拟机(且保证互通)关闭防火墙和SeLinux。

关闭防火墙

systemctl stop firewalld

关闭SeLinux 

setenforce 0
vi /etc/sysconfig/selinux

修改为:SELINUX=disabled

FTP客户端lftp_第1张图片

一台服务端,一台客户端。

本人IP地址:服务端 192.168.10.113

                     客户端 192.168.10.114

保证互通可以使用其中一台虚拟机ping另一台虚拟机的IP地址】

ping+(另一台虚拟机IP地址)

FTP客户端lftp_第2张图片

显示如图所示内容,即表示可以互通。(用Ctrl键+c可以终止)

1 lftp介绍

lftp是一款高效的文件传输工具,支持FTP、SFTP、HTTP、HTTPS、HFTP、FISH、SMB、IMAP、POP3和FTP over HTTP等多种协议。它结合了FTP客户端和命令行工具的优点,支持多线程下载、断点续传、自动重试等功能。lftp还具有复制、移动、删除、重命名、压缩和解压缩等文件操作功能,支持批处理和脚本,可用于自动化文件传输任务。同时,lftp还支持远程目录同步,能够将本地目录与远程目录进行同步操作。lftp是一款功能强大、易于使用的文件传输工具,适用于各种操作系统平台。

lftp支持tab自动补全,进步的命令双击tab键,就可以看到可能的选项了。

2 lftp语法

lftp(选项)(参数)

3 lftp选项

-f: 指定lftp指令要执行的脚本文件。

-c:执行指定的命令后退出。

--help: 显示帮助信息。

--version: 显示指令的版本号。

4 下载

 4.1 服务端

下载安装vsftp服务

yum -y install vsftpd

FTP客户端lftp_第3张图片

启动服务

systemctl start vsftpd

 进入/var/ftp/目录

cd /var/ftp/

ls命令查看下 

FTP客户端lftp_第4张图片

创建test目录 

mkdir test

 进入test目录创建haha文件。

cd test/
touch haha

 授权

chmod 777 haha

FTP客户端lftp_第5张图片

 4.2 客户端

yum -y install lftp

FTP客户端lftp_第6张图片

lftp + (服务端IP地址)

ls命令查看

进入test下

cd test/

【问题解决】 

cd: Access failed: 550 Failed to change directory. (/pub/test)

原因:没有关闭selinux或者权限未打开。

下载文件

ls命令查看,发现有haha文件,使用get命令下载。

get haha

 使用exit命令退出。

exit

 FTP客户端lftp_第7张图片

ls命令查看

这样就成功在客户端下载了haha文件。 

【如果想指定到哪个目录下,就使用 -o参数】注意是小o。

例如下载到/tmp目录下。

get haha -o /tmp

下载目录

mirror test/

FTP客户端lftp_第8张图片

(子目录也会自动下载)

FTP客户端lftp_第9张图片

5 上传

5.1 客户端

 先创建一个1的文件

touch 1

使用put命令上传

put 1

【问题解决】

原因:

(1)没有关闭SeLinux

(2)linux默认安装vsftp服务之后只允许匿名用户的访问和下载,不支持上传。

解决方法:

进入服务端

修改文件vsftpd.conf

vi /etc/vsftpd/vsftpd.conf

进入后会发现很多注释(带#的),需要修改如下内容,但是很麻烦,建议直接全部删除,直接输入如下内容。

write_enable=YES
 
anon_umask=022
anonymous_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
 
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
 
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

编辑完成后保存退出,重新启动vsftp服务。

systemctl restart vsftpd

如果没有成功,使用下面方法。

getsebool -a | grep ftp

setsebool -P allow_ftpd_anon_write on  

setsebool -P allow_ftpd_full_access on 

好了,现在可以上传文件啦~

 5.2 服务端

ls命令查看即可

你可能感兴趣的:(CentOS,centos,服务器)