安装和配置FTP

安装和配置FTP

查看系统是否安装ftp软件包,命令如下:

rpm –q vsftpd

若正常显示vsftpd的版本号就表明已经安装ftp软件包

若没有显示,则进行安装。

Suse的图形用户界面做的很不错,所以安装过程也比较简单。

1、打开YastSoftwareSoftware Management

2、在FilterPackage Groups,在下面的树形列表中ProductivityNetworkingFtp,也可以展开Ftp节点,选择其中的Servers节点;

3、在左侧的软件包列表中选择vsftpd,然后点击下方的Accept按钮,会提示插入光盘;

4、插入所需的光盘后,系统会自动开始安装,安装完毕,可以在下面的File List选项页中查看vsftpd相关的所有文件。

二、启动服务

安装完成后,vsftpd是作为一个独立的服务启动,不接受xinetd的管理。系统会自动在Service列表中添加名称vsftpd的服务。启动服务的步骤如下:

 1YastSystemSystem Services(Run level)

2、在服务列表中选择vsftpd,点击下方的Enable按钮,启动服务,Finish

注意:在启动vsftpd时可能会不能启动,有时是因为它所依赖的服务没有启动,如syslog,这时选中syslog,点击Enable按钮。如果还是不能启动,可以重新启动xinetd服务,然后再启动vsftpd服务。

或是执行命令启动服务:

1. 启动ftp服务,命令如下:

/etc/init.d/xinetd restart    

2. 查看是否已经启动ftp服务,命令如下:

chkconfig –list |grep vsftpd  

若启动成功会显示如下:

vsftpd on             

PS:   ftp 有两种启动模式:1.使用XINET模式 2.使用STANDALONE独立模式,系统如果两种模式都启动了,那么启动FTP服务的时候就会发生冲突,只要关闭STANDALONE独立模式就可以正常启动FTP服务。 那么我们先关闭STANDALONE独立模式再设置ftpxinetd模式启动:

l 、关闭STANDALONE独立模式:把/etc/vsftpd.conf 目录中的vsftpd.conf文件中的

listen=yes注释掉,改为:#listen=yes

2、设置ftpxinetd模式启动:把/etc/xinetd.d/telnet 目录中的telnet文件中的

disable=yes该项改为:disable=no

如发现没有这一项则把该项添加上去。

3、重启ftp服务:/etc/init.d/xinetd restart

三、遇到的问题

1、只允许匿名用户登录 530 This FTP server is anonymous only

现象:

ftp连接过程中,提示输入用户名,输入本机已有用户名angel,得到提示:530 This FTP server is anonymous only,登录失败。

原因:

安装vsftpd后,其默认为匿名FTP服务器,只允许匿名用户登录。

解决方法:

vsftpd有三种服务器方式:匿名方式、本地方式和虚拟用户方式,此处需要修改vsftpd的配置将其设为本地方式。vsftpd的配置文件位于/etc/目录下,名称为vsftpd.conf。下面只说明几处需要修改的地方:

local_enable=YES前的#去掉,使其可用,表示允许本地用户登录;

增加listen_port=21配置项,设置监听端口为21

该步骤可选,不允许匿名用户登录,将anonymous_enable=YES的值改为NO,根据实际需要设置。

重启vsftpd服务:service vsftpd restart(有时不可以执行此命令,可以执行重启ftp服务: /etc/init.d/xinetd restart)启动后,在进行测试,使用本地用户angel及其密码登录,成功。

ftp登录服务器10.3.3.26,发现普通用户账户可以登录但是root用户拒绝访问。

允许root账户ftp登录服务器:把/etc/ftpuser 中的ftpuser中的root这一项注释掉。

2、其他机器不能连接该服务器

现象:

本机测试通过后,在其他机器(WindowsRedhat)上使用ftp 192.168.1.8连接该服务器,得到Connection closed by remote hostConnection timed out提示信息,连接失败。

原因:

Suse的防火墙阻止了外来机器对FTP所用的端口的访问。

解决方法:

放开防火墙对FTP所使用的2021端口的限制,步骤如下:

i>                  YastSecurity and UsersFirewall

ii> 在左侧的列表中选择Allowed Services,令人感到以外的是,即使安装FTP服务器,在Servces to Allow列表中也没有FTP服务可供选择,但是SSHHTTPHTTPSSamba等都赫然在列,所以要使用高级设置。点击右下方法的Advanced按钮,打开高级设置对话框;

iii> TCP Ports中输入20 21,注意两个端口号之间使用空格分开,OK

iv> NextAccept,重新测试,连接成功,使用Suse系统中已有的angel及其密码登录,成功。

注意,虽然这里有些问题是在Suse下遇到,但是在其他操作系统中的vsftpd的配置中依然适用。

猜你喜欢

转载自809971096-qq-com.iteye.com/blog/1672640