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

下载本文档

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

文档简介

1、XX大学大学XX系系 XXX2022年年3月月6日日本章提要本章提要vvsFTP服务器的安装和启动vFTP客户端命令简介v用户管理文件和的内容v主要配置文件解析vFTP(File Transfer Protocol,文件传输协议)服务器提供Internet文件传输服务。Linux中常用的有WU-FTP、ProFTP、PureFTP及vsFTP等。在Fedora 8下自带的是vsFTP,它是一个小巧、高效、安全的FTP服务器软件.本章将介绍vsFTP服务器的安装、配置及使用等。 vsFTP简介简介v vsFTP是一种基于GPL的在UNIX/Linux中非常安全且快速的FTP服务器,其中vs是“V

2、ery Secure”的缩写,具有安全、高速和稳定的性能。在速度方面,使用ASCII模式下载数据时,速度是WU-FTP的两倍,如果Linux使用的是版本的内核,在千兆以太网上的下载速度可达86Mbps。在稳定性方面,在单机服务器上支持4000个以上的并发连接,最高可支持15000个并发连接。除此之外,vsFTP还具有如下特性:v 支持基于IP的虚拟FTP服务器;v 支持虚拟用户;v 支持PAM或xinetd/tcp_wrappers的认证方式;v 支持两种运行方式:standalone和xinetd方式;v 支持每个虚拟用户的独立配置;v 支持带宽限制。vsFTP的运行模式的运行模式v一种是独

3、立(standalone)运行模式,另外一种是xinetd(eXtended Internet Services Daemon,即:扩展的Internet服务守护进程)模式。两种模式运行机制是不同的,独立运行模式适合专业的FTP服务器,且FTP总是一直有人访问,占用资源比较大,如果FTP服务器总是有人访问和登入建议采用这种模式。如果FTP服务器访问人数比较少,建议您用xinetd模式。xinetd模式的运行方式一直监听端口,当客户端(Client)有FTP连接请求时,首先会将连接传至xinetd,xinetd再将此要求传至vsftpd,启动相应的vsftp服务进程(即:vsftpd)。以下的内

4、容主要是介绍独立模式下的vsftpd启动和配置方式。vsFTP服务器的安装服务器的安装v在Fedora 8中带的vsFTP服务器版本为,在安装之前可用如下命令检查是否已安装vsftpd:rootCandy root#rpm qa vsftpdv若是在安装Linux时没有选择安装vsFTP服务器,可以从Fedora 8安装光盘DVD中的Packages目录下找出名为的文件,然后输入以下指令,系统即将自动完成vsFTP服务器的安装: rootCandy root#rpm ivhvsFTP服务器的启动服务器的启动v安装完成后,系统将会生成一个名为vsftpd的服务。要启动vsftpd,最简单的方式如

5、下:rootCandy root# /etc/ start starting vsftpd for vsftpd: ok v 也可以使用命令:rootCandy root#service vsftpd start 来启动vsftpd。自动启动自动启动vsFTP服务器服务器v如果想在图形界面下启动vsFTP服务器,可以选择“系统”|“管理”|“服务”选项,在打开“服务配置”画面后,选中“vsftpd”项目,然后单击工具栏中的“开始”按钮即可启动vsftpd服务器,如图12-1所示。v图12-1 “服务状态设置”设置画面测试测试vsftpd是否已经启动是否已经启动v 可用telnet检验vsftp

6、d是否已经启动: rootCandy root# telnet 21 Trying . Connected to . Escape character is . 220 (vsFTPd 2.0.5) v 从上面的内容可以看出能telnet到本机的vsftp服务器的21号端口,确认vsftpd已经被启动,按“Ctrl+”中断会话 v v 再按“q”退出telnet v telnet q Connection closed. rootCandy root# 测试测试ftp的运行的运行v 默认情况下,安装好vsftp服务器后就可以使用匿名用户a

7、nonymous(或ftp)下载文件了。例如,使用匿名用户下载文件。操作步骤如下:v 1)生成一个用于测试的文件。v 默认情况下,匿名用户下载目录/var/ftp/pub下没有任何内容,为了进行测试,可以先生成一个测试文件。 rootCandy root#echo “Welcome to my vsFTP Server” /测试测试ftp的运行(续)的运行(续)v 2)使用匿名用户(ftp或anonymous)登录ftp: rootCandy root#ftpConnected to ().220 (vsFTPd 2.0.5)Name (

8、:root): anonymous 331 Please specify the password.Password: /输入Email地址或任意字符串作为anonymous匿名账号的口令230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. 测试测试ftp的运行(续)的运行(续)v3) 列表显示匿名FTP服务器目录并进入pub目录。vftp ls 227 Entering Passive Mode (127,0,0,1,126,111) 150 Here comes the

9、directory listing. drwxr-xr-x 2 0 0 4096 Oct 03 19:09 pub 226 Directory send OK. vftp cd pub 250 Directory successfully changed. 测试测试ftp的运行(续)的运行(续)v 4) 显示/var/ftp/pub目录下的内容并下载文件。v ftp ls 227 Entering Passive Mode (127,0,0,1,44,205) 150 Here comes the directory listing. -r-xr-xr-x 1 0 1 31 Oct 03 19

10、:09 226 Directory send OK. v ftp get 227 Entering Passive Mode (127,0,0,1,99,247) 150 Opening BINARY mode data connection for (31bytes). 226 File send OK. 31 bytes received in 0.000188 secs (1.6e+02 Kbytes/sec) v ftp !ls anaconda- v 通过显示本地文件命令“!ls”确认已经将文件下载到本地。测试测试ftp的运行(续)的运行(续)v5) 测试是否能上传文件到/var/f

11、tp/pub目录。vftp put local: remote: 227 Entering Passive Mode(127,0,0,1,233,16)550 Permission Denied.从上面信息可以看出上传文件失败v6) 退出FTP vftp bye 221 Goodbye. FTP客户端命令简介客户端命令简介v要登录到vsFTP服务器,在Windows系统中可以使用图形化的FTP客户端软件,如CuteFTP和LeapFTP等,也可以直接在命令行状态下使用FTP命令。FTP命令的格式命令的格式vFTP(机器名、网址或IP地址)v若连接成功,系统提示输入用户名(Name)及密码(Pa

12、ssword)。进入FTP站点后,用户就可以使用相应的命令进行各种操作了。常用的常用的FTP命令命令vHelp或? vAscii、binary、typevbye、quitvCd、lcd、pwd、!vDele、renamevGet、mget、put、mput、recv、sendvLs、dir、mkdir、rmdirvOpen、close、disconnect、uservverbose、status、bellvsFTP服务器的配置服务器的配置v安装好vsFTPD后,会在/etc/vsftpd目录下生成ftpusers和user_list文件,同时会生成文件。用户管理文件用户管理文件ftpusers

13、v /etc/vsftpd/ftpusers是vsFTP服务器中用来管理帐号的配置文件。但需要注意的是:本文件中列出的用户名是指不允许登录vsFTP服务器的用户,默认的文件内容如下:rootCandy etc#cat ftpusers#Users that are not allowed to login via ftpRootBinDaemonGamesNobodyv 从上面例子可以看出,默认情况下,root帐号是不允许登录vsFTP服务器的。如希望让root登录,只需修改此文件,在“root”前加“#”注释掉即可。但从安全角度考虑,建议用户不要使用root登录FTP。对于此文件中的其它帐号

14、,均为系统帐号,建议不要做任何修改。/etc/vsftpd/user_list文件文件rootCandy etc#cat /etc/vsftpd/user_list#If userlist_deny=NO,only allow users in this file#IF userlist_deny=YES(default), never allow users in this file,and#do not even prompt for a password.RootBinGamesNobodyv 此文件中指定的用户默认情况(即在/etc/中设定了userlist_deny=YES)下也不能

15、访问FTP服务器,而如果在中设定了userlist_deny=NO,则仅仅允许此文件中指定的用户访问FTP服务器。此方面的例子将在后面介绍。主要配置文件主要配置文件v/etc/是vsftp服务器的主要配置文件,建议读者认真理解里面的内容,以使vsFTP服务器发挥最大的效能。此文件的设置格式如下:v参数设置值 v若是以“#”开头的行表示注释文字,会被服务器所忽略。下面将分类解释各参数的含义:匿名用户选项匿名用户选项 v anonymous_enable=YES|NO v ftp_username= v no_anon_password=YES|NO v deny_email_enable=YES

16、|NO v banned_email_file=/etc/ v anon_root= v anon_world_readable_only=YES|NO v anon_upload_enable=YES|NO v anon_mkdir_write_enable=YES|NO v anon_other_write_enable=YES|NO v chown_uploads=YES|NO v chown_username=v local_enable=YES|NO v local_root= v user_config_dir= 虚拟用户用户选项虚拟用户用户选项vguest_enable=YES|

17、NO 若是启动这项功能,所有的不以匿名登录的用户,都视为“guest”类型,而此类用户的实际权限就是“guest_username”选项中所指定的帐号。默认不启用此选项。 vguest_username= 定义vsFTPD的guest用户登录时在系统中的帐号名称,默认值为ftp。 连接选项连接选项v (1)监听地址与控制端口 listen_address=ip address listen_port=port_value v (2)FTP模式与数据端口 port_enable=YES|NO Connect_from_port_20=YES|NO ftp_data_port=port numbe

18、r port_promiscuous=YES|NO pasv_enable=YES|NO pasv_min_port=port number pasv_max_port=port number pasv_promiscuous=YES|NO pasv_address= v (3)ASCII模式 ascii_upload_enable=YES|NO ascii_download_enable=YES|NO 性能与负载控制选项性能与负载控制选项v超时选项 idle_session_timeout= data_connection_timeout= accept_timeout=numerical

19、value connect_timeout=numerical value v负载控制 max_clients=numerical value max_per_ip=numerical value anon_max_rate=value local_max_rate=value 设置速率举例设置速率举例v 设定系统本地用户允许的最大数据传输速率,以Bytes/s为单位。默认为0。此选项对所有的用户都生效。此外,也可以在用户个人配置文件中使用此选项,以指定特定用户可获得的最大数据传输速率。 v 例如,为特定用户设置传输速率。v 操作步骤如下: v 在/etc/中指定用户个人配置文件所在的目录,如

20、:v user_config_dir=/etc/vsftpd/userconf v 生成/etc/vsftpd/userconf目录。 rootCandy rootmkdir /etc/vsftpd/userconfv 用户个人配置文件是在该目录下,生成与特定用户同名的文件,如: rootCandy roottouch /etc/vsftpd/userconf/user1 v 在用户user1的个人配置文件中设置local_max_rate参数,如:local_max_rate=80000 (即为80KB/s)v 以上步骤设定FTP用户user1的最大数据传输速度为80KBytes/s。 v

21、vsFTPD 对于速度控制的变化范围大概在80%到120%之间。比如我们限制最高速度为100KBytes/s, 但实际的速度可能在80KBytes/s 到120KBytes/s 之间。当然,若是线路带宽不足时,速率自然会低于此限制。 安全措施选项安全措施选项v (1) 用户登录控制 v pam_service_name=vsftpd 指出vsFTPD进行PAM认证时所使用的PAM配置文件名,默认值是vsftpd,默认PAM配置文件是/etc/。 v /etc/ vsFTPD禁止列在此文件中的用户登录FTP服务器。这个机制是在/etc/中默认设置的。v userlist_enable=YES|N

22、O 若是启用此功能,vsFTPD将读取/etc/userlist_file参数所指定的文件中的用户列表。当列表中的用户登录FTP服务器时,该用户在提示输入密码之前就被禁止了。即该用户名输入后,vsFTPD查到该用户名在列表,vsFTPD就直接禁止该用户登录,不会再进行询问密码等后续步聚,这可避免明文(Clear Text)在网络上传输。默认值为NO。 安全措施选项(续)安全措施选项(续)vuserlist_file=/etc/vsftpd.user_list 指出userlist_enable选项生效后,被读取的包含用户列表的文件。默认值是/etc/。 vuserlist_deny=YES|N

23、O 此选项在userlist_enable 选项启动后才生效。决定禁止还是只允许由/etc/userlist_file指定文件中的用户登录FTP服务器。YES,默认值,禁止文件中的用户登录,同时也不向这些用户发出输入口令的提示。若设为停用(即为NO),则只允许在文件中的用户登录FTP服务器。 vtcp_wrappers=YES|NO 若值为YES,将在vsFTPD中使用TCP_wrappers远程访问控制机制, 因此可利用/etc/与/etc/文件来定义可联机或是拒绝的来源地址。但默认不启用此选项。安全措施选项(续)安全措施选项(续)v(2) 目录访问控制 chroot_list_enable

24、=YES|NO chroot_list_file=/etc/vsftpd/chroot_list chroot_local_users=YES|NO passwd_chroot_enable 安全措施选项(续)安全措施选项(续)v(3) 文件操作控制 hide_ids=YES|NO ls_recurse_enable=YES|NO write_enable=YES|NO secure_chroot_dir= 安全措施选项(续)安全措施选项(续)v(4) 新增文件权限设定 vanon_umask= 匿名用户新增文件的umask 数值。默认值为077。 这表示匿名用户新增的文件权限最大为700(7

25、77077700)。vfile_open_mode= 表示上传文件的权限,与chmod命令所使用的数值相同。如果希望上传的文件可以执行,设此值为0777。默认值为0666。 vlocal_umask= 本地用户新增文件的umask 数值。默认值为077(其他大多数的FTP服务器都是使用022。您也可以修改为022)。提示信息选项提示信息选项vftpd_banner=login banner string vbanner_file=/directory/vsftpd_banner_file vdirmessage_enable=YES|MO vmessage_file= 日志设置选项日志设置选项

26、vxferlog_enable=YES|NO vxferlog_file= vxferlog_std_format=YES|NO vlog_ftp_protocol=YES|NO 其他设置其他设置 vsetproctitle_enable=YES|NO vtext_userdb_names=YES|NOvuser_localtime=YES|NO vcheck_shell=YES|NO vnopriv_user= vpam_service_name= vsFTP服务器的使用举例服务器的使用举例1【例】配置匿名用户,使之可以上传/下载文件。v 操作步骤如下:(1)在/var/ftp/创建一个上传

27、目录,并修改权限。rootCandy rootcd /var/ftp /首先进入/var/ftp目录。rootCandy ftp# mkdir /var/ftp/incoming /创建incoming目录。rootCandy ftp#chmod 777 /var/ftp/incoming /更改incoming目录的权限为777。vsFTP服务器的使用举例服务器的使用举例1(续)(续)(2)编辑/etc/文件 rootCandy rootvi /etc/ 确保 anonymous_enabled=YES有效。v 找到“# anon_upload_enable=YES”行,去掉前面的注释符号“

28、#”,并在下面添加如下行:chown_uploads=YESanon_umask=077anon_mkdir_write_enable=YESanon_world_readable_only=NO(3)存盘退出。v 通过前面的配置后,匿名用户ftp(或anonymous)既可下载文件,又可上传文件到incoming目录,也能在incoming目录下创建新的目录。vsFTP服务器的使用举例服务器的使用举例2【例】配置vsFTPD,使本地用户user1具有上传/下载、user2只具有下载功能,其中user1和user2同属于students组。v 操作步骤如下:(1)创建用户组 students和

29、FTP的主目录rootCandy rootgroupadd studentsrootCandy rootmkdir /var/ftprootrootCandy rootuseradd -G students d /var/ftproot M user1v 注:-G:用户所在的组;v -d:表示创建用户主目录的位置;v -M:不建立默认的用户主目录,也即在/home下不创建用户主目录。rootCandy rootuseradd G students d /var/ftproot M user2vsFTP服务器的使用举例服务器的使用举例2(续)(续)(2)改变目录的属主和权限rootCandy r

30、ootchown user1.students /var/ftproot /把/var/students的属主定为user1。rootCandy rootchmod 750 /var/students 即自己具有所有权限,同组成员只具有读和执行权限,而其他人不具有任何权限。(3)修改配置文件/etc/ 设置local_enable=yes,write_enable=yes和chroot_local_usr=yes三个选项即可。vsFTP服务器的使用举例服务器的使用举例3v 【例】配置vsftpd通过pam认证方式,添加虚拟用户。v 操作步骤如下:(1)在/etc/目录中创建一个文件ftp rootCandy root# touch /etc/ftp(2)在/etc

温馨提示

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

评论

0/150

提交评论