Samba和ftp服务的搭建及配置

 

 
LINUX 网络服务
2   构建文件服务器
 
 
                       第一部分  samba
一. Samba 服务基础
  1. SMB协议
*      Server Message Block ,服务消息块
  1. CIFS协议
*      Common Internet File System ,通用互联网文件系统
  1. Samba的软件包组成
*      samba-3.0.23c-2.i386.rpm
*      samba-client-3.0.23c-2.i386.rpm
*      samba-common-3.0.23c-2.i386.rpm
*      samba-swat-3.0.23c-2.i386.rpm
*      system-config-samba-1.2.39-1.el5.noarch.rpm
注意: 1. 只需安装 samba samba-client samba-common 3 个软件包,即可实现 Samba 服务器和客户端的基本功能
2. 在以上 5 个软件包中, samba samba-client 软件包分别用于提供服务器和客户端程序文件, samba-common 软件包提供了服务器和客户端都需要使用的公共文件, system-config-samba 软件包用于提供图形界面管理程序(需要在 X 图形环境中使用),而 samba-swat 软件包是一个 Web 方式的管理工具
  1. Samba服务器的主要程序
*      smbd :提供对服务器中文件、打印资源的共享访问
*      nmbd :提供基于 NetBIOS 主机名称的解析
  1. Samba的服务脚本
*      /etc/init.d/smb
  1. Samba的配置目录及文件
*      /etc/samba/
*      /etc/samba/smb.conf
 
二. smb.conf 主配置文件 /ec/samba/smb.conf
[global]
   workgroup = MYGROUP  所在工作组名称
   server string = Samba Server   服务器描述信息
 security = user   安全级别,可用值如下: share user server domain
   log file = /var/log/samba/%m.log  日志文件位置,“ %m” 变量表示客户机地址
   max log size = 50  日志文件的最大容量,单位为 KB
   ……
[homes]
   comment = Home Directories
   browseable = no
   writable = yes
[printers]
   ……
 
三. 常见共享目录配置项的含义
*      comment :对共享目录的注释、说明信息
*      path :共享目录在服务器中对应的实际路径
*      browseable :该共享目录在“网上邻居”中是否可见
*      guest ok :是否允许所有人访问,等效于“ public”
*      writable :是否可写,与 read only 的作用相反
*      read only = yes 只读     
*      create mask = 755   创建文件时 权限是 755
*      only guest     =     yes  仅以匿名用户登录
*      valid users = liu,@liu  只运行 liu 用户可以访问 (@liu, 运行 liu 这个组访问 )
 
四. 建立可匿名访问的文件共享
  1. 修改smb.conf配置文件
*      security = share
*      public = yes
  1. 检查配置的正确性
*      testparm 命令工具
  1. 启动smb服务
*      service smb start
例如:建立一个只读的匿名共享
修改 /etc/samba/smb.conf, 修改如下内容:
[global]
   workgroup = WORKGROUP
   security = share
[movie]
   comment = Public share with movie files
   path = /var/public/movies
   public = yes
   read only = yes
 
五. 建立带验证的文件共享
 
  1. 建立Samba用户数据库文件
*      默认数据库文件位于: /etc/samba/smbpasswd rhel5 默认没有)
       ( 注意: 注释掉 passdb backend = tdbsam,
然后加入 smb passwd file = /etec/samba/smbpasswd)
*      系统用户帐号 -> Samba 用户帐号( samba 帐户必须是一个系统帐户)
  1. Samba帐号的别名设置
*      smb.conf 文件中需要启用如下配置
*       username map = /etc/samba/smbusers
*      默认的别名映射文件: /etc/samba/smbusers
格式: 真实名字 = 别名 1   别名 2   别名 3  
例如:建立一个只要 vina root 组可以登陆的 samba 共享
[global]
   workgroup = WORKGROUP
   security = user
[movie]
   comment = Public share with movie files
   path = /var/public/movies
   public = no
   read only = no
   valid users = vina, @root
   write list = root
   directory mask = 0744   创建目录的权限
   create mask = 0600      创建文件的权限
  1. smb.conf文件设置客户机访问授权
*      一般用在全局配置 [global] 部分
*      hosts allow 配置项:仅允许特定的客户机
*      hosts deny 配置项:仅拒绝特定的客户机
*      客户机地址表示形式:
*        以空格分隔多个地址
*        主机名或 IP 地址,例如: 192.168.168.11 或者 prtsvr
*        网络地址,例如: 173.17. 或者 173.17.0.0/255.255.0.0
 
六. 在客户机中访问共享目录
  1. 使用Windows客户端访问文件共享服务
*      网上邻居、 UNC 路径
  1. 使用Linux客户端访问文件共享服务
*      smbclient 命令,查看及登录使用共享
*       smbclient -L 192.168.168.1
*       smbclient -U vina //192.168.168.1/movie
*      mount 命令,将共享目录挂载到本地使用
*       mount -o username=vina //192.168.168.1/movie /mnt
     第二部分  ftp
 
七. FTP 服务概述
  1. FTP连接方式
*      控制连接:标准端口为 21 ,用于发送 FTP 命令信息
*      数据连接:标准端口为 20 ,用于上传、下载数据
*      数据连接的建立类型:
  主动模式:服务端从 20 端口主动向客户端发起连接
  被动模式:服务端在指定范围内的某个端口被动等待客户端发起连接
  1. FTP传输模式
*      文本模式: ASCII 模式,以文本序列传输数据
*      二进制模式: Binary 模式,以二进制序列传输数据
  1. FTP用户的类型
*      匿名用户: anonymous ftp
*      本地用户:
  帐号名称、密码等信息保存在 passwd shadow 文件中
*      虚拟用户:
  使用独立的帐号 / 密码数据文件
  1. 常见的FTP服务器程序
*      IIS Serv-U
*      wu-ftpd Proftpd
*      vsftpd Very Secure FTP Daemon
  1. 常见的FTP客户端程序
*      ftp 命令
*      CuteFTP FlashFXP LeapFTP Filezilla
*      gftp kuftp
 
八. vsftpd 服务基础
  1. vsftpd软件包
*      官方站点 :http://vsftpd.beasts.org/
*      主程序: /usr/sbin/vsftpd
*      服务名: vsftpd
*      用户控制列表文件
 /etc/vsftpd/ftpusers
 /etc/vsftpd/user_list
*      主配置文件
 /etc/vsftpd/vsftpd.conf
  1. 常用的全局配置项
*      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 地址的并发连接数
  1. 常用的匿名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 :限制最大传输速率,单位为字节
  1. 常用的本地用户FTP配置项
*      local_enable=YES :是否启用本地系统用户
*      local_umask=022 :本地用户所上传文件的权限掩码
*      local_root=/var/ftp :设置本地用户的 FTP 根目录
*      chroot_local_user=YES :是否将用户禁锢在主目录
*      local_max_rate=0 :限制最大传输速率(字节 / 秒)
 
九. 构建可匿名上传的 vsftpd 服务器
  1. 调整上传目录的属主或权限
*      确保匿名用户 ftp 有权写入文件
 chown ftp /var/ftp/pub
  1. 修改vsftpd.conf主配置文件
[root@filesvr ~]# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES
local_enable=NO
write_enable=YES
anon_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
userlist_enable=NO
……
 
十. 构建本地用户验证的 vsftpd 服务器
 
  1. 修改vsftpd.conf配置文件
*      启用本地用户访问
*      并可以结合 user_list 文件灵活控制用户访问
  1. 修改主配文件
[root@filesvr ~]# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
local_umask=022
userlist_enable=YES
userlist_deny=YES
……
十一.   构建基于虚拟用户的 vsftpd 服务器
1. 建立虚拟 FTP 用户的帐号数据库文件
2. 创建 FTP 根目录及虚拟用户映射的系统用户
3. 建立支持虚拟用户的 PAM 认证文件
4. vsftpd.conf 文件中添加支持配置
5. 为个别虚拟用户建立独立的配置文件
6. 重新加载 vsftpd 配置
7. 使用虚拟 FTP 账户访问测试
 

你可能感兴趣的:(ftp,配置,samba,搭建)