文件共享

samba协议

端口:139和445
负责win主机和linux主机之间实现文件系统共享
微软:
    smb协议:服务消息协议
    cifs协议:通用互联网文件系统协议
作用:
    将自己模拟成一个win主机,共享自己的文件系统,给另外一台win主机

开启匿名登录

    # yum install samba -y
    # /etc/samba/smb.conf
    文件内:
        #号:描述
        ;号:作用行
    # mv smb.conf smb.conf.bak  备份源文件
    # grep -v "#" smb.conf |grep -v ";" |egrep "=|]" >smb.conf  把有用行导入新文件中
    有用项:
        [global]
            workgroup=WORKGROUP :组
            log file=           :日志文件
            max log=            :日志文件多大时新建文件
            security=           :用什么身份登录
        [home]                  :用户登录的时候能看见家目录
            comment=            :描述
            browseable=         :网上邻居是否课件
            guest = ok          :是否允许所有人访问等效于public
            writable=           :是否可写入
        [cetnosDVD]             :显示的名字
            comment=            :描述,随便写
            path = /misc/cd     :文件路径
            public = yes        :允许谁进入系统
            readonly = yes      :只读打开
    其中security=
        user:使用本地samba用户身份登录
        share:支持匿名登录
        server:另外一台linux用户名登录
        domain:另外一台win主机用户名登录
在win主机:
    运行:\\IP地址

开启本地用户登录

新建文件夹
    # mkdir /share
    # chmod o+w /share
新建用户
    # useradd jw
    # passwd jw     :给用户密码,可以不要
    # smbpasswd -a jw   :给用户共享文件夹密码
修改smb配置文件
修改:
    security = user
继续向后添加:
    [sharedir]
        comment = share
        path = /share
        public = no
        valid users = jw,jw_1
        readonly = yes
        write list = jw
重启服务
    /etc/init.d/smb reload
删除链接记录(win主机)
    net use * /del

开启本地用户别名登录

别名文件:
    /etc/samba/smbusers
    本地用户 = 别名
修改配置文件
    在[global]中添加
        username map = /etc/samba/smbusers

nfs服务

负责linux和linux主机之间实现文件系统共享
依赖于RPC服务(远端调用服务)
需要安装:
    rpcbind软件(系统默认安装好的:111端口)
    nfs-utils软件(自己安装)
配置文件:
    /etc/exports
    格式:
        /myshare *.simplexue.com.cn     共享给域
        /myshare desktop[0-19].simplexue.com.cn
        /myshare 172.25.0.0/16
        /myshare *.simplexue.com.cn(r),172.25.0.0/16(wr)
        /myshare 192.168.0.0(wr,no_root_squash)
            no_root_squash:允许对方使用root身份挂载

客户端

连接
    # showmount -e IP地址(192.168.0.1)    查看有哪些共享
    # mkdir /mnt/nfs    挂载点
    # mount 192.168.0.1:/share /mnt/nfs
    # vim /etc/resolv.conf  删除里面的内容
    # mount 查看挂载
    # cd /mnt/nfs
    # umount
实现永久挂载
    # vim /etc/fstab
        192.168.0.1:/share /mnt/nfs nfs defaults 0 0
    # mount -a

vsftpd

ftp服务文件共享
    使用端口:
        主动:20、21
        被动:21、随机
        21:用于控制连接
传输模式:
    文本模式:ASCII模式
    二进制模式:Binary模式
安装软件
    yum install vsftpd -y
    /etc/init.d/vsftpd start
共享目录:/var/ftp/
配置文件
    /etc/vsftpd/vsftpd.conf     主配置文件
    /etc/vsftpd/ftpusers        黑白名单(和userlist_deny)
    /etc/vsftpd/user_list       白名单
ftp用户类型:
    匿名用户:anonymous、ftp
    本地用户:服务器本身的用户家目录为共享目录
    虚拟用户:使用独立账户面数据文件的使用户
常见的服务器:
    IIS、Server-U、Vsftp

ftp的详细配置

/var/ftp/pub:权限设置
全局配置
    - listen=YES:是否以独立运行的方式监听服务
    - listen_address=192.168.4.1:设置监听的IP 地址
    - listen_port=21:设置监听FTP 服务的端口号
    - write_enable=YES:是否启用写入权限
    - download_enable=YES:是否允许下载文件
    - userlist_enable=YES:是否启用user_list 列表文件
    - userlist_deny=YES:是否禁用user_list 中的用户
    - max_clients=0:限制并发客户端连接数
    - max_per_ip=0:限制同一IP 地址的并发连接数
    - pam_service_name=vsftpd  :验证用户身份的
    - /var/ftp/pub=022:文件夹的权限的反掩码
    - tcp_wrappers=YES
匿名FTP配置项
    - anonymous_enable=YES:启用匿名访问
    - anon_umask=022:匿名用户所上传文件的权限掩码
    - anon_root=/var/ftp:匿名用户的FTP 根目录
    - anon_upload_enable=YES:允许上传文件
    - anon_mkdir_write_enable=YES:允许创建目录
    - anon_other_write_enable=YES:开放其他写入权
    - anon_max_rate=0:限制最大传输速率(字节/秒)
本地用户配置项
    - local_enable=YES:是否启用本地系统用户
    - local_umask=022:本地用户所上传文件的权限掩码
    - local_root=/var/ftp:设置本地用户的FTP 根目录
    - chroot_local_user=YES:是否将用户禁锢在主目录
    - local_max_rate=0:限制最大传输速率(字节/秒)
被动模式开启端口设置
    - pasv_min_port=最小端口号
    - pasv_max_port=最大端口号