• 虚拟账号ftp服务器


    1. 简介


         由于部门要将统计出来的数据提供给其他部门同事使用,以及其他公司使用。考虑数据的传输管理简单,我们搭建了ftp文件服务器。

     
    2. 部署架构

     

    1)数据源在内网上面的,数据分析服务器上计算完成,然后内网通过rsync同步到ftp服务器上。
         ftp-server rsync配置:
     1 [root@VM_72_183_centos ftpdata]# cat /etc/rsyncd.conf
     2 uid = root
     3 gid = root
     4 use chroot = no
     5 max connections = 10
     6 pid file = /var/run/rsyncd.pid
     7 lock file = /var/run/rsync.lock
     8 log file = /var/log/rsyncd.log
     9 [ftpdata]
    10 path=/data/ftpdata
    11 ignore errors
    12 read only = no
    13 list = no
    14 #hosts allow = 192.168.0.0/255.255.255.0
    15 auth users = root
    16 secrets file = /etc/rsyncd.secrets
    17  
    18 [root@VM_72_183_centos ftpdata]# cat /etc/rsyncd.secrets
    19 root:ftpdata5666
    20  
    21 [root@VM_72_183_centos ~]# rsync --daemon --config=/etc/rsyncd.conf --log-file=/var/log/rsync.log
          数据源同步数据设置
    1 [root@lnmp ~]# vim /etc/rsync.pass
    2 ftpdata5666
    3 
    4 [root@lnmp ~]# chmod 600 /etc/rsync.pass
    5 
    6 [root@lnmp ~]# rsync -avrzp --password-file=/etc/rsync.pass 20150703/data.log root@10.232.72.183::ftpdata/mike/20150703/     #同步
    7  rsync -auvzP --password-file=/etc/rsyncd.pass $src root@$hostip::ftpdata/$ftpuser/$date/                      #自动化同步设置
     
    2)其他部门从ftp-server下载数据。
        ftp-server vsftpd配置:
        1)安装vsftpd服务
        2)配置/etc/vsftpd/vsftpd.conf
             anonymous_enable=NO
             local_root=/data/ftpdata
             guest_enable=YES
             guest_username=vftpuser
             user_config_dir=/etc/vsftpd/vusers_dir
             pam_service_name=vsftpd.vu
        3) 账号管理
           
     useradd -d /data/ftpdata/ -s /sbin/nologin vftpuser
           
     vim /etc/vsftpd/vusers.list
     mike               #奇数行,用户名
     123                #偶数行,密码
     john
     456
     test
     789
          
     db_load -T -t hash -f /etc/vsftpd/vusers.list /etc/vsftpd/vusers.db    #生成密码数据库
    
     vim /etc/pam.d/vsftpd.vu
     #%PAM-1.0
     auth       required     pam_userdb.so  db=/etc/vsftpd/vusers
     account    required     pam_userdb.so  db=/etc/vsftpd/vusers
         添加账号脚本:
         [root@lnmp ~]# cat addvftpuser.sh
     1 #!/bin/bash
     2 user=$1
     3 pass=$2
     4 dir=/data/ftpdata
     5 if [ $# -lt 2 ] ;then echo "addvftpuser.sh <username> <password>";exit 1; fi
     6 #update password
     7 cd /etc/vsftpd/
     8 cp -f vusers.list vusers.list.old
     9 echo $user >> vusers.list
    10 echo $pass >> vusers.list
    11 db_load -T -t hash -f vusers.list vusers.db
    12 #mkdir user home dir
    13 mkdir -p $dir/$user
    14 echo "local_root=$dir/$user" > vusers_dir/$user 
        [root@lnmp ~]#sh addvftpuser.sh hello 1234      #后续只需这种方式,就可以添加账号
        默认每个用户只能在自己的独立的目录,权限只读。
     
         客户端下载:
      
    lftp
         [root@node1 ~]# lftp -u mike,123 192.168.191.130
          lftp mike@192.168.191.130:~> ls
          -rw-r--r--    1 0        0               0 Jun 30 14:38 aa
          lftp mike@192.168.191.130:/> get aa
          lftp mike@192.168.191.130:/> exit
         [root@node1 ~]# ls aa
          aa
        
    wget
         [root@lnmp ~]# wget --ftp-user=mike --ftp-password=123   
          ftp://localhost/aa
          --2015-06-30 23:39:04--  ftp://localhost/aa
               => “aa”
    
    浏览器打开
            ftp://192.168.191.130



  • 相关阅读:
    ACM HDU 3910 Liang Guo Sha(数学题,读懂题目)
    防止 7Zip 生成的 ZIP 文件在 Mac OS X 下出现乱码
    NYOJ 506
    Scanner
    String 与StringBuilder
    基于JAVA的聊天室开发
    PS加粗字体
    MySQL相关命令
    Matlab中数据处理和多项式插值与曲线拟合
    dos下进入某一文件
  • 原文地址:https://www.cnblogs.com/51runsky/p/b679746a914eb8b034f694b40d918bcf.html
Copyright © 2020-2023  润新知