Linux中Centos7系统搭建FTP服务详细过程

1. FTP服务简介

1.1 FTP服务的作用

用来传输文件的协议,FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:”下载”(Download)和”上传”(Upload)。

1.2 FTP服务使用的端口

FTP服务器默认使用TCP协议的20、21端口与客户端进行通信
20端口用于建立数据连接,并传输文件数据
21端口用于建立控制连接,并传输FTP控制命令

1.3 FTP服务数据连接方式

FTP数据连接分为主动模式和被动模式
主动模式:服务器主动发起数据连接
被动模式:服务器被动等待数据连接

1.4 搭建FTP服务大概步骤(命令部分)

  1. 安装vsftpd服务
yum install -y vsftpd					#安装vsftpd服务
cd /etc/vsftpd/							#切换到vsftpd目录
cp vsftpd.conf vsftpd.conf.bak			#对原文件进行复制作为备份
  1. 设置匿名用户访问的FTP服务(最大权限)
vim /etc/vsftpd/vsftpd.conf			#修改配置文件

anonymous_enable=YES				#开启匿名用户访问。默认已开启
write_enable=YES					#开放服务器的写权限(若要上传,必须开启)。默认已开启
anon_umask=022						#设置匿名用户所上传数据的权限掩码(反掩码),需手动添加
anon_upload_enable=YES				#允许匿名用户.上传文件。默认已注释,需取消注释
anon_mkdir_write_enable=YES			#允许匿名用户创建(上传)目录。默认已注释,需取消注释
anon_other_write_enable=YES			#允许删除、重命名、覆盖等操作。需添加
  1. 设置pub子目录权限和开启/关闭相关服务
 chmod 777 /var/ftp/pub/
[root@cheng0307 ~]# systemctl start vsftpd
[root@cheng0307 ~]# systemctl stop firewalld.service 
[root@cheng0307 ~]# setenforce 0
  1. 匿名访问测试
Windows系统打开cmd命令提示符
#建立ftp连接
ftp 192.168.80.77
匿名访问,用户名为ftp,密码为空,直接回车即可完成登录
ftp> pwd .
#匿名访问ftp的根目录为Linux系统的/var/ftp/目录
ftp> ls					#查看当前目录
ftp> cd pub				#切换到pub目录
ftp> get文件名			#下载文件到当前Windows本地目录
ftp> put文件名			#_上传文件到ftp目录
ftp> quit				#退出

5.设置本地用户验证访问发图片,并禁止切换到ftp以外的目录(默认登录的根目录为本地用户的家目录)

vim /etcvsftpd/vsftpd.conf				#修改配置文件

local_enable=YES						#启用本地用户
anonymous_enable=no						#关闭匿名用户访问
write_enable=YES						#开放服务器的写权限(若要上传,必须开启)
local_umask=077							#可设置仅宿主用户拥有被上传的文件的权限(反掩码)
chroot_local_user=YES					#将访问禁锢在用户的宿主目录中
allow_writeable_chroot=yes				#允许被限制的用户主目录具有写权限
  1. 重启服务
systemctl restart vsftpd
  1. 用户访问测试
创建用户zhangsan 
useradd zhangsan
passwd zhangsan
  1. 可设置白名单
vim /etc/vsftpd/vsftpd.conf 		    #修改配置文件
userlist_enable=YES						#启动user_list用户列表文件
userlist_deny=NO						#设置白名单,仅允许user_list用户列表文件的用户访问,默认为yes,为黑名单,禁用

vim /etc/vsftpd/user_list 				#修改白名单,将允许访问的用户名添加到末尾即可

1.5 实验:搭建FTP服务详细步骤

  1. 安装vsftpd服务
    在这里插入图片描述

  2. 设置匿名用户访问的FTP服务(最大权限)
    在这里插入图片描述

  3. 设置pub子目录权限和开启/关闭相关服务在这里插入图片描述

  4. 匿名访问测试windows系统打卡命令提示符。
    在这里插入图片描述

  5. 设置本地用户验证访问发图片,并禁止切换到ftp以外的目录(默认登录的根目录为本地用户的家目录),修改以下配置:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  6. 重启服务
    在这里插入图片描述

  7. 用户访问测试
    在这里插入图片描述
    在这里插入图片描述

  8. 设置访问白名单(配置完记得重启服务)
    在这里插入图片描述
    在这里插入图片描述

  9. 测试白名单
    在这里插入图片描述

### 回答1: CentOS 7.9搭建FTP服务器的步骤如下: 1. 首先,确保已经安装了vsftpd软件包。可以通过以下命令来安装:`sudo yum install vsftpd`。 2. 安装完成后,启动vsftpd服务。使用以下命令启动服务:`sudo systemctl start vsftpd`。 3. 接下来,设置vsftpd服务开机自启动。使用以下命令来设置:`sudo systemctl enable vsftpd`。 4. 默认情况下,匿名用户是不允许访问FTP服务器的。如果需要允许匿名用户访问,可以编辑vsftpd的配置文件`/etc/vsftpd/vsftpd.conf`,并找到配置项`anonymous_enable`,将其设置为`YES`。 5. 配置本地用户的访问权限。在vsftpd的配置文件,可以通过添加以下配置来设置本地用户的访问权限: ``` userlist_enable=YES userlist_file=/etc/vsftpd/user_list userlist_deny=NO ``` 然后,创建`/etc/vsftpd/user_list`文件,并在文件添加允许访问FTP服务器的本地用户的用户名。 6. 设置FTP服务器的根目录。默认情况下,FTP用户的根目录位于`/var/ftp`目录下。如果需要修改根目录,可以编辑vsftpd的配置文件,并找到配置项`local_root`,将其设置为所需的目录。 7. 最后,重启vsftpd服务以应用配置的更改。使用以下命令来重启服务:`sudo systemctl restart vsftpd`。 完成上述步骤后,CentOS 7.9上的FTP服务器即搭建完成。您可以使用FTP客户端来连接并访问该服务器,具体的连接配置取决于您使用的FTP客户端。 ### 回答2: CentOS 7.9 系统可以使用 vsftpd(Very Secure FTP Daemon)来搭建 FTP 服务器。下面是基本的步骤: 1. 使用管理员身份登录到 CentOS 7.9 服务器。 2. 打开终端,并使用以下命令安装 vsftpd: ``` sudo yum install vsftpd ``` 3. 安装完成后,使用以下命令启动 vsftpd 服务,并设置开机自启动: ``` sudo systemctl start vsftpd sudo systemctl enable vsftpd ``` 4. 接下来,需要配置 vsftpd。使用以下命令编辑配置文件: ``` sudo vi /etc/vsftpd/vsftpd.conf ``` 在文件,你可以根据需要进行以下设置: - 禁用匿名用户:将 `anonymous_enable=YES` 修改为 `anonymous_enable=NO`。 - 启用本地用户登录:取消注释(删除行首的 `#`)`local_enable=YES`。 - 允许本地用户上传文件:取消注释(删除行首的 `#`)`write_enable=YES`。 你还可以根据需要进行其他设置,然后保存并关闭文件。 5. 在防火墙打开 FTP 服务器的端口。默认情况下,FTP 使用的端口是 20 和 21。你可以使用以下命令做出相应修改: ``` sudo firewall-cmd --zone=public --add-service=ftp --permanent sudo firewall-cmd --reload ``` 6. 接下来,你需要允许本地用户登录 FTP 服务器并设置其访问目录权限。使用以下命令添加用户: ``` sudo useradd ftpuser ``` 使用以下命令设置用户的密码: ``` sudo passwd ftpuser ``` 使用以下命令将用户的主目录设置为 FTP 目录: ``` sudo usermod -d /var/ftp ftpuser ``` 7. 最后,重新启动 vsftpd 服务以应用配置: ``` sudo systemctl restart vsftpd ``` 现在,你的 CentOS 7.9 服务器已经成功搭建FTP 服务器。通过使用 FTP 客户端工具,你可以使用添加的用户名和密码进行连接,并访问指定的 FTP 目录。 ### 回答3: 搭建FTP服务器可以实现网络文件传输和共享,CentOS 7.9是一种常用的Linux操作系统,以下是关于如何在CentOS 7.9上搭建FTP服务器的步骤: 1. 首先,使用root权限登录到CentOS 7.9服务器。 2. 安装vsftpd软件包,vsftpd是一种常用的FTP服务器软件。在终端使用以下命令进行安装:yum install vsftpd -y 3. 安装完毕后,启动vsftpd服务并将其设置为开机自启动:systemctl start vsftpd && systemctl enable vsftpd 4. 默认情况下,vsftpd的配置文件位于/etc/vsftpd/vsftpd.conf。使用文本编辑器(如vi或nano)打开此文件:vi /etc/vsftpd/vsftpd.conf 5. 根据需要进行配置更改。一些常见的配置选项包括:启用匿名访问(anonymous_enable=YES)、禁止匿名用户上传(write_enable=NO)、添加本地用户访问(local_enable=YES)等。根据需要调整这些选项。 6. 保存并关闭配置文件后,重新启动vsftpd服务以使更改生效:systemctl restart vsftpd 7. 防火墙可能会阻止FTP访问。如果需要,可以使用firewalld或iptables等工具配置防火墙规则,允许FTP流量通过。 8. 检查FTP服务器的工作情况。您可以通过在Web浏览器输入“ftp://your_server_ip”访问FTP服务器。使用服务器的IP地址来替换“your_server_ip”。 9. 如果需要,您可以进一步调整FTP服务器的相关配置,如限制用户的访问路径、设置访问权限和配额等。 通过以上步骤,您应该能够在CentOS 7.9上成功搭建FTP服务器。根据需要,您可以对FTP服务器进行进一步的配置和定制化。
评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码海小虾米_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值