首页 > 技术文章 > centos7安装ftp

likecoke 2021-04-20 13:50 原文

1、安装vsftp

yum install -y vsftpd

2、设置开机自启并启动服务

systemctl enable vsftpd.service

systemctl start vsftpd.service

(vsftpd安装后默认开启了匿名FTP的功能,使用匿名FTP,用户无需输入用户名密码即可登录FTP服务器,但没有权限修改或上传文件。用户如果试图使用Linux操作系统中的账号登录服务器,将会被vsftpd拒绝,但可以在vsftpd里配置用户账号和密码登录。)

可以看到使用匿名就可以访问到

 

 

 

3、下面将创建ftp用户,关闭匿名访问

useradd ftpadmin

passwd ftpadmin

输入密码

回车

确认密码

回车

 

创建文件夹

mkdir -pv /data/ftp_data

修改属组

 chown -R ftpadmin:ftpadmin /data/ftp_data

4、修改配置文件,没有该内容则添加

vim /etc/vsftpd/vsftpd.conf

 

anonymous_enable=NO #不允许匿名登录FTP服务器

local_enable=YES #允许本地用户登录FTP服务器

local_root=/data/ftp_data #FTP本地用户使用的文件目录

#设置以下参数,限制用户只能访问自身的主目录。

chroot_local_user=YES                      #所有用户都被限制在其主目录

chroot_list_enable=YES                     #启用例外用户名单

chroot_list_file=/etc/vsftpd/chroot_list   #例外用户名单

allow_writeable_chroot=YES

 

 

 

 

 

 

5、创建文件

“/etc/vsftpd/”目录下创建“chroot_list”文件

touch /etc/vsftpd/chroot_list

chroot_list文件是限制在主目录下的例外用户名单。如果需要设置某个用户不受只可以访问其主目录的限制,可将对应的用户名写入该文件。如果没有例外也必须要有“chroot_list”文件,内容可为空。

6、重启服务

systemctl restart vsftpd.service

输入用户和密码即可

 

 

 

7、如果有多个用户的话,则新建多个用户。

例如:我想再开个xixi用户

useradd xixi

passwd xixi

输入密码

回车

确认密码

回车

然后访问ftp

 

 

 

登录成功后,发现无法上传文件夹,只能查看,因为权限问题,将/data/ftp_data修改为777即可

chmod 777 /data/ftp_data

发现已可以上传删除文件夹

8、但还有一个小问题,就是你xixi用户创建的文件夹只能xixi用户具有删除和重命名的权限,其他用户是没有的,就是说哪个用户创建的只能哪个用户具有管理员权限,如果你想其他用户也具有管理员权限,那么你就将这个用户创建的文件夹的权限修改为777

例如:我ftpadmin用户想要删除xixi用户创建的文件夹

chmod 777 /data/ftp_data/xixi

现在我登录ftpadmin用户,就可以删除掉xixi用户创建的文件夹了

(我使用的useradd这个办法比较笨,你也可以使用虚拟用户来实现多用户)

 

 

有对象 还八个 我就是能吹 哎 我就是玩

嘻嘻

 

夏天的样子是可乐雪碧里冒出的气泡

路边的啤酒和烧烤

三五朋友在谈笑

西瓜棒冰还有

你~

 

推荐阅读