FTP文件服务器通常用于直接互联网提供服务,直接提供下载。nfs通常用于小型集群存储,或者公司内部服务。samba用于linux和windows文件的共享。
        ftp软件通常使用vsftpd,vsftpd使用tcp 20,21端口 21用来监听,20用来传输数据
          安装软件 yum install vsftpd -y 
          启动vsftpd
          [root@test2 ~]# service vsftpd start
             Starting vsftpd for vsftpd:                                [  OK  ]
            配置文件/etc/vsftpd/ 下有几个目录
           ftpusers文件下的用于不允许通过ftp访问本机 user_list通过配置文件中userlist_deny选项来判定用户是否允许访问。
           编辑配置文件vsftpd.conf    常见的包括是否允许匿名用户登录访问和匿名用户的权限,是否允许本机用户访问和默认端口修改等等。
           #chown_uploads=YES
            #chown_username=whoever
   这两个选项表示如果匿名用户上传的文件,该文件的用户为whoever,当然用户不允许设置为root

            #chroot_local_user=YES
             #chroot_list_enable=YES
             # (default follows)
             #chroot_list_file=/etc/vsftpd/chroot_list

      这几个选项表示是否禁锢本机用户,被禁锢的用户访问权限只能在本机家目录下

    pam_service_name=vsftpd
     userlist_enable=YES
     tcp_wrappers=YES

    这几个选项表示其否使用pam模块进行用户认证,是否使用tcp_wrappers控制用户访问。
     
     使用匿名用户登录ftp服务器:匿名用户密码为空,直接访问/var/ftp/pub目录
            
       [root@test3 ~]# ftp 192.168.1.201
           Connected to 192.168.1.201 (192.168.1.201).
           220 (vsFTPd 2.2.2)
            Name (192.168.1.201:root): anonymous
           331 Please specify the password.
           Password:
          230 Login successful. 
            Remote system type is UNIX.
            Using binary mode to transfer files.


     使用本地用户进行访问   
           [root@test3 ~]# ftp 192.168.1.201
Connected to 192.168.1.201 (192.168.1.201).
220 (vsFTPd 2.2.2)
Name (192.168.1.201:root): tony
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> 

登录成功
 ftp> pwd
257 "/home/tony"
ftp> 

未使用禁锢用户功能可以访问整个系统文件
  
chroot_local_user=YES
开启禁锢用户功能
ftp> ls
227 Entering Passive Mode (192,168,1,201,129,238).
150 Here comes the directory listing.
drwxr-xr-x    2 0        0            4096 Jun 29 15:52 test
226 Directory send OK.
ftp> pwd
257 "/"
ftp> 

chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list

如果开启chroot_list_enable那么chroot_list_file中的用户将不会受到禁锢。
FTP基本功能到此结束。



        接下来说下nfs服务器,nfs服务器在架构中通常用作小访问量的文件共享存储器,由于其是nas机制的结构,当访问量过大时网络和文件访问速度就会成为瓶颈,不过基于其配置简单,所以常用在小型架构中。
        nfs也是基于C/S结构的,服务器端安装好软件,nfs是基于rpc实现端口定向的,没有固定端口,使用时想rpcbind注册获取一个端口在进行通信,通常使用tcp/udp 2049端口。
          nfs配置文件只有一个/etc/exports   
          配置格式如下:  PATH  IP (权限)
            假设服务器端分享出去一个目录/tmp/test   分享给192.168.1网段用户,有读写权限
       应该这么写    echo "/tmp/test 192.168.1.0/24  (rw)" >>/etc/exports 
        nfs有个工具exportfs     
           exportfs -a列出所有共享目录
            客户端挂载改目录
           
           [root@test3 ~]# mount.nfs 192.168.1.201:/tmp/test redhat/
[root@test3 ~]# mount
/dev/sda2 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
192.168.1.201:/tmp/test on /root/redhat type nfs (rw,vers=4,addr=192.168.1.201,clientaddr=192.168.1.202)挂载成功
可以写入/etc/fstab实现开机自动挂载

当然需要设置好对应权限才能写入文件,nfs还有几个选项sync/rsync  这个是当文件写入时是否直接写入磁盘还是暂时写入内存
 root_squash/no_root_squash 表示对于登入用户如果为root,是否允许直接使用root身份进行登录
     showmount -e 192.168.1.202查看是否有权限使用该主机上的共享文夹
 [root@test3 ~]# showmount -e 192.168.1.201
Export list for 192.168.1.201:
/tmp/test (everyone)





      
             


10-02 03:56