ftp下载地址:

http://mirror.centos.org/centos/7/os/x86_64/Packages/

vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。

vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开放源代码的ftp服务器软件,支持很多其他的 FTP 服务器所不支持的特征。比如:非常高的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟用户、支持IPv6、速率高等。

vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。

1.ftp客户端

wget http://mirror.centos.org/centos/7/os/x86_64/Packages/ftp-0.17-67.el7.x86_64.rpm

rpm -ivh ftp-0.17-67.el7.x86_64.rpm

或者

yum install -y ftp

2.ftp服务端(配置虚拟用户,用户密码存放为本地文件)

##安装vsftp

yum -y install vsftpd

##创建vsftpd服务的宿主用户,并设置目录/home/ftp

useradd vsftpd -d /home/ftp -s /bin/false

##添加vsftp配置

mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

vim /etc/vsftpd/vsftpd.conf                      ##添加如下配置

local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
xferlog_std_format=YES
nopriv_user=vsftpd
async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
listen=YES
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
pam_service_name=vsftpd
userlist_enable=YES
userlist_file=/etc/vsftpd/user_list
tcp_wrappers=YES
guest_enable=YES
guest_username=vsftpd
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vconf
allow_writeable_chroot=YES
anonymous_enable=NO
local_enable=YES
use_localtime=YES
##listen_port=21

##创建存放用户文件

vim /etc/vsftpd/chroot_list                  ##创建chroot_list文件

vsftpd

vim /etc/vsftpd/vsftpd_login.txt        ##建立虚拟用户名单文件;一行用户,一行密码

user1
123456

##生成虚拟用户数据文件

##yum install pam* db4* --skip-broken -y                             ##如果缺少命令则安装

db_load -T -t hash -f /etc/vsftpd/vsftpd_login.txt /etc/vsftpd/vsftpd_login.db

chmod 600 /etc/vsftpd/vsftpd_login.db

##配置PAM验证文件

vim /etc/pam.d/vsftpd              ##注释掉原文件的所有内容或最上面添加,根据实际情况添加:

##32位系统:

auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login 
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login 

##64位系统:

auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

##在用户配置目录下进行用户配置

mkdir /etc/vsftpd/vconf

mkdir -p /data/user1

chmod 755 /data

chmod 777 /data/user1

cd /etc/vsftpd/vconf

vim user1                        ##配置vsftp用户user1,文件名与虚拟用户名一样

local_root=/data/user1
write_enable=YES
anon_umask=022
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

##启动服务

systemctl start vsftpd.service

systemctl status vsftpd.service

##登陆验证        

ftp 192.168.x.28 21  

ftp 192.168.x.28                          ##输入用户,密码;默认端口21,可省略

user1

123456

3.卸载vsftpd

systemctl stop vsftpd.service

yum remove -y vsftpd

rm -rf /var/ftp/

rm -rf /etc/vsftpd/

4.ftp常用命令

##查看版本

vsftpd -v                       

##关闭FTP连接

bye

exit

quit

##下载文件

get readme.txt                         ##下载readme.txt 文件

mget *.txt                                 ##批量下载.txt多个文件

##上传文件

put /path/readme.txt                ##上传 readme.txt 文件

mput *.txt                                 ##批量上传.txt多个文件

##状态码

•230 - 登录成功

•200 - 命令执行成功

•150 - 文件状态正常,开启数据连接端口

•250 - 目录切换操作完成

•226 - 关闭数据连接端口,请求的文件操作成功

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐