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. 6. Go语言—字符串操作

    一.字符串支持的转义字符 \r 回车符(返回行首) \n 换行符(直接跳到下一行的同列位置) \t 制表符 \' 单引号 \" 双引号 \\ 反斜杠 \uXXXX Unicode字符码值转义 ...

  2. 2. Go语言—包概念

    一.包的概念 和python一样,把相同功能的代码放到一个目录,称之为包 包可以被其他包引用(若包中变量/函数被其他包调用,名需大写) main包是用来生成可执行文件,每个程序只有一个main包 包的 ...

  3. node.js是用来做什么的?这是我看到最好的解释了

    一种JavaScript的运行环境,能够使得JavaScript脱离浏览器运行. 参考链接:https://www.cnblogs.com/suhaihong/p/6598308.html https ...

  4. sublime3配置

    1.sunblim3配置 一旦配置好了,如果换了一台电脑那直接将C:\Users\djx\AppData\Roaming\Sublime Text 3\Packages\User文件夹拷贝到新下载的s ...

  5. 小白专场-是否同一颗二叉搜索树-c语言实现

    目录 一.题意理解 二.求解思路 三.搜索树表示 程序框架搭建 3.1 如何建搜索树 3.2 如何判别 3.3 清空树 更新.更全的<数据结构与算法>的更新网站,更有python.go.人 ...

  6. Java实现字符串反转【Leetcode】

    Write a function that reverses a string. The input string is given as an array of characters char[]. ...

  7. 物联网架构成长之路(41)-直播流媒体入门(RTSP篇)

    1. 搭建RTSP服务 首先现在音视频利器 ffmpeg,这个到http://www.ffmpeg.org/download.html 这里下载压缩包即可. 文档参考:http://trac.ffmp ...

  8. redis-5.0.5.tar.gz 安装

    参考5.0安装,地址:https://my.oschina.net/u/3367404/blog/2979102 前言 安装Redis需要知道自己需要哪个版本,有针对性的安装. 比如如果需要redis ...

  9. python-9-列表的增删改查

    前言 本节是:列表(list)的增删改查.什么是列表? 列表(list)是最常用的Python数据类型,它可以作为一个方括号[]内的逗号分割值出现.如:[1,5,"b"] 一.增 ...

  10. not in和not exists区别

    如果查询语句使用了not in 那么内外表都进行全表扫描,没有用到索引: 而not extsts 的子查询依然能用到表上的索引. 所以无论那个表大,用not exists都比not in要快. 也就是 ...