linux下ftp安装与配置

本文主要讲解centos6.9版本的ftp的安装与配置!

# 使用yum安装

yum -y install vsftpd

linux下ftp安装与配置_第1张图片

如上图,Complete表示安装完成!

 

#配置ftp用户

这里我们需要配置一个帐号为ftpuser的用户用于客户端登录ftp

1.创建用户:

mkdir -p /var/www/ftp (手动创建一个ftp文件目录,可以是任意位置)

useradd -d /var/www/ftp -s /sbin/nologin -M ftpuser

2.设置用户到文件夹

chown -R ftpuser /var/www/ftp

3.设置文件夹权限

     chmod -R 777 /var/www/ftp

4.修改帐号密码

passwd ftpuser

# ftp文件配置

安装完成后,在/etc/vsftpd会有几个对应的文件:

linux下ftp安装与配置_第2张图片

其中:

1.ftpusers:为用户黑名单文件,它不受任何其他配置文件的影响!凡是在此文件中的用户,不可登录!

2.user_list:它也是用户名单配置文件,但是它受vsftpd.conf中的配置影响,可以有效,也可以无效,可以是白名单,也可以是黑名单。

    具体设置如下:

1).当且仅当userlist_enable=YES时:userlist_deny项的配置才有效,user_list文件才会被使用,userlist_deny如果没有,需要手动添加,默认值为YES;当其为NO时,无论userlist_deny项为何值都是无效的,本地全体用户(除去ftpusers中的用户)都可以登入FTP

2).当userlist_enable=YES时,userlist_deny=YES时:user_list是一个黑名单,即:所有出现在名单中的用户都会被拒绝登入;

3).当userlist_enable=YES时,userlist_deny=NO时:user_list是一个白名单,即:只有出现在名单中的用户才会被准许登入(user_list之外的用户都被拒绝登入);

3.vsftpd.conf:为配置文件,当前讲解只需修改如下信息:

    禁止匿名用户anonymous登录:anonymous_enable=NO

    将用户限制在自己的目录下:chroot_local_user=YES

    禁止用户向上级文件夹进行翻阅:chroot_list_enable=NO

    禁止用户文件权限:userlist_enable=NO(如需要白名单,设置userlist_enable=YES, userlist_deny=NO,并在user_list文件中添      加ftpuser用户即可)。

# ftp服务的相关启动操作

1、启动ftp服务   service vsftpd start

2、停止ftp服务   service vsftpd stop

3、重启ftp服务   service vsftpd restart

4、查看ftp服务状态 service vsftpd status

5、设置开机启动     chkconfig vsftpd on

# ftp的连接模式问题

ftp模式分为主动模式(active mode)和被动模式(passive mode),ftp是tcp连接,所以要进行三次握手

主动FTP对FTP服务器的管理有利,但对客户端的管理不利。因为FTP服务器企图与客户端的高位随机端口建立连接,而这个端口很有可能被客户端的防火墙 阻塞掉。

被动FTP对FTP客户端的管理有利,但对服务器端的管理不利。因为客户端要与服务器端建立两个连接,其中一个连到一个高位随机端口,而这个端口 很有可能被服务器端的防火墙阻塞掉。

在此本文只讲解采取被动模式连接的方式:

  1. 修改vsftpd.conf:

pasv_enable=YES

pasv_min_port=3000

pasv_max_port=4000

pasv_enable=YES     被动模式设置

pasv_max_port,pasv_min_port 这两个参数可以设置被动模式下服务端使用的端口范围。

      2.开放ftp相关端口:

首先需开发ftp的默认端口21和对应的日志端口20,在/etc/sysconfig/iptables文件中增加一下2行:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT

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

再有因上面我们开通的是被动模式,且被动模式服务端口使用的端口范围是3000-4000,所以还需要开通3000-4000的端口,在/etc/sysconfig/iptables文件中增加一下1行:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3000:4000 -j ACCEPT

# ftp的http连接

设置端口号为9090,配置nginx如下:

server {

        listen 9090;

        server_name 127.0.0.1;

        location / {

                 root  /var/www/ftp;

                 autoindex on;

        }

 }

linux下ftp安装与配置_第3张图片

访问地址:http://127.0.0.1:9090,即可访问到ftp根目录。

nginx简单安装与配置请看:https://blog.csdn.net/zhaohe0617/article/details/104418224。

你可能感兴趣的:(ftp安装与配置)