设为首页 收藏本站
查看: 1596|回复: 0

[经验分享] Vsftpd服务传输

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-6-27 09:09:45 | 显示全部楼层 |阅读模式
1. FTP简单介绍
文件传输协议FTP(File Transfer Protocol),即能够让用户在互联网中上传、下载文件的文件协议

FTP客户端   FTP服务器端
FTP占用两个端口号(21,20)

   21端口:命令控制,用于接受客户端执行的FTP命令。
   20端口:数据传输,用于上传、下载文件数据。
FTP数据传输类型:
    主动模式:FTP服务器端主动向FTP客户端发起连接请求。
    被动模式:FTP服务器等待FTP客户端的连接请求。
2. 安装Vsftpd服务程序
   Vsftpd即“Very Secure FTP Dawmon”一款运行在Unix操作系统的FTP服务端程序,
主打:安全性、完全开源免费、速度高、支持IPv6、虚拟用户功能等。
   #yum install vsftpd -y
   #iptables -F        //清空防火墙规则
   #service iptables save   //保存清空后的防火墙规则
    /usr/sbin/vsftpd      主程序            
    /etc/vsftpd/ftpusers  & /etc/vsftpd/user_list   //用户禁止登陆列表
    /etc/vsftpd/vsftpd.conf     //主配置文件
配置文件参数作用详解:
listen=yes|no             //是否以独立运行方式监听服务
listen_address=ip_地址    //设置要监听的ip地址
listen_port=21            //设置ftp的监听端口
download_enable=yes|no    //是否运行下载
userlist_enable=yes|no    //是否启用“禁止登陆用户名单”
max_client=0              //最大客户端连接数,0位不限制
anonymous_enable=yes| no  //是否允许匿名用户访问
anon_upload_enable=yes|no //是否允许匿名用户上传文件
anon_umask=022            //匿名用户上传文件的umask值
anon_root=/var/ftp        // 匿名用户的ftp根目录
anon_mkdir_write_enable=yes|no   //是否开放匿名用户创建目录   
anon_other_write_enable=yes|no   //是否开放匿名用户其他写入权限
local_enable=yes|no        //是否允许本地用户登录ftp  
local_umask=022
local_root=/var/ftp
chroot_local_user=yes|no   //是否将用户权限禁锢在ftp目录,安全
3. Vsftpd的三种验证方式
    匿名访问:任何人无需验证口令即可登录ftp服务器。
     
    本地用户:使用ftp服务器中的账号、密码信息。
    匿名用户:创建的独立的ftp账号资料。
   
3.1 匿名访问模式
    vim /etc/vsftpd/vsftp.conf
   -------------------------------------
        anonymous_enable=yes
        anon_upload_enable=yes
        anon_mkdir_write_enble=yes
        anon_other_wite_enable=yes
        write_enbale=yes
-----------------------------------------
    服务器端:chmod ftp /var/ftp/pub         //修改pub目录宿主
              setenforce=0                  //关闭selinux
              vim /etc/selinux/conf
     
                       
            
        
              systemctl restart vsftpd
     客服端配置:yun install ftp -y
                 ftp 192.168.100.10(服务器ip)
                 anonymous
3.2 本地用户模式
vim /etc/vsftpd/vsftp.conf
   -------------------------------------
      anonymous_enable=no
      local_enable=yes
      write_enable=yes
      userlist_deny=yes
      userlist_enable=yes
      pam_service_name=vsftpd
-----------------------------------------
       systemctl restart vsftpd
       useradd jerry && echo "jerry" | passwd --stdin jerry   //添加userlist外的用户
       iptables -F
       setenforce=0


--------------------------------
3.3 虚拟用户模式(最安全)
    3.3.1 建立虚拟FTP用户数据库文件
          cd /etc/vsftpd
          vim myvuser.list      //单数行账号   双数为密码
              Jerry
              Jerry
           
          db_load -T -t hash -f myvuser.list myvuser.db   //使用dbload命令用hash算法生成数据库文件myvuser.db
          chmod 600 myvuser     //修改权限
          rm -f myvuser.list
   3.3.2 创建FTP根目录及虚拟用户映射的系统用户
           useradd -d /var/ftproot -s /sbin/nologin virtual     //创建默认文件根目录/var/ftproot
           ls -ld /var/ftproot/
           chmod -Rf 755 /var/ftproot/
   3.3.3 建立支持虚拟用的PAM认证文件
           vim /etc/pam.d/vsftpd.u
                auth required pam_userdb.so.db=/etc/vsftpd/myvuser //myvuser不加后缀
                account required pam_userdb.so.db=/etc/vsftpd/myvuser
   3.3.4 在vsftpd.conf文件中添加支持配置
---------- -------------------------------------   
anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_username=virtual
pam_service_name=vsftpd.vu                  //指定pam文件
write_enable=YES
allow_writeable_chroot=YES                  //允许根目录可写
user_config_dir=/etc/vsftpd/myvusers_dir
-----------------------------------------------
    3.3.5 为虚拟用户设置不同的权限
............................................................
          vim /etc/vsftpd/vsftpd.conf
              user_config_dir=/etc/vsftpd/myvusers_dir  //创建用户独立权限配置文件存放目录
          cd  /etc/vsftpd/myvusers_dir
                 vim Jerry                                     //配置Jerry用户的具体权限
                     anon_upload_enable=YES
                     anon_mkdir_write_enable=YES
                     anon_other_write_enable=YES
......................................................................
    3.3.6 重启 vsftpd服务  systemctl restart vsftpd


4. 可插拔认证模块PAM
      PAM:Pluggable Authentication Modules一种认证机制
      应用  -> PAM api (应用接口层) -> 模块 (鉴别模块层)
          重要pam目录:
                /lib/security:pam         //认证模块
                /etc/pam.d                //针对不同服务定义好的pam配置文件
                 






运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-235736-1-1.html 上篇帖子: 推荐-Vsftpd虚拟用户的配置 for CentOS 下篇帖子: linux vsftp安装
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表