nginx+vsftpd搭建图片服务器

首先我们需要安装nginx,详细步骤。https://blog.csdn.net/BushQiang/article/details/82852411

1.使用yum安装vsftpd

 yum -y install vsftpd

2.添加一个ftp用户,并设置密码,输入两次一样的密码

useradd ftpuser
passwd ftpuser

使用该用户登录后,默认的路径为 /home/ftpuser

3.防火墙开启21端口,ftp的默认端口是21

 vim /etc/sysconfig/iptables

添加一行

-A INPUT -p tcp -m tcp --dport 21 -j ACCEPT

重启防火墙

 service iptables restart

4.修改selinux

查询selinux策略

 getsebool -a | grep ftp

allow_ftpd_anon_write --> off
allow_ftpd_full_access --> off
allow_ftpd_use_cifs --> off
allow_ftpd_use_nfs --> off
ftp_home_dir --> off
ftpd_connect_db --> off
ftpd_use_passive_mode --> off
httpd_enable_ftp_server --> off
tftp_anon_write --> off

allow_ftpd_anon_write :关闭这个布尔变量会阻止 vsftpd 读取 public_content_rw_t 类型的文件和目录。如果允许用户通过 FTP 上传文件。必须开放这个布尔变量。
allow_ftpd_full_access:当开放这个布尔变量时只有 Linux(DAC)的权限来控制访问,通过验证的用户可以读取和写入标记为 public_content_t 或 public_content_rw_t 类型的文件。
allow_ftpd_use_cif:当开放这个布尔变量时 vsftpd 允许 cifs_t 类型的文件和目录,因此这个布尔变量启用,可以让你的 FTP 服务器可以使用 Samba 文件系统。
allow_ftpd_use_nfs vsftpd:的当开放这个布尔变量时 vsftpd 允许 nfs_t 类型的文件和目录,因此这个布尔变量启用,可以让你的 FTP 服务器可以使用 NFS 文件系统。
ftp_home_dir:当开放这个布尔变量时认证用户可以读写自己的主目录中的文件。
ftpd_connect_db:当开放这个布尔变量时允许 vsftpd 连接数据库。
httpd_enable_ftp_server:当开放这个布尔变量时容许的 httpd 作为 FTP 服务器,并且监听 FTP 端口。
tftp_anon_write:当开放这个布尔变量时允许 TFTP 访问一个公共的目录。

如果要外网访问,需要把allow_ftpd_full_access和ftp_home_dir变成on

setsebool -P allow_ftpd_full_access on
setsebool -P ftp_home_dir on
或者
cd var/ftp
setsebool allow_ftpd_full_access 1
setsebool ftp_home_dir 1

启动的时间比较久

然后再使用 getsebool -a | grep ftp命令查看是否变成on

5.ftp关闭匿名访问,这样就需要用账号密码才能登陆,改为NO

vim /etc/vsftpd/vsftpd.conf

6.重启ftp服务

 service vsftpd restart

7.开启被动模式

vim /etc/vsftpd/vsftpd.conf

默认是开启的,但是要指定一个端口范围,打开vsftpd.conf文件,在后面加上

pasv_min_port=30000

pasv_max_port=30999

表示端口范围为30000~30999,这个可以随意改。改完重启一下vsftpd

由于指定这段端口范围,iptables也要相应的开启这个范围,所以像上面那样打开iptables文件。

 vim /etc/sysconfig/iptables

也是在21上下面另起一行,更那行差不多,只是把21 改为30000:30999,然后:wq保存,重启下iptables。这样就搞定了。

这样vsftpd就配置好了,我们要在nginx的conf配置文件里面指向ftp的路径,才能访问里面的图片

8.nginx指向ftp路径

 vim /usr/local/nginx/conf/nginx.conf

修改框框的内容,然后在ftpuser下面创建www文件夹,把www的文件夹权限改成777,在www下创建images,修改权限为777

上传一张图片试试

访问成功

猜你喜欢

转载自blog.csdn.net/BushQiang/article/details/82868367
今日推荐