zoukankan      html  css  js  c++  java
  • Linux ftp服务器搭建

     Linux ftp服务器搭建

        Linux ftp服务器一般和Linux http 服务器搭建在同一台,前者是主要提供下载后者是提供访问。

        默认情况下,存储通过挂载到http默认访问路径/var/www/html目录中。那么其目录下的文件如何通过ftp下载呢?

        Linux下有很多可用的FTP服务器,其中rhel默认为VSFTP

        vsftp中VS的意思是“Very Secure”

       vsftp提供3种远程的登录方式:

       (1)匿名登录方式

               就是不需要用户名,密码。就能登录到服务器下载目录

       (2)本地用户方式

               需要帐户名和密码才能登录。而且,这个帐户名和密码,都是在你linux系统 里面,已经有的用户。

       (3)虚拟用户方式

               同样需要用户名和密码才能登录。但是和上面的区别就是,这个用户名和密码,在你linux系统中是没有的(没有该用户帐号)

    在这里只介绍前面两种登录方式

    ftp服务器部署步骤:

    (1)准备步骤

    1、安装ftp程序

    2、启动、重启、停止 ftp服务

    3、设置ftp开机自启动

    (2)匿名登录方式

    1、在/var/ftp/pub目录下创建一个名为test.txt的文件

    2、更改默认下载路径方法

    (3)本地用户方式

    1、取消匿名登录方式

    2、创建专门用户ftp服务的本地用户

    3、设置创建的用户可用于ftp

    4、更改默认下载路径方法

    (4)详细了解ftp相关设置

    1、ftp不常见使用方法

    2、相关配置文件

    3、vsftpd.conf参数详解

    (1)准备步骤

     
    1. 1

      1、安装ftp程序

      rpm -qa | grep vsftpd 检测系统是否安装ftp程序

      如果没有安装,使用yum 安装或者使用rpm -Uvh rpm包名

      yum配置详细步骤参考我的经验:rhel6.4 yum本地yum源配置

      Linux ftp服务器搭建
    2. 2

      2、启动、重启、停止 ftp服务

      启动:service vsftpd start

      关闭:service vsftpd stop

      重启:service vsftpd restart

    3. 3

      3、设置ftp开机自启动

      chkconfig vsftpd on

      Linux ftp服务器搭建
      END

    (2)匿名登录方式

     
    1. 1

      1、在/var/ftp/pub目录下创建一个名为test.txt的文件

      可以看到,在没有更改ftp默认配置时候,ftp服务器默认下载位置是/var/ftp/pub。

      如果想更改这个默认下载路径有两种方法:

      1、更改/etc/passwd文件

      2、在/etc/vsftpd/vsftpd.conf文件添加一行

      local_root=/var/www/html

      Linux ftp服务器搭建
    2. 2

      更改默认下载路径方法

      每种方法更改之后都需要重启ftp服务

      service vsftpd restart

      注意:此时ftp能够提供下载的同时,http同样能够提供访问

      注意:使用这种服务必须将selinux关闭。编辑/etc/selinux/config文件修改SELINUX为disabled,并执行执行setenforce 0 命令这样无需重启服务器。

      Linux ftp服务器搭建
      Linux ftp服务器搭建
      Linux ftp服务器搭建
      END

    (3)本地用户方式

     
    1. 1

      1、取消匿名登录方式

      anonymous_enable=YES 修改成NO

    2. 2

      2、创建专门用户ftp服务的本地用户

      useradd sa   创建用户

      passwd sa     设置密码

    3. 3

      3、设置创建的用户可用于ftp

      首先将vsftpd.conf文件中的

      #chroot_list_enable=YES  # (default follows)  #chroot_list_file=/etc/vsftpd.chroot_list   将其改为:   chroot_list_enable=YES  # (default follows)  chroot_list_file=/etc/vsftpd/chroot_list 

       然后新增一个文件/etc/vsftpd/chroot_list,文件内容为之前刚创建的用户:   sa

      注意:

       chroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_list 

      这两行的意思就是chroot_list文件中用户列表可以用户访问ftp

      #chroot_local_user=YES   

       是否锁定本地系统帐号用户主目录(所有);锁定后,用户只能访问用户的主目录/home/user,不能利用cd命令向上转;只能向下

      chroot_local_user默认为NO,设置指定用户能够chroot

      Linux ftp服务器搭建
    4. 4

      4、更改默认下载路径方法

      在/etc/vsftpd/vsftpd.conf文件添加一行

      local_root=/var/www/html

      sa登录之后默认下载路径是/home/sa注意:此时ftp能够提供下载的同时,http同样能够提供访问

      注意:使用这种服务必须将selinux关闭。编辑/etc/selinux/config文件修改SELINUX为disabled,并执行执行setenforce 0 命令这样无需重启服务器。

      最后重启:service vsftpd restart

      Linux ftp服务器搭建
      Linux ftp服务器搭建
      END

    (4)详细了解ftp相关设置

     
    1.  

      1、ftp不常见使用方法

      1、限制IP 访问FTP:

      #vi /etc/hosts.allow

      vsftpd:192.168.5.128:DENY 设置该IP地址不可以访问ftp服务

      2、FTP 访问时间限制:

      #cp /usr/share/doc/vsftpd-1.1.3/vsftpd.xinetd /etc/xinetd.d/vsftpd

      #vi /etc/xinetd.d/vsftpd/

      修改 disable = no

      access_time = hour:min-hour:min (添加配置访问的时间限制(注:与vsftpd.conf中listen=NO相对应)

      例: access_time = 8:30-11:30 17:30-21:30 表示只有这两个时间段可以访问ftp

      3、针对不同的使用者限制不同的速度。假设用户sa所能使用的最高速度为500Kb/s

      第一:在/etc/vsftpd/vsftpd.conf文件尾部新增以下一行: user_config_dir=/etc/vsftpd/userconf 增加一个名为/etc/vsftpd/userconf的目录: #mkdir /etc/vsftpd/userconf 第二: 在/etc/vsftpd/userconf下新增一个名为sa的文件,其内容如下所示: local_max_rate=500000 

      4、对于每一个联机用户,都以独立的进程来运行。

      一般情况下,在启动VSFTP时,只会看到一个名为vsftpd的进程在运行。但若是读者希望每一个联机用户都能以独立的进程来呈现,则可通过在/etc/vsftpd/vsftpd.conf文件中增加以下一行来实现: setproctitle_enable=YES

    2.  

      2、相关配置文件

      vsftp.conf:

        /etc/vsftpd/vsftpd.conf,包含了FTP服务的基本配置参数。指令格式为option=value,每条指令独占一行并且指令之前不能有空格,而且在option、value和=之间不能有空格。

      /etc/vsftpd/ftpusers:

        这个文件是用来记录"不允许"登录到FTP服务器的用户,通常是一些系统默认的用户.

      /etc/vsftpd/user_list:

        其实它的内容跟上面那个文件内容一样,只是在系统对文件vsftpd.conf 进行检测时,会检测到"userlist_deny=YES",因此这个文件必须存在.

      Linux ftp服务器搭建
    3.  

      3、vsftpd.conf配置参数详解

      (1)ftpd_banner=welcome to ftp service  设置连接服务器后的欢迎信息

      (2)idle_session_timeout=60 :限制远程的客户机连接后,所建立的控制连接,在多长时间没有做任何的操作就会中断(秒)

      (3)data_connection_timeout=120 :设置客户机在进行数据传输时,设置空闲的数据中断时间

      (4)accept_timeout=60 设置在多长时间后自动建立连接

      (5)connect_timeout=60 设置数据连接的最大激活时间,多长时间断开,为别人所使用;

      (6)max_clients=200 指明服务器总的客户并发连接数为200

      (7)max_per_ip=3 指明每个客户机的最大连接数为3

      (8)local_max_rate=50000(50kbytes/sec)  本地用户最大传输速率限制

      (9)anon_max_rate=30000匿名用户的最大传输速率限制

      (10)pasv_min_port=端口

      (11)pasv-max-prot=端口号 定义最大与最小端口,为0表示任意端口;为客户端连接指明端口;

      (12)listen_address=IP地址 设置ftp服务来监听的地址,客户端可以用哪个地址来连接;

      (13)listen_port=端口号 设置FTP工作的端口号,默认的为21

      (14)chroot_local_user=YES 设置所有的本地用户可以chroot

      (15)chroot_local_user=NO 设置指定用户能够chroot

      (16)chroot_list_enable=YES

      (17)chroot_list_file=/etc/vsftpd/chroot_list(只有/etc/vsftpd/chroot_list中的指定的用户才能执行 )

      (18)local_root=path 无论哪个用户都能登录的用户,定义登录帐号的主目录, 若没有指定,则每一个用户则进入到个人用户主目录;

      (19)chroot_local_user=yes/no 是否锁定本地系统帐号用户主目录(所有);锁定后,用户只能访问用户的主目录/home/user,不能利用cd命令向上转;只能向下;

      (20)chroot_list_enable=yes/no 锁定指定文件中用户的主目录(部分),文件:/chroot_list_file=path 中指定;

      (21)userlist_enable=YES/NO 是否加载用户列表文件;

      (22)userlist_deny=YES 表示上面所加载的用户是否允许拒绝登录;

      (23)userlist_file=/etc/vsftpd/user_list 列表文件

  • 相关阅读:
    11,Django组件分页器
    10,Django于ajax
    阿里云安装Nexus搭建Maven私有仓库
    maven 自动部署到tomcat
    linux 7.2 下安装maven
    小程序防止遮罩层穿透
    Linux 下安装JDK
    Linux 命令未自动提示补全
    nginx 、tomcat 集群配置、shiro Session 共享
    nginx负载均衡配置
  • 原文地址:https://www.cnblogs.com/Su-per-man/p/12060761.html
Copyright © 2011-2022 走看看