zoukankan      html  css  js  c++  java
  • 【第2期】vsftpd的安装与使用

    1、为什么要使用ftp工具

       作为服务器后台开发人员而言,服务器为什么要安装ftp工具这个问题,相信都有自己的理解和体会。在实际应用中,服务器一旦安装投入使用后,常常是放置在机房中,一般情况下,开发人员不会直接进入机房进行开发工作或软件维护工作。此时,为服务器安装ftp工具变得如此重要。它方便技术人员在远程操作服务器时,为服务器上传需要的文件或从服务器中下载文件到本地中。因此,在服务器架构方面,ftp工具常常是装机必备的一个工具。


    2、vsftpd简介

        vsftpd是Linux下一个常用的ftp工具。在RH的Linux版本中,作为ftp工具vsftpd不是系统自带标配安装的。也就是说,我们需要自己安装ftp工具。

        vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开发源代码的ftp服务器软件,支持很多其他的 FTP 服务器所不支持的特征。比如:非常高的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟用户、支持IPv6、速率高等。【以上定义摘自 百度百科】

        vsftpd的优点有很多,以至于它成为Linux服务器中比较常用的ftp工具之一。有关这方面的说明有很多,有兴趣的可以直接查看【百度百科】的描述,这里我就不再赘述了。


     3、vsftpd的安装

        vsftpd在安装使用之前,我们还是无法通过远程机器使用ftp命令的方式去连接服务器,从而做上传或下载文件的操作(当然,ftp工具都还没有安装呢)。

        我首先在网上找到了可用的ftp安装包:vsftpd-2.0.5-16.el5_4.1.i386.rpm。下面给出下载的链接地址!

        http://download.csdn.net/detail/libear218/3046262

        我在虚拟机中创建一个根目录下的software目录,专门放置了软件安装包(使用root用户,父目录为根目录 / )

        

        通过虚拟机直接将ftp安装包放进服务器中。

        

        以root用户查看vsftpd是否已安装:rpm -qa | grep vsftpd(由下图可知,vsftpd目前还没有安装)

        

        以root用户安装vsftpd:rpm -ivh /software/vsftpd-2.0.5-16.el5_4.1.i386.rpm

        

        以root用户检查vsftpd安装情况:rpm -qa | grep vsftpd(显示安装的内容,说明vsftpd已经安装了)

        


    4、vsftpd的配置    

        当安装好vsftpd之后,现在我们还无法正常的使用vsftpd,原因有两个:

    1、vsftpd未配置(或未个性化配置)

    2、vsftpd未启动

        接下来,我们需要对vsftpd进行配置。在vsftpd中,主配置文件为vsftpd.conf。下面,对vsftpd的配置文件作简单介绍。

    1、 /etc/vsftpd/vsftpd.conf  主配置文件

    2、 /etc/vsftpd/ftpusers  禁止访问vsftpd服务器的用户列表文件。顾名思义,你想禁止哪个用户使用ftp的方式登录,写在这里即可

    3、 /etc/vsftpd/user_list  根据主配置vsftpd.conf,许可或禁止访问服务器的用户列表文件。也就是说,它即可作为许可名单,也可作为禁止名单,具体视vsftpd.conf内设参数而定

    4、 /var/ftp  匿名用户登录时,默认目录

        下面,对主配置文件的主要参数做简单介绍。

    anonymous_enable  指定是否允许匿名登录,默认为YES

    local_enable  指定是否允许本地用户登录,默认为YESwrite_enable 指定是否开放写权限,默认为YES

    local_umask  指定文件创建的初始权限掩码值

    dirmessage_enable  指定是否能浏览目录内的信息

    userlist_enable  指定是否启用user_list文件,如果为YES,则文件user_list表示许可,若为NO,则文件user_list表示禁止

    idle_session_timeout  指定用户会话空闲多少时间(单位为秒)后自动断开

    data_connection_timeout  指定数据连接空闲多少时间(单位为秒)后自动断开

    ascii_upload_enable  指定是否允许使用ASCII格式上传文件

    ascii_download_enable  指定是否允许使用ASCII格式下载文件

    listen  指定vsftpd服务器的运行方式,默认为YES,以独立方式运行

    xferlog_enable  指定是否启用日志功能

    tcp_wrapper  指定是否启用防火墙    

         下面,我使用root用户,修改主配置文件vsftpd.conf:vi /etc/vsftpd/vsftpd.conf

        

        修改文件内容(允许使用asc编码进行文件上传或下载

          去#号,改成  

        在末尾添加 userlist_deny=NO

        


         我再使用root用户,修改用户列表文件user_list: vi /etc/vsftpd/user_list

        

        追加允许的用户:oracle(使oracle用户被允许通过ftp的方式连接服务器

        


         我再使用root用户,修改用户列表文件ftpusers: vi /etc/vsftpd/ftpusers

        

        删除用户:root(防止root用户在使用ftp时,无法连接服务器

          删除root用户,改为

        为此,vsftpd的配置就基本完成了。此时,我们可以启动vsftpd服务。使用命令 service vsftpd start

        

        为了防止vsftpd服务在服务器被重启后无效,我们还需要使vsftpd在服务器重启或开机时自启动。

        使用命令 chkconfig vsftpd on,并使用命令检查 chkconfig --list|grep vsftpd

        

        我们可以看到vsftpd在级别为2、3、4、5的时候会自启动,这样基本就能满足我们的需求了!


    5、vsftpd调试

         为服务器安装好vsftpd后,接下来,我们要做的就是查看安装后的结果是否成功的。使用windows的dos命令连接服务器试试。

        

        对使用过ftp连接过服务器进行文件上传、下载操作的技术人员来说,看到这种情况,就知道实际上ftp是连接失败了!为什么会这样呢?

        其实,我们在使用ftp时,其端口可能服务器的防火墙给过滤了。也就是说,其端口无效了,这样ftp服务启动后,我们还是无法成功连接到服务器上。

        这时,我们可以对防火墙进行一些处理,为vsftp开通所需的端口,默认情况下,vsftpd使用的端口号是20或21

        使用root用户,编辑防火墙文件:vi /etc/sysconfig/iptables

        

        在COMMIT的上面添加如下语句:

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

    iptables -A INPUT -p tcp --dport 20 -j ACCEPT

        如:

        

        重启防火墙服务:service iptables restart

        

        重启vsftpd服务:service vsftpd restart

        

        再使用windows的dos命令ftp到服务器

        

        咦,成功了。这时就可以输入用户名,密码等信息使用ftp连接到服务器了。


         【题外话】后来,我发现,在使用ftp过程中,ls命令居然还不显示文件列表。网上查了一下,使用一下命令可以解决

        # setsebool -P ftpd_disable_trans 1 

        # service vsftpd restart

        


    我是【Richard在菩提树下】

      如果,您认为阅读这篇博文让您有些收获,不妨点击一下右下角的【推荐】。

      如果,您希望更容易地发现我的新博文,不妨点击一下左下角的【关注我】。

      如果,您对我的博文所讲述的内容有兴趣,请继续关注我后续的博文。

      本文版权归作者和博客园共有,欢迎转载,但未经作业同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则作者将保留追究法律责任的权利。

  • 相关阅读:
    HTML Strip Char Filter
    Creating a custom analyzer in ElasticSearch Nest client
    elasticsearch-analysis-pinyin
    ElasticSearch安装拼音插件 elasticsearch-analysis-pinyin
    Elasticsearch5.4 删除type
    Performs the analysis process on a text and return the tokens breakdown of the text
    Elasticsearch 5 Ik+pinyin分词配置详解
    线性可分支持向量机--SVM(1)
    感知机分类(perceptron classification)
    创建DateFrame的常用四种方式
  • 原文地址:https://www.cnblogs.com/bubi/p/3932885.html
Copyright © 2011-2022 走看看