FTP服务

一、FTP(文件传输协议)

1.FTP是INTERNET上仍常用的最老的网络协议之一,它为系统提供了通过网络与远程服务器进行传输的简单方法.

2.vsftpd:FTP 服务器包的名称为 vsftpd , 它代表 Very Secure File TransferProtocol Damon 服务器名称也叫做 vsftpd。默认配置文件让 ANONYMOUS 用户只能下载位于 CHROOT 目录中的内容。 /var/ftp/ 这意味着远程 FTP 客户端能以用户anonymous 或 ftp 身份连接到服务器 ( 无需密码 ), 并从 ftp服务器上的 /var/ftp/ 目录下载文件 ( 其本地 ftp 用户可以读取这些文件 )

二、FTP设置

1.配置yum源,安装vsftpd lftp

2.开启ftp服务,查看ftp接口

3.开启防火墙,设置ftp开机自启

4.打开防火墙添加服务(找到ftp)

5.添加白名单ftp--重新加载--查看白名单

6.查看服务的配置文件(rpm -qc vsftpd)

7.修改配置文件(vim  /etc/vsftpd/vsftpd.conf)——重起服务(systemctl  restart  vsftpd)

8.在客户端登陆,连接成功    ####默认目录 /pub

三、用户登陆设置

1.匿名用户登陆

anonymous_enable=YES          anonymous_enable=NO         #是否允许登陆


登陆不成功显示如下:


2.本地用户登陆

local_enable=YES            local_enable=No             ##是否允许登陆


登陆不成功显示如下:

3.本地用户读写

write_enable=YES          write_enable=NO            #是否允许读写

该实验必须修改内核级限制文件 (/etc/sysconfig/selinux)


允许读写


不允许读写


四、登陆用户的读写权限

###几种报错含义##

        530  报错为密码输入错误
        550  报错为没有设置匿名用户上传权限

        553  报错为文件权限不

         500   权力过大

1. 查看ftp可操作的命令   help


2.匿名用户上传文件权限  /etc/vsftpd/vsftpd.conf

     anon_upload_enable=YES
    修改组  chgrp ftp /var/ftp/pub/
    修改权限  chmod 775 /var/ftp/pub/


成功修改如下:


3.匿名用户下载文件权限  /etc/vsftpd/vsftpd.conf

     anon_world_readable_only=NO


4.匿名用户删除文件权限  /etc/vsftpd/vsftpd.conf

    anon_other_write_enable=YES

修改成功如下:


5.匿名用户新建目录权限  /etc/vsftpd/vsftpd.conf

      anon_mkdir_write_enable=YES


五、用户登陆的相关设置

1.匿名用户的最大上传速度  ##单位byte

anon_max_rate=102400


2.最多同时在线人数设定

     max_clients=5   


3.匿名用户登陆的默认目录修改

     anon_root=/mnt    ##匿名用户登陆的默认目录
      local_root=/mnt   ##本地用户登陆的默认目录

4.修改本地用户登陆后,文件默认权限修改

     local_umask=055


5.修改匿名用户,即以用户tom的身份登陆,上传文件组id为1001。

    chown_uploads=YES
    chown_username=tom
  

6.用户登陆,锁定在用户加目录

     chroot_local_user=YES         锁定用户在加目录

     此时要取消家目录文件W权限,否则会500报错,权限太大

      chroot_local_user=NO      用户登陆,可切换目录,如切到根目录


7.本地用户登陆黑/白名单

  chroot_local_user=YES             锁定用户家目录

  chroot_list_enable=YES            开启黑/白名单列表

  chroot_list_file=/etc/vsftpd/chroot_list        列表文件为/etc/vsftpd/chroot_list  


注意:当锁定用户家目录(YES)时,/etc/vsftpd/chroot_list是白名单
       当不锁定用户家目录(NO)时,/etc/vsftpd/chroot_list是黑名单

以不锁定家目录(NO)为例:将tom加入到黑名单:


8.黑名单配置文件

    ftpusers     ##永久黑名单,一旦加入,任何操作都不能洗白
    user_list    ##临时黑名单,可修改配置文件,变为白名单
    userlist_enable=YES  ##开启userlist列表
    userlist_deny=NO     ##默认所有用户加入黑名单,白名单用户可登陆
    注意:若用户既在永久黑名单,也在白名单,此用户不能登陆!!

例:设置userlist_deny=NO,将  lj 用户加入user_list,则:


将  lj  用户同时加入永久黑名单,则   lj  不能登陆:



六、虚拟用户登陆

   1.建立虚拟用户

    vim /etc/vsftpd/users   ##名字可自定义         #注意:不能有空格


2.对虚拟用户和密码加密

              db_load   -T   -t   hash   -f   users   users.db        

  -T   ##新建文件         -t   ##加密格式         -f   ##加密文件


  会生成 /etc/vsftpd/users.db文件

3.建立ftp验证文件

account     required    pam_userdb.so    db=/etc/vsftpd/users     ##用户认证

auth           required    pam_userdb.so    db=/etc/vsftpd/users     ##密码认证


4.修改配置文件,使虚拟用户登陆

     pam_service_name=usercheck        ##pam读取虚拟用户文件usercheck

     guest_enable=YES                             ##开启虚拟用户登陆

     guest_username=ftp                           ##使虚拟用户以ftp映射用户登陆

          

5.配置虚拟用户具备独立的家目录

    mkdir    /var/ftpdir/mark1/mark1dir   -p
    mkdir    /var/ftpdir/mark2/mark2dir   -p    ##—p 表示上层目录不存在,自动建立
     修改配置文件,使虚拟用户登陆到自己独立的家目录
        local_root=/var/ftpdir/$USER           ##$表示根据user自动登陆到相应家目录中
         user_sub_token=$USER                 ##使ftp服务识别$USER


6.虚拟用户分开管理(VIP)

     将匿名用户所有的权限关闭

     修改配置文件,给指定虚拟用户特殊权限
     user_config_dir=/etc/vsftpd/user_conf          user_conf 目录中的文件相当于“VIP名单”

     在/etc/vsftpd/user_conf目录下建立文件,以虚拟用户名命名:

     

      给 mark1 建立目录权限:

     

      实验后结果:

     

    










 














 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值