Linux 搭建 FTP 服务器

Linux 搭建 FTP 服务器

vsFTPd(very secure FTP daemon)是一个功能强大的 FTP服 务器,能运行在大部分UNIX 类作系统上,支持很多其他的FTP 服务器不支持的特征:

  • 支持虚拟IP、支持虚拟用户 、可以独立操作(stand-alone)或者由 xinetd 两种模式管理 、 可以对每个用户进行配置 、 带宽限制 、支持IPv6 、支持通过SSL的加密

本文介绍在 CentOS7(Linux)系统下,快速搭建独立守护线程模式(stand-alone)下工作的 FTP 服务器

一、安装软件包

yum install -y vsftpd ftp

安装后默认会创建一个名为 ftp 用户,home目录为: /var/ftp ,默认同时监听IPv6、IPv4,端口 21 , 配置文件目录:/etc/vsftpd

在这里插入图片描述

二、更改配置文件

更改配置文件,使 FTP 服务器的工作在独立守护进程模式下,只需更改 /etc/vsftpd/vsftpd.conf 一个文件即可配置成功,执行如下命令修改:

sed -i 's/^listen=.*$/listen=YES/g' /etc/vsftpd/vsftpd.conf
sed -i 's/^listen_ipv6=.*$/listen_ipv6=NO/g' /etc/vsftpd/vsftpd.conf

在这里插入图片描述

三、启动 FTP 服务器

启动vsftpd服务,并设置其在系统启动时自动启用。

systemctl start  vsftpd
systemctl enable vsftpd

查看 FTP 是否工作。

#查看进程
ps -ef | grep vsftpd
#查看 21 端口
netstat -ntlp | grep 21

在这里插入图片描述

如果没有对应信息,则再启动一次

sudo service vsftpd start

四、配置文件内容说明

为更好配置自己的 FTP 服务器,下面介绍 FTP 服务器在独立守护进程模式下配置文件内容,文件路径 /etc/vsftpd,一共三个文件

  • vsftpd.conf:vsFTPd的主配置文件

    anonymous_enable=YES      #允许匿名登录
    local_enable=YES          #允许本地用户登录
    write_enable=YES          #开放本地用户的写权限
    local_umask=022           #指定目录和文件被创建时得到的初始权限
    dirmessage_enable=YES     #当切换目录时,显示该目录的信息。
    xferlog_enable=YES        #记录ftp上传下载的日志记录
    connect_from_port_20=YES  #指定是否支持PORT模式
    xferlog_std_format=YES    #传输日志文件将以标准格式写入
    listen=NO                 #是否使用IPv4的stand-alone模式
    listen_ipv6=YES           #是否同时监听IPv6跟IPv4,不能跟listen同时打开
    pam_service_name=vsftpd   #指定vsftpd将使用的PAM服务的名称
    userlist_enable=YES       #从userlist_file给出的文件名加载用户名列表
    
    userlist_enable=YES
    #用法:YES/NO 默认为YES
    #若是启动此功能,则会读取/etc/vsftpd.user_list 当中的使用者名称,只有出现在文件中的用户名才能登录ftp。此项功能可以在询问密码前就出现失败讯息,而不需要检验密码的程序
    
    userlist_deny=NO
    #用法:YES/NO  默认为NO
    #这个选项只有在userlist_enable 启动时才会被检验如果将这个选项设为YES,则在 /etc/vsftpd.user_list 中的使用者将无法登入。若设为NO , 则只有在/etc/vsftpd.user_list 中的使用者才能登入。此项功能可以在询问密码前就出现错误讯息,而不需要检验密码的程序
    
    #对于后两个参数的联合用法总结如下:
    #1.限制指定的本地用户不能访问,而其它本地用户可以访问
    # userlist_enable= YES
    # userlist_deny= YES
    # userlist_file= /etc/vsftpd.user_list
    
    #2. 限制指定的本地用户可以访问,而其它本地用户不可以访问
    # userlist_enable= YES
    # userlist_deny= NO
    # userlist_file= /etc/vsftpd.user_list
    
  • ftpusers : vsFTPd的访问控制

    无论何时都禁止该文件中的本地用户访问服务器。如果用户名在这个 /etc/vsftpd.ftpusers 列表中,它就不能通过网络进行FTP登录。

  • user_list: 允许/禁止用户列表

在默认情况下,FTP 服务器允许:

  1. 能进入登录用户的Home目录
  2. 能切换到其他可访问的用户
  3. 可访问,可下载
  4. 可上传,可创建目录
  5. 可匿名登录,默认目录为用户ftp的home目录
  6. 所有Linux用户都可以访问

五、FTP 常见命令详解

参考文章:
FTP 常见命令详解

  • 8
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值