简单介绍:
vsftpd是一个能够执行在类UNIX操作系统上的FTPserver软件,它能够执行在Linux、BSD、Solaris、HP-UX等系统上。
1 vsftpd的安装
在ubuntu系统上安装vsftpd:
sudo apt-get install vsftpd2 vsftpd的配置
在linux系统中,配置文件一般位于/etc文件夹下,在ubuntu中。vsftpd的配置文件是/etc/vsftpd.conf。
FTP服务通常是供文件共享之用,一般在登陆FTPserver时须要输入username和password。当中有一种用户叫做匿名用户。也就是不论什么人都能够用这个username进行登陆,匿名用户的username通常是anonymous或者ftp。
vsftpd安装之后。默认是不准匿名用户登陆的,为了使匿名用户登陆。能够对/etc/vsftpd.conf进行改动。主要是以下几个部分的改动:
//同意匿名用户登陆,默认关闭anonymous_enable=YES//同意本地用户登陆local_enable=YES//同意写命令write_enable=YES//同意匿名用户上传anon_upload_enable=YES//同意匿名用户创建文件夹anon_mkdir_write_enable=YES//设定匿名用户的文件创建屏蔽字anon_umask=022之后,发现能够下载。可是不能上传,使用put命令时会发生553 Could not create file,原因是没有对FTPserver的文件夹进行权限改动:
因为不同系统上,FTPserver所使用的文件夹是不一样的,使用以下的命令能够知道FTPserver所使用的文件夹:
cat /etc/passwd | grep ftp |awk -F: '{print $6}'在我的系统上是/srv/ftp,于是用以下的命令对该文件的权限进行改动:
sudo chmod 777 /srv/ftp发现登陆后。会出现下面错误:
500 OOPS: vsftpd: refusing to run with writable root inside chroot()这是因为文件的安全问题而引起的,解决的方法是,在/srv/ftp以下新建一个目录,将它的权限改动为777,之后的上传操作都在这个目录中进行。
3 vsftpd的使用
3.1 vsftpd的开启和关闭
//开启vsftpd服务service vsftpd start//关闭vsftpd服务service vsftpd stop//重新启动vsftpdservice vsftpd restart//又一次载入配置文件service vsftpd reload3.2 vsftpd的登陆和登出
//链接FTPserverftp 127.0.0.1之后会要求输入username和password,假设是匿名用户,username是anonymous或者ftp。password任意。
假设要退出ftpserver,在ftp的命令行下输入exit就可以。
3.3 上传和下载
在ftp的命令行下输入help能够列出该server支持的命令:
ftp> helpCommands may be abbreviated. Commands are:! dir mdelete qc site$ disconnect mdir sendport sizeaccount exit mget put statusappend form mkdir pwd structascii get mls quit systembell glob mode quote suniquebinary hash modtime recv tenexbye help mput reget tickcase idle newer rstatus tracecd image nmap rhelp typecdup ipany nlist rename userchmod ipv4 ntrans reset umaskclose ipv6 open restart verbosecr lcd prompt rmdir ?delete ls passive runiquedebug macdef proxy send上传能够使用send或者put,下载能够使用recv或者get。
//上传文件。将本地的local_file上传到server上。命名为remote_fileput local_file remote_file//下载文件。将server上的remote_file下载到本地,命名为local_fileget remote_file local_file