FTP文件传输实验操作文档
实验目标
将A服务器上的文件通过FTP传输到B服务器,并从B服务器上传文件到A服务器。
环境准备
两台CentOS 7服务器
- A服务器IP:192.168.3.11
- B服务器IP:192.168.3.12
步骤
A服务器配置FTP服务器
-
安装vsftpd
sudo yum -y install vsftpd
-
编辑vsftpd配置文件
sudo vi /etc/vsftpd/vsftpd.conf
确保以下配置项已设置:
anonymous_enable=YES local_enable=YES local_umask=022 anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES
-
重启vsftpd服务
sudo systemctl restart vsftpd
-
设置FTP目录权限
sudo chmod 777 /var/ftp
-
创建测试文件并移动到FTP目录
echo 1 > 1.txt sudo mv 1.txt /var/ftp/
B服务器安装FTP客户端
-
安装FTP客户端
sudo yum -y install ftp
从A服务器下载文件到B服务器
-
连接到A服务器的FTP
ftp 192.168.3.11
-
登录匿名FTP
在提示符下输入
ftp
作为用户名,并按回车。Name (192.168.3.11:root): ftp 331 Please specify the password. Password:
在密码提示符下直接按回车。
-
列出文件并下载文件
ftp> ls ftp> get 1.txt
-
退出FTP会话
ftp> exit
-
验证文件
ls cat 1.txt
从B服务器上传文件到A服务器
-
在B服务器上创建一个测试文件
echo "This is a test file for upload." > upload.txt
-
使用FTP连接到A服务器
ftp 192.168.3.11
-
登录匿名FTP
在提示符下输入
ftp
作为用户名,并按回车。Name (192.168.3.11:root): ftp 331 Please specify the password. Password:
在密码提示符下直接按回车。
-
上传文件
ftp> put upload.txt
-
退出FTP会话
ftp> exit
-
验证文件上传
登录到A服务器,检查文件是否成功上传到
/var/ftp
目录下:ls /var/ftp/ cat /var/ftp/upload.txt
完整操作日志
A服务器操作日志
[root@localhost ~]# yum -y install vsftpd
[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf
[root@localhost ~]# systemctl restart vsftpd
[root@localhost ~]# chmod 777 /var/ftp
[root@localhost ~]# echo 1 > 1.txt
[root@localhost ~]# mv 1.txt /var/ftp/
[root@localhost ~]# ls /var/ftp/
1.txt pub
B服务器操作日志
[root@localhost ~]# yum -y install ftp
[root@localhost ~]# echo "This is a test file for upload." > upload.txt
[root@localhost ~]# ftp 192.168.3.11
Connected to 192.168.3.11 (192.168.3.11).
220 (vsFTPd 3.0.2)
Name (192.168.3.11:root): ftp
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (192,168,3,11,181,128).
150 Here comes the directory listing.
-rw-r--r-- 1 0 0 2 Jun 28 05:51 1.txt
drwxr-xr-x 2 0 0 6 Jun 09 2021 pub
226 Directory send OK.
ftp> get 1.txt
local: 1.txt remote: 1.txt
227 Entering Passive Mode (192,168,3,11,52,34).
150 Opening BINARY mode data connection for 1.txt (2 bytes).
226 Transfer complete.
2 bytes received in 2.9e-05 secs (68.97 Kbytes/sec)
ftp> put upload.txt
local: upload.txt remote: upload.txt
227 Entering Passive Mode (192,168,3,11,245,23).
150 Ok to send data.
226 Transfer complete.
ftp> exit
221 Goodbye.
[root@localhost ~]# ls
1.txt anaconda-ks.cfg docker_24.0.1 kejilion.sh upload.txt xnty.sh
[root@localhost ~]# cat 1.txt
1
[root@localhost ~]# cat upload.txt
This is a test file for upload.
A服务器验证文件上传
[root@localhost ~]# ls /var/ftp/
1.txt pub upload.txt
[root@localhost ~]# cat /var/ftp/upload.txt
This is a test file for upload.
总结
通过上述步骤,成功实现了文件从A服务器传输到B服务器以及从B服务器上传到A服务器的操作。这验证了FTP服务器的正常运行和文件传输功能。