Linux 下搭建文件服务器 ---Vsftpd
1:
检查本机是否装有vsftpd
rpm -qa | grep vsftpd
如果有则卸载
2.安装vsftpd
rpm install vsftpd
3.创建文件服务器的存放文件(ftpfile)
一定要将这个文件创建在根目录或者是 home 目录,否则可能会出现403 forbidden问题
然后将这个文件的权限交给一个新建的用户
useradd ftpuser -g ftpuser
chown -R ftpuser.ftpuser ftpfile -s nologin
4.添加文件服务器文件的用户
cd /etc/vsftpd
在该目录下创建chown_list 文件
在文件中加入刚才给文件服务器分配的用户(ftpuser)
在文件中写入 ftpuser 保存退出即可
5.配置vsftpd
vim vsftpd.conf
6.为我们的文件服务器设置虚拟域名(域名设置详情我的域名设置文章)
如:我们将入一个图片服务器的地址
本机ip image.XXX.com
7、修改selinux中有关ftp的配置:
配置/etc/selinux /config
将文件的第一个参数设置为disabled
执行如下命令也可以
getsebool -a | grep ftp
setsebool -P ftp_home_dir on
getsebool -a | grep ftp
setsebool -P ftp_home_dir on
一定要确保/etc/selinux /config文件的第一个参数为disabled
然后重启selinux服务
service iptables restart
8.
在防火墙中放行21号端口。
然后重启
9.重启vsftpd服务
service vsftpd restart
10:在浏览器中访问我们设置的image.XXX.com(切记一定要在nginx/conf/vhost中配置image.XXX.com.conf文件是域名指到我们的文件服务器的目录)
看是否可以访问到ftpfile中的文件
本人遇到的问题
访问image.XXX.com出现nginx 403
但是在image.XXX.com/image.jpg 可以访问到图片
那是怎么回事呢?
解决办法:
1.打开在nginx的vhost文件中配置的image.XXX.com的配置文件,该文件一定要以.conf结尾
2.打开image.XXX.com.conf文件。查看root指向的文件目录是否为我们新建的文件服务器的文件目录
3.一定要将这个文件服务器文件创建在根目录或者是 home 目录,否则可能会出现403 forbidden问题,
并且将该文件赋予给ftpuser权限chown -R ftpuser.ftpuser ftpfile -s nologin