linux下的ftp服务的搭建

http  超文本传输协议
ftp  
文件传输协议

部署ftp服务:
 
服务端(虚拟机)

  vim /etc/sysconfig/selinux

  linux下的ftp服务的搭建

 linux下的ftp服务的搭建

    将第七行改称disabled
  reboot      
重启

  getenforce   查看若为disabled则成功

  linux下的ftp服务的搭建

  yum install vsftpd -y                        下载安装ftp协议

  linux下的ftp服务的搭建

  systemctl start vsftpd                       开启ftp协议
  systemctl enable vsftpd                     
开机重启ftp协议
  firewall-cmd --permanent--add-service=ftp  
在火墙中添加ftp服务(以允许ftp服务)

  firewall-cmd --reload                        重读firewall配置文件

  linux下的ftp服务的搭建

  客户端(真机)

  yum install ftp

  linux下的ftp服务的搭建

  [[email protected] Desktop]$ lftp 172.25.254.107  验证是否成功
  lftp 172.25.254.107:~> ls   
  drwxr-xr-x    2 0       0               6 Mar 07  2014 pub
linux下的ftp服务的搭建


报错问题:

   500   文件系统权限过大
   530   
用户认证失败
   550   
服务本地功能未开放
   553   
本地系统权限过小


匿名用户是否登录
   vim /etc/vsftpd/vsftpd.conf 
编辑文件
     anonymous_enable=YES|NO
   systemctl restart vsftpd    
重启服务
本地用户是否登录
   vim /etc/vsftpd/vsftpd.conf
     local_enable=YES|NO

   systemctl restart vsftpd

linux下的ftp服务的搭建

linux下的ftp服务的搭建

本地用户上传文件
   vim /etc/vsftpd/vsftpd.conf
     write_enable=YES|NO
   systemctl restart vsftpd
改变匿名用户的默认路径
   mkdir /ftpdir/westosdir -p
   vim /etc/vsftpd/vsftpd.conf
     anon root=/direcotry
   systemctl restart vsftpd
匿名用户上传
   vim /etc/vsftpd/vsftpd.conf
     write_enable=YES        
匿名用户上传的前提
     anon_upload_enable=YES
   systemctl restart vsftpd
   chgrp ftp /var/ftp/pub    
添加权限

   chmod 775 /var/ftp/pub

   linux下的ftp服务的搭建

匿名用户建立目录
   vim /etc/vsftpd/vsftpd.conf
     anon_mkdir_write_enable=YES|NO

   systemctl restart vsftpd

  linux下的ftp服务的搭建

匿名用户下载
   vim /etc/vsftpd/vsftpd.conf
    anon_world_readable_only=YES|NO
   systemctl restart vsftpd
匿名用户删除、对文件的重命名
   vim /etc/vsftpd/vsftpd.conf
     local_enable=YES|NO

   systemctl restart vsftpd

   linux下的ftp服务的搭建

本地用户上传文件
   vim /etc/vsftpd/vsftpd.conf
     write_enable=YES|NO
   vim /etc/vsftpd/vsftpd.conf
     anon_other_write_enable=YES|NO

   systemctl restart vsftpd

   linux下的ftp服务的搭建

匿名用户的上传速率更改
   vim /etc/vsftpd/vsftpd.conf
      anon_max_rate=102400
   systemctl
本地用户上传文件的默认权限
   vim /etc/vsftpd/vsftpd.conf
       local_umask=077
   systemctl restart vsftpd
匿名用户上传文件的默认权限
   vim /etc/vsftpd/vsftpd.conf
       anon_umask=022
   systemctl restart vsftpd
所有用户被锁定到自己的家目录
   vim /etc/vsftpd/vsftpd.conf
       chroot_local_user=YES|NO     
本地用户可否浏览其他目录
    systemctl restart vsftpd
    chmod u-w   /home/*
本地用户黑名单建立
    vim /etc/vsftpd/vsftpd.conf
        chroot_local_user=NO     
        chroot_list_enable=YES     
       chroot_list_file=/etc/vsftpd/chroot_list 
    systemctl restart vsftpd
本地用户白名单建立
    vim /etc/vsftpd/vsftpd.conf
        chroot_local_user=YES
        chroot_list_enable=YES
       chroot_list_file=/etc/vsftpd/chroot_list
    systemctl restart vsftpd
限制本地用户登录
    vim /etc/vsftpd/ftpusers     
用户永久黑名单(优先级高于一切,若两个文件中含有同一个用户名,则优先于ftpusers
    vim /etc/vsftpd/user_list    
用户临时黑名单(可能会变成白名单)
       
变成白名单
        vim /etc/vsftpd/vsftpd.conf
           userlist_deny=NO
        systemctl restart vsftpd      
/etc/vsftpd/user_list变成白名单,只有在名单中的用户可以登陆)

虚拟用户帐号身份登陆   关闭黑白名单
  
创建虚拟帐号身份
      vim /etc/vsftp/
文件名1  
         user1
         123
         user2
         123
         user3

         123

     linux下的ftp服务的搭建

      db_load -T -t hash -f /etc/vsftpd/文件名1 /etc/vsftpd/文件名1.db
       vim /etc/pam.d/
文件名
           account  required pam_userdb.so db=/etc/vsftpd/
文件名1

           auth  required pam_userdb.so db=/etc/vsftpd/文件名1

      linux下的ftp服务的搭建
       vim /etc/vsftpd/vsftpd.conf
           pam_service_name=

       vim /etc/vsftpd/vsftpd.conf
           pam_service_name=
文件名2
           guest_enable=YES
           guest_username=
虚拟机中现有的用户

           chmod u-w /home/虚拟机中现有的用户

       systemctl restart vsftpd  重启服务
  
指定虚拟用户的家目录
       mkdir /
目录1
       mkdir /
目录1/user{1..3}    创建的家目录名字与用户名相同
       touch /
目录1/user1/user1file
       touch /
目录1/user2/user2file
       touch /
目录1/user3/user3file
       vim /etc/vsftpd/vsftpd.conf
           local_root=/
目录1/$USER

           user_sub_token=$USER

      linux下的ftp服务的搭建

       systemctl restart vsftpd
   
虚拟账户配置独立
       mkdir /
目录1/user{1..3}/pub
       chgrp
本地用户登陆 /目录1/user{1..3}
       chmod 775 /
目录1/user{1..3}
       vim /etc/vsftpd/vsftpd.conf
         user_config_dir=/etc/vsftpd/conf_dir
       mkdir /etc/vsftpd/conf_dir-p
       vim/etc/vsftpd/conf_dir/user2

           anon_upload_enable=YES

    linux下的ftp服务的搭建只允许user2用户上传

       systemctl restart vsftpd

linux下的ftp服务的搭建