• NFS,FTP


    一. NFS
    1. NFS简介
    NFS全称是network file system
    NFS允许一个系统在网络上与他人共享目录和文件。通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件。 
    假如有三台机器A, B, C,它们需要访问同一个目录,目录中都是图片,传统的做法是把这些图片分别放到A, B, C. 但是使用NFS只需要放到A上,然后A共享给B和C即可。访问的时候,B和C是通过网络的方式去访问A上的那个目录的。 

    2. 安装、配置NFS服务
    需要安装两个包(nfs-utils和rpcbind)
    yum install -y nfs-utils  会同时安装上rpcbind
    提供nfs服务的机器上 vim /etc/exports  //内容如下:
          /home/ 192.168.137.0/24(rw,sync,all_squash,anonuid=501,anongid=501) 
    共分为三部分,第一部分就是本地要共享出去的目录,第二部分为允许访问的主机(可以是一个IP也可以是一个IP段)第三部分就是小括号里面的,为一些权限选项。它表示:共享的目录为/home,信任的主机为192.168.137.0/24这个网段,权限为读写,同步,限定所有使用者,并且限定的uid和gid都为501。
    启动 /etc/init.d/rpcbind start; /etc/init.d/nfs start  


    3. NFS配置的一些选项说明
    rw :读写;
    ro :只读;
    sync :同步模式,内存中数据时时写入磁盘;
    async :不同步,把内存中数据定期写入磁盘中;
    no_root_squash :加上这个选项后,root用户就会对共享的目录拥有至高的权限控制,就像是对本机的目录操作一样。不安全,不建议使用;
    root_squash:和上面的选项对应,root用户对共享目录的权限不高,只有普通用户的权限,即限制了root;
    all_squash:不管使用NFS的用户是谁,他的身份都会被限定成为一个指定的普通用户身份;
    anonuid/anongid :要和root_squash 以及all_squash一同使用,用于指定使用NFS的用户限定后的uid和gid,前提是本机的/etc/passwd中存在这个uid和gid。


    4. 客户端上挂载NFS
    客户端同样安装 yum install -y nfs-utils 
    查看服务器端都共享了哪些目录 
        showmount -e 192.168.137.10  
    在客户端上挂载服务端的nfs 
        mount -t nfs  -onolock,nfsvers=3 192.168.137.10:/home/ /mnt/     //如果不加 -onolock,nfsvers=3 则在挂载目录下的文件属主和组都是nobody,如果指定nfsvers=3则显示root

    df -h  查看挂载的情况


    5. exportfs 命令的使用
    -a :全部挂载或者卸载;
    -r :重新挂载;
    -u :卸载某一个目录;
    -v :显示共享的目录
    改变/etc/exports配置文件后,不用重启nfs服务直接用这个exportfs即可
    exportfs -arv  使生效
    在使用nfs时,常用一个选项就是 -o nolock  
    我们还可以把要挂载的nfs目录写到client上的/etc/fstab文件中  192.168.137.10:/tmp/ /test nfs nolock 0 0  然后 mount -a 


    二. ftp
    1. 什么是ftp
    FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为 “文传协议” 用于Internet上的控制文件的双向传输。
    FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)查看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去。
    在CentOS或者RedHat Linux上有自带的ftp软件叫做vsftpd  


    2. 使用pure-ftpd搭建FTP服务
    pure-ftpd 官网 http://www.pureftpd.org/project/pure-ftpd  
    wget http://download.pureftpd.org/pub ... ftpd-1.0.32.tar.bz2  
    tar jxf pure-ftpd-1.0.32.tar.bz2 
    cd pure-ftpd-1.0.32 
    ./configure   --prefix=/usr/local/pureftpd   --without-inetd   --with-altlog   --with-puredb   --with-throttling   --with-peruserlimits   --with-tls
    make && make install 

    cd configuration-file 
    mkdir -p /usr/local/pureftpd/etc/  
    cp pure-ftpd.conf /usr/local/pureftpd/etc/pure-ftpd.conf 
    cp pure-config.pl /usr/local/pureftpd/sbin/pure-config.pl 
    chmod 755 /usr/local/pureftpd/sbin/pure-config.pl 

    vim /usr/local/pureftpd/etc/pure-ftpd.conf  //内容如下:
    1. ChrootEveryone              yes
    2. BrokenClientsCompatibility  no
    3. MaxClientsNumber            50
    4. Daemonize                   yes
    5. MaxClientsPerIP             8
    6. VerboseLog                  no
    7. DisplayDotFiles             yes
    8. AnonymousOnly               no
    9. NoAnonymous                 no
    10. SyslogFacility              ftp
    11. DontResolve                 yes
    12. MaxIdleTime                 15
    13. PureDB                        /usr/local/pureftpd/etc/pureftpd.pdb
    14. LimitRecursion              3136 8
    15. AnonymousCanCreateDirs      no
    16. MaxLoad                     4
    17. AntiWarez                   yes
    18. Umask                       133:022
    19. MinUID                      100
    20. AllowUserFXP                no
    21. AllowAnonymousFXP           no
    22. ProhibitDotFilesWrite       no
    23. ProhibitDotFilesRead        no
    24. AutoRename                  no
    25. AnonymousCantUpload         no
    26. PIDFile                     /usr/local/pureftpd/var/run/pure-ftpd.pid
    27. MaxDiskUsage               99
    28. CustomerProof              yes
    复制代码
    mkdir /data/ftp  #创建ftp服务的目录
    useradd www  #创建以哪个账号的身份登录ftp
    /usr/local/pureftpd/bin/pure-pw useradd test1  -uwww -d /data/ftp  #建立虚拟账号
    /usr/local/pureftpd/bin/pure-pw mkdb #创建密码文件
    /usr/local/pureftpd/bin/pure-pw list #列出用户
    /usr/local/pureftpd/bin/pure-pw userdel test1 #删除账号

    启动pure-ftpd服务的命令: /usr/local/pureftpd/sbin/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf

    2. vsftp配置ftp服务  (五期王钦利的文档http://note.youdao.com/share/?id=4be23a089a56f46a9f56d5f7b97fca96&type=note
    yum install -y vsftpd db4-utils
    建立虚拟账号相关联的系统账号 useradd virftp -s /sbin/nologin  
    建立虚拟账户相关的文件  vim  /etc/vsftpd/vsftpd_login //内容如下: 
        test1
        123456
        test2
        abcdef
    chmod 600 /etc/vsftpd/vsftpd_login
    生成对应的库文件 db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db


    建立虚拟账号相关的目录以及配置文件 mkdir  /etc/vsftpd/vsftpd_user_conf
    cd   /etc/vsftpd/vsftpd_user_conf  创建和用户对应的配置文件
    vim test1 内容如下:
    local_root=/home/virftp/test1
    anonymous_enable=NO
    write_enable=YES
    local_umask=022
    anon_upload_enable=NO
    anon_mkdir_write_enable=NO
    idle_session_timeout=600
    data_connection_timeout=120
    max_clients=10
    max_per_ip=5
    local_max_rate=50000


    mkdir /home/virftp/test1
    修改权限: chown -R virftp:virftp /home/virftp
    vim /etc/pam.d/vsftpd   在最开头添加两行 
    auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login   //如果是64位系统,则改为/lib64/security/pam_userdb.so 
    account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login  //如果是64位系统,则改为/lib64/security/pam_userdb.so 
    再修改/etc/vsftpd.conf   vim /etc/vsftpd/vsftpd.conf

    anonymous_enable=YES改为anonymous_enable=NO
    #anon_upload_enable=YES 改为 anon_upload_enable=NO
    #anon_mkdir_write_enable=YES 改为 anon_mkdir_write_enable=NO
    再增加:
    1. chroot_local_user=YES
    2. guest_enable=YES
    3. guest_username=virftp
    4. virtual_use_local_privs=YES
    5. user_config_dir=/etc/vsftpd/vsftpd_user_conf
    复制代码

    启动vsftpd服务 /etc/init.d/vsftpd start  
  • 相关阅读:
    将excel文件的内容导入sql server数据库的方法
    DataGridView 中的 CheckBox
    TextBox的文本换行问题
    寻找TreeView中的项(c#)
    关于C#的几个问题
    远程通信
    人脸搜索项目开源了:人脸识别(M:N)Java版
    人脸识别中的重要环节对齐之3D变换Java版(文末附开源地址)
    揭秘人脸对齐之3D变换Java版(文末附开源地址)
    阿里云视觉智能开放平台的人脸1:N搜索的开源替代Java版(文末附开源地址)
  • 原文地址:https://www.cnblogs.com/yuankaituo/p/4244988.html
Copyright © 2020-2023  润新知