前言:日常开发中避免不了文件的上传和下载,ftp服务器基本是项目不可缺少的部分,下面介绍下ftp服务器的搭建过程。
1、查看是否已经安装了vsftpd
rpm -qa |grep vsftpd
2、卸载vsftpd
rpm -e vsftpd
3、安装vsftpd
yum install vsftpd
1、备份vsftp配置文件,方便配置失败后恢复
默认安装的vsftpd 在/etc/文件夹下面,执行命令切换到 vsftpd文件中,备份配置文件
2、输入 vim vsftpd.conf 命令修改配置文件参数
设置成NO之后匿名用户不能访问,用户分为匿名用户、本地用户、虚拟用户三种,具体含义请自行百度,这里不做过多陈述
chroot_list_enable 设置成yes 限制访问自身目录只能访问属于该用户的文件夹
chroot_list_file=/etc/vsftpd/chroot_list 可以访问的用户放在这个里面
从2.3.5之后,vsftpd增加了安全检查,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了!如果检查发现还有写权限,就会报错。
要修复这个错误需要在vsftpd配置文件中增加一行
allow_writeable_chroot=YES
之后wq保存退出即可。
3、重启vsftpd 执行命令 systemctl restart vsftpd
1、useradd -d /home/ftpfile ftpuser 这里/home/ftpfile根据你的情况自已定义路径位置 这个位置就是以后你上传上来文件保存的地方
2、passwd ftpuser
3、设置用户登录方式(只能用ftp方式登录)
usermod -s /sbin/nologin ftpuser
4、修改文件夹权限
切换到 /home文件夹下面 ,为ftpfile文件赋权
chmod -R 777 ftpfile
5、在vsftpd文件夹下新建chroot_list文件 touch chroot_list
编辑文件vim chroot_list
将ftpuser添加进去
wq保存退出即可。
说明:有人分不清linux账号跟ftp账号有啥区别,其实没啥区别,都是一码事,只是ftp账号设置了只能通过ftp方式访问,还有就是指定了所属主目录,这是为了限制ftp用户的活动范围,出于安全等各种考虑。
附上一些用户常用命令:
useradd user:创建Linux系统用户,user是用户名
passwd user:为Linux系统该用户设置密码
完全的删除用户 命令: userdel -r user
重新启动vsftpd systemctl restart vsftpd
设置成开机启动
systemctl enable vsftpd
1、由于是在自己家的电脑上做的安装配置,所有我把防火墙禁用了,根据情况禁用或者配置防火墙开放端口别忘了哈,不然不能正常访问,至于防火墙的端口开放配置我这里就多做陈述了,网上一搜一大堆。如果防火墙关闭还不能访问有可能是selinux的问题,把他关闭掉就好了
不过我没设置selinux,只是把防火墙禁用了就可以正常使用了
2、我这里在win10系统采用filezilla软件进行测试,有需要的自取
百度网盘地址:链接:https://pan.baidu.com/s/11sc0FmEfZ15YmRyK7i_YCg
提取码:uy5m
直接将左边的文件拖拽到右边就可以上传
本文到此结束,亲测可用,如有疑问欢迎讨论!!!