1.操作系统环境:
查看操作系统内核:
[root@rac1 ~]# uname -a
Linux rac1 2.6.32-220.el6.x86_64 #1 SMP Wed Nov 9 08:03:13 EST 2011 x86_64 x86_64 x86_64 GNU/Linux
查看操作系统发行版本:
[root@rac1 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.2 (Santiago)
2.FTP服务器介绍
FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上传"(Upload)。"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上传"文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。
3.搭建步骤
一般在各种linux的发行版中,默认带有的ftp软件是vsftp,从各个linux发行版对vsftp的认可可以看出,vsftp应该是一款不错的ftp软件。
(1)检查vsftpd软件是否安装
[root@rac1 ~]# rpm -qa |grep vsftpdvsftpd-2.2.2-6.el6_0.1.x86_64
从我查询结果来看vsftpd已经安装
(2)检查ftp客户端是否安装
[root@rac1 ~]# rpm -qa |grep ftp
我的环境没有安装,先从网上下载一个安装包:http://rpmfind.net/,进入网站后搜索ftp,因为我用的64位红帽系统,所以选择:ftp-0.17-54.el6.x86_64.rpm下载;下载完成后上传至linux服务器,然后安装
rpm -ivh ftp-0.17-54.el6.x86_64.rpm
4.
vsftpd软件的使用
使用vsftpd软件,主要包括如下几个命令:
启动ftp:service vsftpd start
停止ftp:service vsftpd stop
重启ftp:service vsftpd restart
5.vsftp的配置
ftp的配置文件主要有三个,在redhat 中位于/etc/vsftpd/目录下,分别是:
ftpusers 该文件用来指定那些用户不能访问ftp服务器。
user_list 该文件用来指示的默认账户在默认情况下也不能访问ftp
vsftpd.conf vsftpd的主配置文件
下面我们使用vi编辑vsftpd.conf文件
用户登录控制:
anonymous_enable=YES,允许匿名用户登录。
no_anon_password=YES,匿名用户登录时不需要输入密码。
local_enable=YES,允许本地用户登录。
deny_email_enable=YES,可以创建一个文件保存某些匿名电子邮件的黑名单,以防止这些人使用Dos攻击。
banned_email_file=/etc/vsftpd/banned_emails,保存电子邮件黑名单的目录(默认)
用户权限控制:
write_enable=YES,开启全局上传
local_umask=022,本地文件上传的umask设置为022,系统默认。
anon_upload_enable=YES,允许匿名用户上传,当然要在write_enable=YES的情况下。同时必须建立一个允许ftp用户读写的目录。
anon_mkdir_write_enable=YES,允许匿名用花创建目录
chown_uploads=YES,匿名用户上传的文件属主转换为别的用户,一般建议为root。
chown_username=whoever,改此处的whoever为要转换的属主,建议root
chroot_list_enable=YES,用一个列表来限定哪些用户只能在自己目录下活动。
chroot_list_enable=/etc/vsftpd/chroot_list,指定用户列表文件
nopriv_user=ftpsecure,指定一个安全账户,让ftp完全隔离和没有特权的账户
其他的建议不要配置。
用户连接和超时设置:
idle_session_timeout=600,默认的超时时间
data_connection_timeout=120,设置默认数据连接的超时时间
6.测试vsftp服务
为了便于测试,先在
FTP
服务器上的
var/ftp/pub
目录下建立一个
为了便于测试,先在
FTP
服务器上的
var/ftp/pub
目录下建立一个
为了便于测试,先在FTP服务器上的var/ftp/pub目录下建立一个txt文件,然后用本地IP进行测试:
还可以通过浏览器访问FTP服务器