您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > 第08章FTP服务的配置与应用
第08章FTP服务的配置与应用本章导读FTP服务的概述FTP服务的安装与配置虚拟用户管理程序UsermanagerforPureFTPd的安装使用UsermanagerforPureFTPd管理虚拟用户FTP服务的配置启动和停止FTP服务测试FTP服务使用pure-ftpd实现虚拟主机注册服务8.1FTP服务的概述•FTP服务的简介•FTP的工作原理•匿名用户•主动模式和被动模式FTP服务的简介FTP协议就是文件传输控制协议。它可以使文件通过网络从一台主机传送到同一网络的另一台主机上,而不受计算机类型和操作系统类型的限制。无论是PC机、服务器、大型机,还是DOS操作系统、Windows操作系统、Linux操作系统,只要双方都支持FTP协议,就可以方便地传送文件。FTP的工作原理FTP服务的具体工作过程如下。①当FTP客户端发出请求时,系统将动态分配一个端口(如1032)。②若FTP服务器在端口21侦听到该请求,则在FTP客户端的端口1032和FTP服务器的端口21之间建立起一个FTP会话连接。③当需要传输数据时,FTP客户端再动态打开一个连接到FTP服务器的端口20的第2个端口(如1033),这样就可在这两个端口之间进行数据的传输。当数据传输完毕后,这两个端口会自动关闭。④当FTP客户端断开与FTP服务器的连接时,客户端上动态分配的端口将自动释放掉。匿名用户多数的FTP站点都提供了匿名访问,它使所有的用户都能通过一个通用的账户来访问站点指定的公共区域。这个账户就是“anonymous”,它通常以E-mail地址作为口令。主动模式和被动模式在主动模式中,FTP客户端随机开启一个大于1024的端口X向服务器的21号端口发起控制连接请求,然后开放X+1号端口进行监听;FTP服务器接受请求并建立控制连接会话。如果客户端在控制会话中发送数据连接请求,那么服务器在接收到命令后,会用其本地的FTP数据端口(通常是20)来连接客户端指定的端口X+1进行数据传输。主动模式和被动模式被动模式的控制连接和数据连接都是由FTP客户端发起的。首先FTP客户端随机开启一个大于1024的端口X向服务器的21端口发起连接,同时会开启X+1端口。然后向服务器发送PASV命令,通知服务器自己处于被动模式。服务器收到命令后,会开放一个大于1024的端口Y进行监听,然后用PORTY命令通知客户端,自己的数据端口是Y。客户端收到命令后,会通过X+1号端口连接服务器的端口Y,然后在两个端口之间进行数据传输。这样就能使防火墙知道用于数据连接的端口号,而使数据连接得以建立。8.2FTP服务的安装与配置•安装Apache服务•安装MySQL数据库和相关程序•安装pure-ftpd•生成pure-ftpd服务管理脚本•配置匿名用户登录环境安装Apache服务由于基于Web界面的pure-ftpd虚拟用户管理软件UsermanagerforPureFTPd使用PHP编写而成,因此在使用前应安装Apache服务器并建立好PHP的运行环境。安装Apache的具体方法参见第7章的相关内容。安装MySQL数据库和相关程序1.安装MySQL服务及相关程序2.安装php-mysql支持包3.启动MySQL服务4.设置自动运行MySQL服务5.修改MySQL用户root的口令安装pure-ftpd到处下载pure-ftpd最新的版。(1)解压安装包tarzxvfpure-ftpd-1.0.21.tar.gz(2)进入解压目录cdpure-ftpd-1.0.21安装pure-ftpd(3)配置pure-ftpd并指定各种安装选项./configure\--prefix=/usr/local/pureftpd\--with-mysql\--with-virtualchroot\--with-virtualhosts\--with-virtualroot\--with-diraliases\--with-uploadscript\--with-cookie\--with-quotas\--with-sysquotas\--with-ratios\--with-throttling\--with-largefile\--with-peruserlimits\--with-paranoidmsg\--with-welcomemsg\--with-language=simplified-chinese安装pure-ftpd(4)编译make(5)安装makeinstall(6)生成配置脚本cpconfiguration-file/pure-config.pl/usr/local/pureftpd/sbin/(7)修改配置脚本权限chmod+x/usr/local/pureftpd/sbin/pure-config.pl(8)建立FTP主目录mkdir/ftproot生成pure-ftpd服务管理脚本①进入pure-ftpd解压目录,编辑contrib子目录里的redhat.init文件。找到语句“fullpath=/usr/local/sbin/$prog”,将其改为“fullpath=/usr/local/pureftpd/sbin/$prog”;找到语句“pureftpwho=/usr/local/sbin/pure-ftpwho”,将其改为“pureftpwho=/usr/local/pureftpd/sbin/pure-ftpwho”。生成pure-ftpd服务管理脚本②执行以下命令将文件redhat.init复制到/etc目录中并重命名为pure-ftpd。cpcontrib/redhat.init/etc/init.d/pure-ftpd③执行以下命令设置文件为可执行。chmod+x/etc/init.d/pure-ftpd④执行命令chkconfig--addpure-ftpd添加pure-ftpd服务到系统中,使pure-ftpd可以随系统启动而自动运行。配置匿名用户登录环境使用以下命令为其建立目录/var/ftp。mkdir/var/ftp如果希望FTP匿名用户能够上传文件到FTP服务器,还要保证ftp系统账户对主目录有写入权限。可以通过以下命令设置/var/ftp主目录的所有者和所有组为ftp,使得ftp系统账户对主目录有写入权限。chownftp:ftp/var/ftp8.3虚拟用户管理程序UsermanagerforPureFTPd的安装•安装UsermanagerforPureFTPd•配置UsermanagerforPureFTPd安装UsermanagerforPureFTPd到处下载UsermanagerforPureFTPd。①执行以下命令解压安装包。tarzxvfftp_v2.1.tar.gz②执行下面的命令将UsermanagerforPureFTPd目录放置在Apache的主目录中。cp-aftp/var/配置UsermanagerforPureFTPd①确保httpd服务器和MySQL服务启动后,使用Web浏览器访问“”或“域名/pureftp/install.php”会出现UsermanagerforPureFTPd安装向导界面配置UsermanagerforPureFTPd配置UsermanagerforPureFTPd配置UsermanagerforPureFTPd配置UsermanagerforPureFTPd配置UsermanagerforPureFTPd配置UsermanagerforPureFTPd配置UsermanagerforPureFTPd配置UsermanagerforPureFTPd配置UsermanagerforPureFTPd在/etc目录中创建pureftpd-mysql.conf文件,并将图8-21中的灰色底纹的所有配置语句复制到文件中。重新启动PureFTPd服务器。单击“Step7”按钮,完成设置。8.4使用UsermanagerforPureFTPd管理虚拟用户确保在httpd服务器启动后,使用Web浏览器访问“”或“域名/pureftp/index.php”会出现认证页面8.4使用UsermanagerforPureFTPd管理虚拟用户登录后就会进入UsermanagerforPureFTPd管理主页面8.4使用UsermanagerforPureFTPd管理虚拟用户单击“按此新增账号”超链接添加FTP账户,在增加用户页面中可以设置用户的文件配额、磁盘配额、上传/下载比和带宽等信息。8.4使用UsermanagerforPureFTPd管理虚拟用户pure-ftpd对FTP账户有着较合理且严密的管理体系,可以控制FTP账户以下功能。(1)文件配额(2)磁盘配额(3)上传/下载比率(4)上传/下载带宽(5)IP访问地址8.5FTP服务的配置1.设置是否将用户锁定在主目录中ChrootEveryoneyes2.设置同时登录到FTP服务器的最大链接数MaxClientsNumber503.设置每个IP最大链接数MaxClientsPerIP84.设置是否只允许匿名用户连接AnonymousOnlyno8.5FTP服务的配置5.设置是否允许匿名用户登录NoAnonymousno6.设置登录欢迎信息文件的位置FortunesFile/usr/share/fortune/zippy7.设置用户空闲时间超过限值MaxIdleTime158.设置是否允许匿名用户建立目录AnonymousCanCreateDirsno8.5FTP服务的配置9.设置是否允许下载由匿名用户上传的文件AntiWarezyes10.设置FTP服务器绑定的IP地址和端口Bind192.168.16.177,2111.设置匿名用户的带宽AnonymousBandwidth812.设置是否允许匿名用户上传文件AnonymousCantUploadno13.设置是否自动建立用户主目录CreateHomeDiryes14.设置每个用户最大的并发连接数。PerUserLimits3:208.6启动和停止FTP服务1.启动FTP服务/etc/init.d/pure-ftpdstart2.停止FTP服务/etc/init.d/pure-ftpdstop3.重新启动FTP服务/etc/init.d/pure-ftpdrestart8.6启动和停止FTP服务4.自动启动FTP服务如果需要让FTP服务随系统启动而自动加载,可以执行“ntsysv”命令启动服务配置程序,找到“pure-ftpd”服务,在其前面加上星号(*),然后选择“确定”即可。8.7测试FTP服务确认pure-ftpd服务已经启动后,可在FTP客户端访问pure-ftpd服务器。如果能用匿名用户anonymous和UsermanagerforPureFTPd建立的账户登录,则表示pure-ftpd工作正常。在服务器上运行以下命令可以查看当前登录到FTP的用户信息/usr/local/pureftpd/sbin/pure-ftpwho8.8使用pure-ftpd实现虚拟主机注册服务•设置pure-ftpd•生成MySQL数据库•编写用户注册程序•设置Apache服务器并编写实现用户访问转向PHP程序设置pure-ftpd①将pureftpd安装目录下的pureftpd-mysql.conf文件复制到/etc目录中,使用命令“vi/etc/pureftpd-mysql.conf”编辑pureftpd-mysql.conf文件
本文标题:第08章FTP服务的配置与应用
链接地址:https://www.777doc.com/doc-1599556 .html