FTP(File Transfer Protocol),是TCP/IP网络上两台计算机传送文件的协议,是在TCP/IP网络和Internet上最早使用的协议之一,属于网络协议组的应 用层。FTP客户机可以给服务器发出命令来下载文件、上传文件、创建或者改变服务器上的目录。
在下安装FTP服务之前,请先关闭防火墙;由于FTP端口一直开启,整个系统有安全风险。所以建议在传输文件等操作完成后关闭FTP服务。也可以选择具有加密功能的SSH(Secure Shell)服务。
命令配置:
1.打开终端,执行rpm-qa |grep 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.保存配置并退出
按“Esc”键,退出编辑。
输入:wq,保存修改并退出编辑模式。
4.编辑并保存“/etc/ftpusers”文件。
执行vi /etc/ftpusers命令。
说明:
/etc/ftpusers文件中列出的用户是禁止使用FTP登录的,如果要使这些用户通过FTP登录,需要将其注销,即在用户名前面添加#。
按“i”键,进入编辑模式。
通过“Tab”键或者方向键将光标切换到允许通过FTP登录的用户前,如root,输入#。
按“Esc”键,退出编辑。
输入:wq,保存修改并退出编辑模式。
5.重新启动FTP服务。
执行/etc/init.d/vsftpd restart命令,显示如下。
[img]http://img1.51cto.com/attachment/201306/182429816.png[/img]
查看FTP服务状态。
执行/etc/init.d/vsftpd status命令。
关闭FTP服务,并将其设置为开机不自启动。(文件传输完成后,请关闭FTP服务。)
执行/etc/init.d/vsftpd stop命令。
执行chkconfig -del vsftpd命令,将FTP服务设置为开机不自启动。
验证FTP服务是否成功开启
FTP可通过图形界面或者命令终端两种方式登录,此处以命令终端登录方式为例,介绍验证FTP服务是否成功开启的操作步骤。
寻找另一台能与服务器网络互通,并且安装Windows操作系统的PC机,选择“开始 > 运行”,在弹出的“运行”对话框中执行cmd命令。
单击“确定”,在出现的命令行对话框执行ftp 192.165.1.13命令。
按照系统提示输入“用户名”和“密码”连接服务器。
当显示如下信息时,表示root用户登录FTP服务器成功。
图形化配置:
更多SUSE相关信息见 专题页面