vsftpd服务

文件传输协议(file transfer protocol,FTP),基于该协议FTP客户端与服务端可以实现共享文件,上传文件,下载文件。ftp基于TCP协议生成一个虚拟的连接,主要用于控制FTP连接信息,同时在生成一个单独的TCP连接用于ftp数据传输,用户可以通过客户端向ftp服务器上传,下载,删除文件,ftp服务器可以同事提供给多人共享使用

ftp服务时client/server(简称C/S)模式,基于ftp协议实现ftp文件对外共享及传输的软件称之为ftp服务器源端,客户端程序基于ftp协议,则称之为ftp客户端,ftp客户端可以想ftp服务器上传下载文件

vsftp服务器安装和配置

[root@localhost ~]# yum install vsftpd* -y

vsftpd.conf配置文件的默认配置如下:

[root@localhost ~]# cat /etc/vsftpd/vsftpd.conf | grep -v '#' | grep -v '^$'
anonymous_enable=YES#开启匿名访问
local_enable=YES#启用本地用户访问
write_enable=YES#本地系统用户写入权限
local_umask=
dirmessage_enable=YES#打印目录显示信息,通常用于用户第一次访问目录时,信息提示
xferlog_enable=YES#启用上传/下载日志记录
connect_from_port_20=YES#使用20号端口进行数据传输
xferlog_std_format=YES#日志文件讲根据xferlog的标准格式写入
listen=NO#vsftpd不以独立的服务启动,通过Xinetd服务管理,建议改成YES
listen_ipv6=YES
pam_service_name=vsftpd #登录ftp服务器,依据/etc/pam.d/vsftpd中内容进行认证
userlist_enable=YES #vsftpd.user_list和ftpusers配置文件里用户禁止访问ftp
tcp_wrappers=YES #vsftpd与tcp wrapper结合进行主机的访问控制,vsftpd服务器检查/etc/hosts.allow和/etc/hosts.deny中的设置来决定请求连接的主机,是否允许访问该ftp服务器

默认是允许匿名访问的,可以在资源管理器中输入ftp://192.168.254.13

vsftpd匿名用户访问

如果需要匿名用户访问,上传,下载等操作,需要在vsftpd.conf中添加加入以下3行代码:

anon_upload_enable=YES    #允许匿名用户上传文件
anon_mkdir_write_enable=YES #允许匿名用户创建目录
anon_other_write_enable=YES #允许匿名用户其他写入权限

匿名用户完整的vsftpd.conf配置文件代码如下:

[root@localhost ftp]# cat /etc/vsftpd/vsftpd.conf | grep -v "#" | grep -v "^$"
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

由于默认vsftpd用户对/var/ftp/pub目录有写入权限,使用chown和chmod任意一种命令均可设置权限,具体命令如下:

chown -R ftp pub/
chmod o+w pub/

重启服务,匿名用户就可以上传下载了

vsftpd系统用户配置

vsftpd匿名用户设置完毕,任何人都可以查看ftp服务端的文件,目录,甚至是可以修改删除,如何存放私密文件在ftp服务器端,并保证文件或者目录专属于拥有者呢,vsftpd系统用户可以实现该需求,解决上述问题

实现vsftpd系统用户方式验证,只需要在linux系统中创建多个用户即可,创建用户使用useradd命令,同时给用户设置密码,即可通过用户和密码登录ftp进行文件上传下载,实现步骤如下:

[root@localhost ftp]# useradd fengzi1
[root@localhost ftp]# useradd fengzi2
[root@localhost ftp]# echo "fengzi1" | passwd --stdin fengzi1
更改用户 fengzi1 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@localhost ftp]# echo "fengzi2" | passwd --stdin fengzi2
更改用户 fengzi2 的密码 。
passwd:所有的身份验证令牌已经成功更新。

修改vsftpd.conf配置文件代码如下:

[root@localhost ftp]# cat /etc/vsftpd/vsftpd.conf | grep -v "#" | grep -v "^$"
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

重启vsftpd服务

[root@localhost ftp]# service vsftpd restart
Restarting vsftpd (via systemctl): [ 确定 ]

验证

vsftpd服务的更多相关文章

  1. VsFtpd服务配置简明笔记

    Ftp服务是最常用的文件传输方式,把配置步骤记录下来,以备将来使用. 1.用YUM安装VsFtpd服务:[root@Redis usr]# yum install vsftpd 2.安装完成后启动Vs ...

  2. 第11章 使用Vsftpd服务传输文件

    章节简述: 本章节先通过介绍文件传输协议来帮助读者理解FTP协议的用处,安装vsftpd服务程序并逐条分析服务文件的配置参数. 完整演示vsftpd服务匿名访问模式.本地用户模式及虚拟用户模式的配置方 ...

  3. Vsftpd服务的搭建

    安装vsftpd服务程序 yum install vsftpd -y Vsftpd的程序与配置文件: 主程序 /usr/sbin/vsftpd 用户禁止登陆列表 /etc/vsftpd/ftpuser ...

  4. CentOS6.X安装vsftpd服务

    #-----------------CentOS6.X安装VSFTPD服务 #! /bin/sh #1.关闭selinux setenforce 0 sed -i 's/enforcing/disab ...

  5. 不关闭seLinux解决vsftpd服务本地用户不能登录问题(500 OOPS: cannot change directory:/home/***

    这里不讲vsftpd的基本配置,网上教程已经太多了.这里只说seLinux的问题. 日前在CentOS6.5中安装了vsftpd,按照网上搜索的教程,配置好/etc/vsftpd/vsftpd.con ...

  6. vsftpd服务详解

    一.vsftpd基本使用 VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP,从此名称可以看出来,编制者的初衷是代码的安全.安全性是编写V ...

  7. Linux vsftpd服务配置具体解释

    [背景] 近日.一朋友dominoserver要进行升级.迁移,搭建了linux測试系统,也开启vsftpd服务,但是配置的ftp账号,程序无法正常下载附件. [问题跟踪] 通过ftpclient连接 ...

  8. Centos5搭建vsftpd服务

    更换镜像源 由于centos5已经历史久远,内置的镜像源已经不能用.看: 因此,我手工更换了阿里云的源.(ps:我本来是想用网易的源,但不知为什么,这个源在安装vsftpd时提示http 404错误) ...

  9. 《linux就该这么学》第十三节课:第11章和第12章,vsftpd服务与samba和nfs服务

    第十一章 (借鉴请改动) 11.1.文件传输协议 FTP文件穿数协议,端口20用于数据传输,21端口用于传输相关FTP命令 ftp协议的两种工作模式: 主动模式:ftp向客户端发起 被动模式(默认): ...

  10. Vsftpd服务重启、暂停命令

    VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全. 在使用Vsftp服务是经常需要启动.停 ...

随机推荐

  1. HTTP GET POST PUT DELETE 四种请求

    1.GET请求会向数据库发索取数据的请求,从而来获取信息,该请求就像数据库的select操作一样,只是用来查询一下数据,不会修改.增加数据,不会影响资源的内容,即该请求不会产生副作用.无论进行多少次操 ...

  2. idea插件(mybatis框架下mapper接口快速跳转对应xml文件)亲测好用!

    我相信目前在绝大部分公司里,主要使用的框架是S(spring)S(spring MVC)M(mybatis),其中mybatis总体架构是编写mapper接口,框架扫描其对应的mapper.xml文件 ...

  3. Html学习之十八(表格与表单学习--统计表制作)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. 用一个例子说明oracle临时表,创建过程,

    --创建临时表,规定好格式,是必须的,不同于sqlserver那么随意: Create Global Temporary Table record4 (   yljgdm VARCHAR2(22) n ...

  5. 10.12 csp-s模拟测试70 木板+打扫卫生+骆驼

    T1 木板 求$[\sqrt{n},n)$间有多少个数的平方是n的倍数 通过打表可以发现(我没带脑子我看不出来),符合条件的数构成一个等差数列,公差为首项 而首项就是将n质因数分解后每个质因数出现次数 ...

  6. Unity Profiler 记录

    版本 Unity 2018.4.6f1 空包 development build 魅蓝 note3 OPPO R9 VIVO x9 华为 P8 青春版 小米 8 SE iphone se Other ...

  7. Token认证,如何快速方便获取用户信息

    背景 我们有一个Web项目,这个项目提供了很多的Rest API.也做了权限控制,访问API的请求必须要带上事先认证后获取的Token才可以. 认证的话就在Filter中进行的,会获取请求的Token ...

  8. ubuntu16.04下安装nvidia驱动心得

    首先机器重启后莫名出现循环登录错误,然后按照网上的方法卸载掉nvidia驱动后,可以正常登录. 但还是要再装nvidia驱动.网上说的各种方法都试过了,geforce.cn官网上推荐的各种版本的run ...

  9. 'GL_EXT_shader_framebuffer_fetch' : extension is not supported

    在使用安卓模拟器加载Flutter应用时, 提示'GL_EXT_shader_framebuffer_fetch' : extension is not supported: D/skia (1404 ...

  10. multer 文件后缀名

    我的代码是这样写的. var storage = multer.diskStorage({ destination: function (req, file, cb) { cb(null, 'uplo ...