阅读以下说明,回答问题1至问题3,将解答填入答题纸对应的解答栏内。
【说明】
应用FTP在两台计算机之间传输文件,一台计算机作为FTP客户端,安装FTP客户端软件(或操作系统自带);另一台作为FTP服务器,安装FTP服务端软件(如vsftp)。
【问题1】(4分,其中空(2)2分,空(1)、空(3)各1分)
FTP协议属于TCP/IP模型中的(1)协议,基于TCP协议在客户端和服务器之间传送所有数据,TCP是一个(2)的协议,其主要特点是(3),这对于文件传输而言是非常重要的。
其中(1)、(2)备选答案:
(1)
A.应用层
B.传输层
C.网络层
D.物理层
(2)
A.无连接
B.面向连接
【问题2】(4分)
FTP服务器有两个保留的端口号。在默认情况下,端口(4)用于发送和接收FTP的控制信息,端口(5)用于发送和接收FTP数据。
FTP客户端与FTP服务器建立连接时,系统为其自动分配一个端口号,可选择的范围是(6) ~ (7)。
【问题3】(7分)(空(10)2分,其它每空1分)
(8)是Linux系统的守护进程,而vsftp不是守护进程管辖下的服务,可采用下面的命令启动vsftp服务:
/etc/rC.d/init.d/vsftpd (9)
vsftp的配置文件是/etc/vsftpd/vsftpD.conf,该文件有很多配置项,其中:
# anonymous_enable=[YES],允许以(10)模式登录ftp服务器。
# local_umask=022,指定了访问权限屏蔽字。如果用户建立一个目录,则同组用户对该目录的访问权限是(11)。
vsftp的默认访问目录是(12),客户端可在这个目录下上传、下载文件。
除了专用ftp客户端程序外,不能用来访问ftp服务器的是(13)。
其中(8)、(12)、(13)空的填写内容在以下候选答案中选择:
(8)
A.xinetd
B.service
C.admin
(12)
A./etc/ftp
B./var/ftp
C./usr/ftp
(13)
A.DOS命令行
B.IE浏览器
C.outlook
【问题1】(4分,其中空(2)2分,空(1)、空(3)各1分)
(1)A (或“应用层”)
(2)A (或“面向连接”)
(3)可靠性
【问题2】(4分)
(4)21
(5)20
(6)1024
(7)65535
【问题3】(7分)(空(10)2分,其它每空1分)
(8)A (或“xinetd”)
(9)start
(10)匿名用户
(11)5 (或“可读可执行”)
(12)B (或“/var/ftp”)
(13)C (或“outlook”)
FTP文件传送协议(File Transfer Protocol,简称FTP),是一个用于从一台主机到另送文件的协议。
FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)察看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去。
与大多数Internet服务一样,FTP也是一个客户机/服务器系统。用户通过一个支持FTP协议的客户机程序,连接到在远程主机上的FTP服务器程序。用户通过客户机程序向服务器程序发出命令,服务器程序执行用户所发出的命令,并将执行的结果返回到客户机。比如说,用户发出一条命令,要求服务器向用户传送某一个文件的一份拷贝,服务器会响应这条命令,将指定文件送至用户的机器上。客户机程序代表用户接收到这个文件,将其存放在用户目录中。
一个是数据端口,一个是控制端口,控制端口一般为21,而数据端口不一定是20,这和FTP的应用模式有关,如果是主动模式,应该为20,如果为被动模式,由服务器端和客户端协商而定。
xinetd(eXtended InterNET services daemon)
xinetd提供类似于inetd+tcp_wrapper的功能,但是更加强大和安全。
xinetd已经取代了inetd,并且提供了访问控制、加强的日志和资源管理功能,已经成了Red Hat 7 和 Mandrake 7.2的Internet标准超级守护进程。
xinetd 用括号括起的、扩展了的语法取代了inetd中的通用的行。另外,还添加了日志和访问控制功能。虽然inetd可以使用Venema的tcp_wrappers 软件(tcpd)控制TCP的连接,但是你不能用它来控制 UDP连接。此外,inetd对RPC(portmapper)类型的服务也处理不好。另外,虽然使用inetd你可以控制连接速度 ( 通过给wait或是no wait 变量附加一个数值,例如nowait.1表示每隔一秒钟一个实例),你不能控制实例的最大数。这能导致进程表攻击(例如,一个有效的拒绝服务攻击)。
可以使用以下命令来启动、停止和重启vsftpd服务器程序:
[root@lib1 root] # service vsftpd [ start | stop | restart ] 或
[root@lib1 root] # etc/rc.d/init.d/vsftpd [ start | stop | restart ]
如果允许匿名用户上传文件,可以修改vsfptd.conf的相关选项,修改如下:
anonymous_enable=yes
write_enable = yes
anon_upload_enable = yes
anon_mkdir_write_enable=yes
可读的 可写的 可执行的 无访问权限的
- rwx r-x ---
文件类型 文件所有者 所在组 其他用户
如果要允许匿名访问,还需要创建ftp用户,并将其主目录设置为/var/ftp。在RedHat Linux 9.0中这些都已默认设置好了,只需要创建一个/var/ftp目录即可。
[root@localhost root]# mkdir /var/ftp
为了安全,目录“/var/ftp”不应该属于用户“ftp”,也不应该有写权限。在此,可如下设置:
[root@localhost root]# chown root.root /var/ftp
[root@localhost root]# chmod 755 /var/ftp