FTP(File Transfer Protocol),是TCP/IP网络上两台计算机传送文件的协议,是在TCP/IP网络和Internet上最早使用的协议之一,属于网络协议组的应 用层。FTP客户机可以给服务器发出命令来下载文件、上传文件、创建或者改变服务器上的目录。

在安装FTP服务之前,请先关闭防火墙由于FTP端口一直开启,整个系统有安全风险。所以建议在传输文件等操作完成后关闭FTP服务。也可以选择具有加密功能的SSH(Secure Shell)服务。


命令配置:

1.打开终端,执行rpm-qa |grep vsftp命令检查FTP组件是否安装。

SUSE_FTP服务搭建_FTP服务、SUSE、VSFTP、FTP

如图显示已安装。

2.编辑/etc/vsftpd.conf配置文件

    vi /etc/vsftpd.conf



a)常规配置:

write_enable=YES//允许使用者有写的权限

local_enable=YES//允许本地用户有登录权限

ascii_upload_enable=YES//允许本地用户有上传权限

ascii_download_enable=YES//允许本地用有下载权限

listen=YES//使用独占的启动方式

#ssl_enable=YES//如果文件中是ssl_enable=NO,则不需要修改


b)允许匿名用户具有读写权限(上传/创建目录)

anon_upload_enable=YES//允许匿名用户具有上传权限

anon_mkdir_write_enable=YES//允许匿名用户具有创建目录权限

anon_world_readable_only=YES//允许匿名用户有读的权限

3、屏蔽本地所有用户浏览其他目录的权限(除了家目录,匿名用户本身只能访问家目录)

在默认配置下添加以下内容:

chroot_local_user=YES

4、屏蔽部分本地用户浏览其他目录的权限

在默认配置下添加以下内容:

chroot_local_user=NO

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd.chroot_list

另外再创建文件/etc/vsftpd.chroot_list,并添加需要屏蔽的用户。

5、性能选项

idle_session_timeout=600

data_connection_timeout=120

local_max_rate=50000 #本地用户的最高速率

anon_max_rate=30000#匿名用户的最高速率

修改/etc/passwd文件的用户家目录可以改变用户登录的目录

修改/etc/passwd文件的用户的登录shell为/sbin/nologin,则不能用于本地登录,可以用于ftp登录。

/etc/xinetd.d/vsftpd文件的主要内容:(“=”前后有空格)

only_from = 192.168.1.1|192.168.1.0/24 #只接收来至某ip或网段

no_access = 192.168.3.2|192.168.3.0/24 #拒绝接收来至某ip或网段

access_times = 8:00-17:00 #设置访问时间

instances = 200 #设置最大连接数

per_source = 5 #设置每个ip可有几个连接

/etc/vsftpd/vsftpd.conf 主配置文件


/etc/vsftpd.ftpusers 阻止用户访问FTP服务器的用户名称清单

/etc/vsftpd.userlist 控制用户访问FTP服务器的用户名称清单,由/etc/vsftpd/vsftpd.conf中的userlist_deny参数决这是允许还是拒绝

3.保存配置并退出

    1. 按“Esc”键,退出编辑。

    2. 输入:wq,保存修改并退出编辑模式。

4.编辑并保存“/etc/ftpusers”文件。

    1. 执行vi      /etc/ftpusers命令。


SUSE_FTP服务搭建_FTP服务、SUSE、VSFTP、FTP_02


http://127.0.0.1:65535/hedex/pages/SZB0802E/05/SZB0802E/05/resources/public_sys-resources/icon-note.gif说明:

/etc/ftpusers文件中列出的用户是禁止使用FTP登录的,如果要使这些用户通过FTP登录,需要将其注销,即在用户名前面添加#

    1. 按“i”键,进入编辑模式。

    2. 通过“Tab”键或者方向键将光标切换到允许通过FTP登录的用户前,如root,输入#


SUSE_FTP服务搭建_FTP服务、SUSE、VSFTP、FTP_04


    1. 按“Esc”键,退出编辑。

    2. 输入:wq,保存修改并退出编辑模式。

5.重新启动FTP服务。

执行/etc/init.d/vsftpd restart命令,显示如下。

SUSE_FTP服务搭建_FTP服务、SUSE、VSFTP、FTP_05

  1. 查看FTP服务状态。    

执行/etc/init.d/vsftpd status命令。

SUSE_FTP服务搭建_FTP服务、SUSE、VSFTP、FTP_06

  1. 关闭FTP服务,并将其设置为开机不自启动。(文件传输完成后,请关闭FTP服务。)

    1. 执行/etc/init.d/vsftpd      stop命令。

    2. 执行chkconfig      -del vsftpd命令,将FTP服务设置为开机不自启动。

      SUSE_FTP服务搭建_FTP服务、SUSE、VSFTP、FTP_07


验证FTP服务是否成功开启

FTP可通过图形界面或者命令终端两种方式登录,此处以命令终端登录方式为例,介绍验证FTP服务是否成功开启的操作步骤。

  1. 寻找另一台能与服务器网络互通,并且安装Windows操作系统的PC机,选择“开始 > 运行”,在弹出的“运行”对话框中执行cmd命令。

  2. 单击“确定”,在出现的命令行对话框执行ftp 192.165.1.13命令。    

  3. 按照系统提示输入“用户名”和“密码”连接服务器。    

  4. 当显示如下信息时,表示root用户登录FTP服务器成功。

    SUSE_FTP服务搭建_FTP服务、SUSE、VSFTP、FTP_08



图形化配置:


SUSE_FTP服务搭建_FTP服务、SUSE、VSFTP、FTP_09

SUSE_FTP服务搭建_FTP服务、SUSE、VSFTP、FTP_10