第12章vsFTP服务及其配置.ppt_第1页
第12章vsFTP服务及其配置.ppt_第2页
第12章vsFTP服务及其配置.ppt_第3页
第12章vsFTP服务及其配置.ppt_第4页
第12章vsFTP服务及其配置.ppt_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

XX大学XX系XXX2020年3月5日 第12章vsFTP服务及其配置 本章提要 vsFTP服务器的安装和启动FTP客户端命令简介用户管理文件vsftpd users和vsftpd user list的内容主要配置文件sftpd conf解析FTP FileTransferProtocol 文件传输协议 服务器提供Internet文件传输服务 Linux中常用的有WU FTP ProFTP PureFTP及vsFTP等 在Fedora8下自带的是vsFTP 它是一个小巧 高效 安全的FTP服务器软件 本章将介绍vsFTP服务器的安装 配置及使用等 vsFTP简介 vsFTP是一种基于GPL的在UNIX Linux中非常安全且快速的FTP服务器 其中vs是 VerySecure 的缩写 具有安全 高速和稳定的性能 在速度方面 使用ASCII模式下载数据时 速度是WU FTP的两倍 如果Linux使用的是2 4 x版本的内核 在千兆以太网上的下载速度可达86Mbps 在稳定性方面 在单机服务器上支持4000个以上的并发连接 最高可支持15000个并发连接 除此之外 vsFTP还具有如下特性 支持基于IP的虚拟FTP服务器 支持虚拟用户 支持PAM或xinetd tcp wrappers的认证方式 支持两种运行方式 standalone和xinetd方式 支持每个虚拟用户的独立配置 支持带宽限制 vsFTP的运行模式 一种是独立 standalone 运行模式 另外一种是xinetd eXtendedInternetServicesDaemon 即 扩展的Internet服务守护进程 模式 两种模式运行机制是不同的 独立运行模式适合专业的FTP服务器 且FTP总是一直有人访问 占用资源比较大 如果FTP服务器总是有人访问和登入建议采用这种模式 如果FTP服务器访问人数比较少 建议您用xinetd模式 xinetd模式的运行方式一直监听端口 当客户端 Client 有FTP连接请求时 首先会将连接传至xinetd xinetd再将此要求传至vsftpd 启动相应的vsftp服务进程 即 vsftpd 以下的内容主要是介绍独立模式下的vsftpd启动和配置方式 vsFTP服务器的安装 在Fedora8中带的vsFTP服务器版本为vsftpd 2 0 5 19 fc8 在安装之前可用如下命令检查是否已安装vsftpd root Candyroot rpm qavsftpdvsftpd 2 0 5 19 fc8若是在安装Linux时没有选择安装vsFTP服务器 可以从Fedora8安装光盘DVD中的Packages目录下找出名为vsftpdd 2 0 5 19 fc8 i386 rpm的文件 然后输入以下指令 系统即将自动完成vsFTP服务器的安装 root Candyroot rpm ivhvsftpd 2 0 5 19 fc8 i386 rpm vsFTP服务器的启动 安装完成后 系统将会生成一个名为vsftpd的服务 要启动vsftpd 最简单的方式如下 root Candyroot etc rc d init d vsftpdstartstartingvsftpdforvsftpd ok 也可以使用命令 root Candyroot servicevsftpdstart来启动vsftpd 自动启动vsFTP服务器 如果想在图形界面下启动vsFTP服务器 可以选择 系统 管理 服务 选项 在打开 服务配置 画面后 选中 vsftpd 项目 然后单击工具栏中的 开始 按钮即可启动vsftpd服务器 如图12 1所示 图12 1 服务状态设置 设置画面 测试vsftpd是否已经启动 可用telnet检验vsftpd是否已经启动 root Candyroot telnet127 0 0 121Trying127 0 0 1 Connectedto127 0 0 1 Escapecharacteris 220 vsFTPd2 0 5 从上面的内容可以看出能telnet到本机的vsftp服务器的21号端口 确认vsftpd已经被启动 按 Ctrl 中断会话 再按 q 退出telnettelnet qConnectionclosed root Candyroot 测试ftp的运行 默认情况下 安装好vsftp服务器后就可以使用匿名用户anonymous 或ftp 下载文件了 例如 使用匿名用户下载文件 操作步骤如下 1 生成一个用于测试的文件welcome txt 默认情况下 匿名用户下载目录 var ftp pub下没有任何内容 为了进行测试 可以先生成一个测试文件welcome txt root Candyroot echo WelcometomyvsFTPServer var ftp pub welcome txt 测试ftp的运行 续 2 使用匿名用户 ftp或anonymous 登录ftp root Candyroot ftp127 0 0 1Connectedto127 0 0 1 127 0 0 1 220 vsFTPd2 0 5 Name 127 0 0 1 root anonymous331Pleasespecifythepassword Password 123 测试ftp的运行 续 3 列表显示匿名FTP服务器目录并进入pub目录 ftp ls227EnteringPassiveMode 127 0 0 1 126 111 150Herecomesthedirectorylisting drwxr xr x2004096Oct0319 09pub226DirectorysendOK ftp cdpub250Directorysuccessfullychanged 测试ftp的运行 续 4 显示 var ftp pub目录下的内容并下载welcome txt文件 ftp ls227EnteringPassiveMode 127 0 0 1 44 205 150Herecomesthedirectorylisting r xr xr x10131Oct0319 09welcome txt226DirectorysendOK ftp getwelcome txt227EnteringPassiveMode 127 0 0 1 99 247 150OpeningBINARYmodedataconnectionforwelcome txt 31bytes 226FilesendOK 31bytesreceivedin0 000188secs 1 6e 02Kbytes sec ftp lsanaconda ks cfginstall loginstall log syslogwelcome txt通过显示本地文件命令 ls 确认已经将文件welcome txt下载到本地 测试ftp的运行 续 5 测试是否能上传文件到 var ftp pub目录 ftp putinstall loglocal install logremote install log227EnteringPassiveMode 127 0 0 1 233 16 550PermissionDenied 从上面信息可以看出上传文件失败6 退出FTPftp bye221Goodbye FTP客户端命令简介 要登录到vsFTP服务器 在Windows系统中可以使用图形化的FTP客户端软件 如CuteFTP和LeapFTP等 也可以直接在命令行状态下使用FTP命令 FTP命令的格式 FTP 机器名 网址或IP地址 若连接成功 系统提示输入用户名 Name 及密码 Password 进入FTP站点后 用户就可以使用相应的命令进行各种操作了 常用的FTP命令 Help或 Ascii binary typebye quitCd lcd pwd Dele renameGet mget put mput recv sendLs dir mkdir rmdirOpen close disconnect userverbose status bell vsFTP服务器的配置 安装好vsFTPD后 会在 etc vsftpd目录下生成ftpusers和user list文件 同时会生成vsftpd conf文件 用户管理文件ftpusers etc vsftpd ftpusers是vsFTP服务器中用来管理帐号的配置文件 但需要注意的是 本文件中列出的用户名是指不允许登录vsFTP服务器的用户 默认的文件内容如下 root Candyetc catftpusers UsersthatarenotallowedtologinviaftpRootBinDaemon GamesNobody从上面例子可以看出 默认情况下 root帐号是不允许登录vsFTP服务器的 如希望让root登录 只需修改此文件 在 root 前加 注释掉即可 但从安全角度考虑 建议用户不要使用root登录FTP 对于此文件中的其它帐号 均为系统帐号 建议不要做任何修改 etc vsftpd user list文件 root Candyetc cat etc vsftpd user list vsftpd user list Ifuserlist deny NO onlyallowusersinthisfile IFuserlist deny YES default neverallowusersinthisfile and donotevenpromptforapassword RootBin GamesNobody此文件中指定的用户默认情况 即在 etc vsftpd vsftpd conf中设定了userlist deny YES 下也不能访问FTP服务器 而如果在vsftpd conf中设定了userlist deny NO 则仅仅允许此文件中指定的用户访问FTP服务器 此方面的例子将在后面介绍 主要配置文件vsftpd conf etc vsftpd vsftpd conf是vsftp服务器的主要配置文件 建议读者认真理解里面的内容 以使vsFTP服务器发挥最大的效能 此文件的设置格式如下 参数 设置值若是以 开头的行表示注释文字 会被服务器所忽略 下面将分类解释各参数的含义 vsftpd conf匿名用户选项 anonymous enable YES NOftp username no anon password YES NOdeny email enable YES NObanned email file etc vsftpd banned emailsanon root anon world readable only YES NOanon upload enable YES NOanon mkdir write enable YES NOanon other write enable YES NOchown uploads YES NOchown username local enable YES NOlocal root user config dir vsftpd conf虚拟用户用户选项 guest enable YES NO若是启动这项功能 所有的不以匿名登录的用户 都视为 guest 类型 而此类用户的实际权限就是 guest username 选项中所指定的帐号 默认不启用此选项 guest username 定义vsFTPD的guest用户登录时在系统中的帐号名称 默认值为ftp vsftpd conf连接选项 1 监听地址与控制端口listen address ipaddresslisten port port value 2 FTP模式与数据端口port enable YES NOConnect from port 20 YES NOftp data port portnumberport promiscuous YES NOpasv enable YES NOpasv min port portnumberpasv max port portnumberpasv promiscuous YES NOpasv address 3 ASCII模式ascii upload enable YES NOascii download enable YES NO vsftpd conf性能与负载控制选项 超时选项idle session timeout data connection timeout accept timeout numericalvalueconnect timeout numericalvalue负载控制max clients numericalvaluemax per ip numericalvalueanon max rate valuelocal max rate value 设置速率举例 设定系统本地用户允许的最大数据传输速率 以Bytes s为单位 默认为0 此选项对所有的用户都生效 此外 也可以在用户个人配置文件中使用此选项 以指定特定用户可获得的最大数据传输速率 例如 为特定用户设置传输速率 操作步骤如下 在 etc vsftpd vsftpd conf中指定用户个人配置文件所在的目录 如 user config dir etc vsftpd userconf生成 etc vsftpd userconf目录 root Candyroot mkdir etc vsftpd userconf用户个人配置文件是在该目录下 生成与特定用户同名的文件 如 root Candyroot touch etc vsftpd userconf user1在用户user1的个人配置文件中设置local max rate参数 如 local max rate 80000 即为80KB s 以上步骤设定FTP用户user1的最大数据传输速度为80KBytes s vsFTPD对于速度控制的变化范围大概在80 到120 之间 比如我们限制最高速度为100KBytes s 但实际的速度可能在80KBytes s到120KBytes s之间 当然 若是线路带宽不足时 速率自然会低于此限制 vsftpd conf安全措施选项 1 用户登录控制pam service name vsftpd指出vsFTPD进行PAM认证时所使用的PAM配置文件名 默认值是vsftpd 默认PAM配置文件是 etc pam d vsftpd etc vsftpd ftpusersvsFTPD禁止列在此文件中的用户登录FTP服务器 这个机制是在 etc pam d vsftpd中默认设置的 userlist enable YES NO若是启用此功能 vsFTPD将读取 etc userlist file参数所指定的文件中的用户列表 当列表中的用户登录FTP服务器时 该用户在提示输入密码之前就被禁止了 即该用户名输入后 vsFTPD查到该用户名在列表 vsFTPD就直接禁止该用户登录 不会再进行询问密码等后续步聚 这可避免明文 ClearText 在网络上传输 默认值为NO vsftpd conf安全措施选项 续 userlist file etc vsftpd user list指出userlist enable选项生效后 被读取的包含用户列表的文件 默认值是 etc vsftpd user list userlist deny YES NO此选项在userlist enable选项启动后才生效 决定禁止还是只允许由 etc userlist file指定文件中的用户登录FTP服务器 YES 默认值 禁止文件中的用户登录 同时也不向这些用户发出输入口令的提示 若设为停用 即为NO 则只允许在文件中的用户登录FTP服务器 tcp wrappers YES NO若值为YES 将在vsFTPD中使用TCP wrappers远程访问控制机制 因此可利用 etc hosts allow与 etc hosts deny文件来定义可联机或是拒绝的来源地址 但默认不启用此选项 vsftpd conf安全措施选项 续 2 目录访问控制chroot list enable YES NOchroot list file etc vsftpd chroot listchroot local users YES NOpasswd chroot enable vsftpd conf安全措施选项 续 3 文件操作控制hide ids YES NOls recurse enable YES NOwrite enable YES NOsecure chroot dir vsftpd conf安全措施选项 续 4 新增文件权限设定anon umask 匿名用户新增文件的umask数值 默认值为077 这表示匿名用户新增的文件权限最大为700 777 077 700 file open mode 表示上传文件的权限 与chmod命令所使用的数值相同 如果希望上传的文件可以执行 设此值为0777 默认值为0666 local umask 本地用户新增文件的umask数值 默认值为077 其他大多数的FTP服务器都是使用022 您也可以修改为022 vsftpd conf提示信息选项 ftpd banner loginbannerstringbanner file directory vsftpd banner filedirmessage enable YES MOmessage file vsftpd conf日志设置选项 xferlog enable YES NOxferlog file xferlog std format YES NOlog ftp protocol YES NO vsftpd conf其他设置 setproctitle enable YES NOtext userdb names YES NOuser localtime YES NOcheck shell YES NOnopriv user pam service name vsFTP服务器的使用举例1 例 配置匿名用户 使之可以上传 下载文件 操作步骤如下 1 在 var ftp 创建一个上传目录 并修改权限 root Candyroot cd var ftp 首先进入 var ftp目录 root Candyftp mkdir var ftp incoming 创建incoming目录 root Candyftp chmod777 var ftp incoming 更改incoming目录的权限为777 vsFTP服务器的使用举例1 续 2 编辑 etc vsftpd vsftpd conf文件 root Candyroot vi etc vsftpd vsftpd conf确保anonymous enabled YES有效 找到 anon upload enable YES 行 去掉前面的注释符号 并在下面添加如下行 chown uploads YESanon umask 077anon mkdir write enable YESanon world readable only NO 3 存盘退出 通过前面的配置后 匿名用户ftp 或anonymous 既可下载文件 又可上传文件到incoming目录 也能在incoming目录下创建新的目录 vsFTP服务器的使用举例2 例 配置vsFTPD 使本地用户user1具有上传 下载 user2只具有下载功能 其中user1和user2同属于students组 操作步骤如下 1 创建用户组students和FTP的主目录 root Candyroot groupaddstudents root Candyroot mkdir var ftproot root Candyroot useradd Gstudents d var ftproot Muser1注 G 用户所在的组 d 表示创建用户主目录的位置 M 不建立默认的用户主目录 也即在 home下不创建用户主目录 root Candyroot useradd Gstudents d var ftproot Muser2 vsFTP服务器的使用举例2 续 2 改变目录的属主和权限 root Candyroot chownuser1 students var ftproot 把 var students的属主定为user1 root Candyroot chmod750 var students即自己具有所有权限 同组成员只具有读和执行权限 而其他人不具有任何权限 3 修改配置文件 etc vsftpd vsftpd conf设置local enable yes write enable yes和chroot local usr yes三个选项即可 vsFTP服务器的使用举例3 例 配置vsftpd通过pam认证方式 添加虚拟用户 操作步骤如下 1 在 etc pam d 目录中创建一个文件ftp root Candyroot touch etc pam d ftp 2 在 etc pam d ftp里面加上如下两行 authrequi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论