FTP Server

您所在的位置:网站首页 ftp传输文件速度 FTP Server

FTP Server

2023-05-24 09:55| 来源: 网络整理| 查看: 265

简介

FTP:File Transfer Protocol 文件传输协议;它工作在 OSI 模型的第七层, TCP 模型的第四层, 即应用层, 使用 TCP 传输而不是 UDP, 客户在和服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的, 而且是面向连接, 为数据传输提供可靠保证。

控制端口:command 21/tcp

数据端口:data 20/tcp

作用

提供文件共享服务,互联网上多数媒体资源和软件资源,大多数都是通过FTP服务器传递。

配置文件

默认配置 

路径说明/etc/vsftpd/vsftpd.confftp配置文件/usr/sbin/vsftpdftp主程序/etc/rc.d/init.d/vsftpdftp启动程序/etc/pam.d/vsftpdPAM认证文件(此文件中file=/etc/vsftpd/ftpusers字段,指明阻止访问的用户来自/etc/vsftpd/ftpusers文件中的用户)/etc/vsftpd/ftpusers禁止使用vsftpd的用户列表文件。记录不允许访问FTP服务器的用户名单,管理员可以把一些对系统安全有威胁的用户账号记录在此文件中,以免用户从FTP登录后获得大于上传下载操作的权利,而对系统造成损坏。/etc/vsftpd/user_list禁止或允许使用vsftpd的用户列表文件。这个文件中指定的用户缺省情况(即在/etc/vsftpd/vsftpd.conf中设置userlist_deny=YES)下也不能访问FTP服务器,在设置了userlist_deny=NO时,仅允许user_list中指定的用户访问FTP服务器。/var/ftp匿名用户主目录;本地用户主目录为:/home/用户主目录,即登录后进入自己家目录/var/ftp/pub匿名用户的下载目录,此目录需赋权根chmod 1777 pub(1为特殊权限,使上载后无法删除)/etc/logrotate.d/vsftpd.logvsftpd的日志文件

/etc/vsftpd/vsftpd.conf说明

#是否启用匿名用户 anonymous_enable=NO local_enable=YES #全局设置,是否允许写入(无论是本地用户还是匿名用户,若要启用上传功能,需要开启) write_enable=YES #本地用户上传文件的umask local_umask=022 #匿名用户是否可以上传文件(非目录) anon_upload_enable=YES #匿名用户是否可以创建文件夹 anon_mkdir_write_enable=YES #允许为目录配置显示信息,显示每个目录下的message_file文件的内容 dirmessage_enable=YES #开启日记功能 xferlog_enable=YES #使用端口20连接ftp connect_from_port_20=YES #所有匿名用户上传的文件的所属用户将会被更改成chown_username chown_uploads=YES #匿名用户上传文件所属用户名 chown_username=whoever #日志文件位置 xferlog_file=/var/log/xferlog #日志文件使用标准格式 xferlog_std_format=YES #用户会话空闲600秒后中断 idle_session_timeout=600 #数据连接空闲120秒后中断 data_connection_timeout=120 #当服务器运行于最底层时使用的用户名 nopriv_user=ftpsecure # async_abor_enable=YES # ascii_upload_enable=YES # ascii_download_enable=YES #登录时显示欢迎信息,如果设置了banner_file,则此设置无效 ftpd_banner=Welcome to blah FTP service. # deny_email_enable=YES # banned_email_file=/etc/vsftpd/banned_emails #是否禁止用户离开设置的根目录 chroot_local_user=YES #如果启动这项功能,则所有列在chroot_list_file之中的使用者不能更改根目录 chroot_list_enable=YES #指出被锁定/允许 在自家目录中的用户的列表文件 #chroot_list_file=/etc/vsftpd/chroot_list #是否能使用ls -R命令以防止浪费大量的服务器资源 #ls_recurse_enable=YES #是否监听IPV4 listen=NO #是否监听IPV6 listen_ipv6=YES #设置PAM使用的名称,默认值为/etc/pam.d/vsftpd pam_service_name=vsftpd #限制了/etc/vsftpd/user_list文件里的用户不能访问 userlist_enable=YES FTP SERVER 配置流程

一、安装 vsftp

yum -y install vsftpd.x86_64

二、准备一个文件 testftp.txt ,作为测试FTP服务器功能

echo 'This is testftp' > /var/ftp/testftp.txt

三、启动vsftpd服务并设置为开机自启

systemctl enable --now vsftpd

四、关闭防火墙和selinux

systemctl stop firewalld

systemctl disable firewalld

setenforce 0 sed -ir 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config &> /dev/null

至此,从FTP服务器下载文件功能已实现,下面为开启上传文件至FTP服务器功能

五、修改配置文件 /etc/vsftpd/vsftpd.conf ,开启使用匿名用户的登录、上传、创建目录功能;并重新启动 vsftpd 服务

需要修改的内容

anonymous_enable=YES anon_upload_enable=YES anon_mkdir_write_enable=YES

六、为上传的文件创建单独目录,并授予上传目录一定权限 

mkdir /var/ftp/upload chmod 777 /var/ftp/upload/

上传功能已完成

七、客户端测试

可用windows下ftp客户端工具,如 FileZilla Client

也可以通过linux系统ftp客户端工具,如 wget ,lftp

命令:wget 下载链接

lftp命令:

连接FTP服务器:lftp FTP服务器IP地址

上传文件:put 文件名

下载文件:get 文件名

上传目录:mirror -R 目录

下载目录:mirror 目录



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3