FTP——安装配置(Linux Centos)

一、了解ftp

  1.定义:ftp是一种建立在TCP上的文件传输协议,可以使主机间共享文件,使用TCP 生成一个虚拟连接用于控制信息,然后再生成一个单独的 TCP 连接用于数据传输。

  2.工作模式:(相对于ftp-server根据数据传输通道连接由谁发起)

    主动模式:命令端口:21    数据端口:20

    防火墙要求:大于1024的端口和21、20 可以通信

                                                

    被动模式:命令端口:21    数据端口:随机

 

注意:以下为Centos6.4系统环境   (Linux查看系统版本:cat /etc/issue )

二、安装(yum)

  1.服务器安装

    yum install vsftpd

  2.客户端安装

    Linux:   yum install ftp

    Windows:可以用的很多 (eg:FileZilla  下载地址:http://www.pc6.com/softview/SoftView_32448.html)

 

三、配置

  配置文件所在目录: /etc/vsftpd/vsftpd.conf

  1.原配置文件

     anonymous_enable=YES      #允许匿名用户登录  改为anonymous_enable=NO      
          local_enable=YES           #允许本地登录
     write_enable=YES            #允许写,如需上传,则必须
     local_umask=022           #设置本地用户生成文件的掩码为022
     dirmessage_enable=YES      #允许为目录配置显示信息,显示每个目录下面的message_file文件的内容。
     xferlog_enable=YES         #打开日志记录
     connect_from_port_20=YES      #启用FTP数据端口的连接请求
     xferlog_std_format=YES       #标准日志格式 
     listen=YES              #监听/被动模式 
     pam_service_name=vsftpd
     userlist_enable=YES
     tcp_wrappers=YES

  新添加(原文件注销的内容)  

    anon_upload_enable=YES                                     #允许虚拟用户和匿名用户上传

    anon_mkdir_write_enable=YES             #允许匿名用户有创建目录的权利

    xferlog_file=/var/log/vsftp.log            #自定义日志文件的保存路径和文件名

    idle_session_timeout=600                                    #空闲连接超时

           data_connection_timeout=120                              #连接超时

    ftpd_banner=Welcome to ChinaRise FTP service      #欢迎信息

    chroot_local_user=YES            

    chroot_list_enable=YES              #设置本地用户登录后不能切换到自家目录以外的别的目录

    chroot_list_file=/etc/vsftpd/vsftpd.chroot_list        #虚拟用户名单保存在文

                                                                      ps:注意每行后面不要有空格否则会报错!!!

  2.新添加可以登录的用户

    方法一:/usr/sbin/adduser -d /opt/test_ftp -g ftp -s /sbin/nologin 用户名(eg:test)

    方法二:1.useradd(adduser) 用户名(eg:test)

        2.查看:more  /etc/passwd 

        3.将所加的用户名后面改为:用户名:501:50::/opt/test_ftp:/sbin/nologin  (eg:test:x:501:50::/opt/test_ftp:/sbin/nologin)指定了共享文件夹为test_ftp

                                            ps:确定/opt/test_ftp路径下的文件夹的存在(test_ftp为文件夹)

  3.设置密码

    passwd 用户名(eg:test)

  4.在配置文件里面配置的chroot_list_file=/etc/vsftpd/vsftpd.chroot_list里面加入用户名

    vim /etc/vsftpd/vsftpd.chroot_list(新建文件)    加入一行用户名(eg:test)

 

四、配置被动模式(pasv模式)  

    pasv_enable=yes           开启pasv模式

    pasv_min_port=10000      pasv最小端口号

    pasv_max_port=10010       pasv最大端口号

                                              ps:配置后记得重启应用:/etc/init.d/vsftpd  restart

 

五、防火墙配置(配置文件位置:/ect/sysconfig/ipatbles )

    主动模式在配置文件里面加入:
        -A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT

    被动模式在配置文件里面加入:

      -A INPUT -p tcp -m tcp --dport 10000:10010 -j ACCEPT

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

    修改方法:

      1.编辑配置文件:vim /ect/sysconfig/ipatbles

                                               ps:此方法配置后记得重启应用:/etc/init.d/iptables  restart

      2.命令行加入:iptables + 配置语句(eg:ipatable  -A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT)

                                              ps:此方法是一次性的并没有真正的在配置文件中加入语句,重启应用时会读取配置文件,改添加失效

 

六、测试

    在安装ftp的pc端输入:

      1.ftp   ftp服务器端的ip地址(eg:ftp   192.168.0.163)

      2.输入设置的用户名(eg:test)

      3.输入设置的密码

    如果成功会显示

      230 Login successful.
      Remote system type is UNIX.
      Using binary mode to transfer files.

posted @ 2014-12-09 18:42  烽°火连山楽  阅读(211)  评论(0编辑  收藏  举报