1.FTP 服务的安装
# yum install -y vsftpd
[root@rusky pub]# ls -l /etc/vsftpd/
total 20
-rw-------. 1 root root 125 Aug 3 2015 ftpusers
-rw-------. 1 root root 361 Aug 3 2015 user_list
-rw-------. 1 root root 5030 Aug 3 2015 vsftpd.conf
-rwxr--r--. 1 root root 338 Aug 3 2015 vsftpd_conf_migrate.sh

四个配置文件,vsftpd.conf 是我们的主配置文件,ftpusers是我们的黑名单用户配置文件,通常我们的系统用户还有根用户都是放在这个配置文件里面的,因为这些用户的权限很大,如果使用ftp服务可能造成一些问题,user_list是我们的用户列表文件,我们可以通过在主配置文件里设置该用户是黑名单用户还是白名单拥有,最后一个是我们的ftp服务迁移脚本。

FTP共享目录:/var/ftp/

2. FTP服务启停(RHEL7)

# systemctl vsftpd start/stop/status vsftpd.service

#systemctl restart vsftpd

其它操作系统版本的FTP启停方式:service vsftpd stop/start/status

3. 登录方式

  • 使用Linux系统用户

  普通系统用户登录后,进入的是用户home目录

  • 匿名用户(anonymours)

  匿名用户登录后进行/var/pub目录。在默认情况下,在vsftpd安装的时候会创建一个 ftp 系统用户,这个用户就是用来进行匿名登陆的用户,ftp匿名用户默认登陆到的目录是 /var/ftp/ 目录,没有任何访问限制权限的文件都能提供给匿名用户进行共享。vsftpd.conf主配置文件anoymous参数要设置为yes开户匿名用户访问。

[root@rusky ftp]# cat /etc/passwd | grep ftp
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

修改vsftpd主配置文件开启匿名用户上传的功能:

anonymous_enable=YES --开启匿名用户访问(默认)

anon_upload_enable=YES  --打开匿名用户文件上传功能

anon_mkdir_write_enable=YES  --打开匿名用户创建文件夹功能

  • 虚拟用户

  虚拟用户的特点是只能访问服务器为其提供的FTP服务,而不能访问系统的其它资源。所以,如果想让用户对FTP服务器站内具有写权限,但又不允许访问系统其它资源,可以使用虚拟用户来提高系统的安全性。

FTP服务启动后就可以使用FTP工具连接到FTP服务器了。(注意关闭防火墙或是防火墙开启21端口)


4.FTP主配置文件参数说明

如果要更改默认下载目录,修改/etc/vsftpd/vsftpd.conf,加入如下三行:
local_root=/ //表示使用本地用户登录到ftp时的默认目录,没有这个参数或是不设定,默认登录到用户自己的home目录
anon_root=/var/ftp //表示匿名用户登录到ftp时的默认目录
anonymous_enable=YES //是否允许anonymous登录FTP服务器,默认是允许的.
local_enable=YES //是否允许本地用户登录FTP服务器,默认是允许
write_enable=YES //是否允许用户具有在FTP服务器文件中执行写的权限,默认是允许
anon_upload_enable=YES //是否允许匿名账户上传文件
anon_mkdir_write_enable=YES //是否允许匿名账户在FTP服务器中创建目录
dirmessage_enable=YES //激活目录信息,当远程用户更改目录时,将出现提示信息
xferlog_enable=YES //启用上传和下载日志功能
connect_from_port_20=YES //启用FTP数据端口的连接请求
xferlog_file=/var/log/vsftpd.log //设置日志文件的文件名和存储路径,这是默认的
xferlog_std_format=YES //是否使用标准的ftpd xferlog日志文件格式
idle_session_timeout=600 //设置空闲的用户会话中断时间,默认是10分钟
data_connection_timeout=120//设置数据连接超时时间,默认是120秒
ascii_download_enable=YES //是否允许使用ASCII格式来上传和下载文件
ftpd_banner=Welcome to blah FTP service.//在FTP服务器中设置欢迎登录的信息.
chroot_local_user=YES //将所有用户限定在主目录内,不允许切换到其它目录。为NO时允许用户切换到自己home目录以为的其它目录。
chroot_list_enable=YES //表示是否要启用chroot_list_file,即是否有例外的用户。
chroot_list_file=/etc/vsftpd/chroot_list //添加例外用户名单,每个用户占一行。
一般都是这三个参数一起使用,即除root账号外,其它所有用户都不允许切换到其它目录。把root账号添加到chroot_list文件中。

pam_service_name=vsftpd //设置PAM认证服务的配置文件名称,该文件存放在/etc/pam.d/目录下.
userlist_enable=YES //用户列表中的用户是否允许登录FTP服务器,默认为YES时是不允许--这个参数是限制/etc/vsftpd/ftpusers文件中的用户是否允许登录FTP。

listen=YES //使vsftpd 处于独立启动模式
tcp_wrappers=YES //使用tcp_wrqppers作为主机访问控制方式

Max_clients=100 这就表示最多可以有100个用户同时访问

/etc/vsftpd/ftpusers文件说明
这个文件是用来记录"不允许"登录到FTP服务器的用户,通常是一些系统默认的用户.

[root@rusky ~]# cat /etc/vsftpd/ftpusers
# Users that are not allowed to login via ftp
#root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody

/etc/vsftpd/user_list文件说明
其实它的内容跟上面那个文件内容一样,只是在系统对文件vsftpd.conf 进行检测时,会检测到"userlist_deny=YES",因此这个文件必须存在.下面是这个文件的内容.

[root@rusky ~]# cat /etc/vsftpd/user_list
# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password.
# Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers
# for users that are denied.
#root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody

============

FTP虚拟用户

[root@rusky ~]# adduser -g ftp -s /sbin/nologin lxjTestFtp
[root@rusky ~]# passwd lxjTestFtp
Changing password for user lxjTestFtp.
New password:
BAD PASSWORD: The password fails the dictionary check - it is too simplistic/systematic
Retype new password:
passwd: all authentication tokens updated successfully.
[root@rusky ~]#

创建完成后,可使用ftp工具连接到ftp服务;但是不能使用该用户登录系统。

或者修改普通系统账号,取消用户SSH登录权限:usermod -s /sbin/nolog username

参考:http://www.cnblogs.com/hnrainll/archive/2011/02/16/1956536.html

Linux: FTP服务原理及vsfptd的安装、配置的更多相关文章

  1. [转] Linux学习之CentOS(三十六)--FTP服务原理及vsfptd的安装、配置

    本篇随笔将讲解FTP服务的原理以及vsfptd这个最常用的FTP服务程序的安装与配置... 一.FTP服务原理 FTP(File Transfer Protocol)是一个非常古老并且应用十分广泛的文 ...

  2. linux Centos 6.5 FTP服务原理及vsfptd的安装、配置(转)

    本篇随笔将讲解FTP服务的原理以及vsfptd这个最常用的FTP服务程序的安装与配置... 一.FTP服务原理 FTP(File Transfer Protocol)是一个非常古老并且应用十分广泛的文 ...

  3. Linux学习之CentOS--FTP服务原理及vsfptd的安装、配置

    本篇随笔将讲解FTP服务的原理以及vsfptd这个最常用的FTP服务程序的安装与配置... 一.FTP服务原理 FTP(File Transfer Protocol)是一个非常古老并且应用十分广泛的文 ...

  4. 打开Linux ftp服务,如:vsftpd: unrecognized service

    打开Linux ftp服务,如:vsftpd: unrecognized service   [root@BZXXDBS02 ~]# service vsftpd start vsftpd: unre ...

  5. Linux下Apache2.2和PHP5的安装配置

    Linux下Apache2.2和PHP5的安装配置 环境介绍 我安装使用的Linux版本为CentOS6.5最精简版,Apache为2.2.29,PHP版本为5.4.28. 系统安装 首先安装Cent ...

  6. Linux下FTP服务(一)—— Ubuntu安装

    参考:http://www.cnblogs.com/likwo/p/3154868.html 实验环境:Ubuntu 14.04 VMware虚拟机1. 安装 apt-get install vsft ...

  7. Linux FTP服务安装和远程登录失败

    问题:本机VPlayer安装pure-ftpd  ftp服务,通过flashfxp从windows连接出现以下错误: [左] 正在连接到 vmare -> IP=192.168.174.133 ...

  8. linux ftp服务

    1 安装ftp服务 [root@localhost ~]# yum install vsftpd 启动:service vsftpd start 查看状态:systemctl |grep vsftpd ...

  9. Linux:ftp服务本地用户,虚拟用户配置

    本地用户 1. 修改ftp配置文件,  anonymous_enable=NO   默认为YES,修改为NO,禁止匿名访问, 监听端口,可以根据自己的需求修改,为了安全起见自定义为好 2. /etc/ ...

随机推荐

  1. 当INPUT 连续输入是连续触发

    在 Web 开发中经常会碰到需要动态监听输入框值变化的情况,如果使用 onkeydown.onkeypress.onkeyup 这个几个键盘事件来监测的话,监听不了右键的复制.剪贴和粘贴这些操作,处理 ...

  2. html5 实现手机端相册浏览功能

    原文地址:http://www.cootm.com/?p=710 在网上找到个浏览图片的jq插件,针对手机做的非常不错,看到乐享的微信微站新开发的功能就是这个,特此分享下! 时间匆忙,没做代码分析,勿 ...

  3. Discuz!源代码阅读笔记之common.inc.php文件【1】

    <?php /* [Discuz!] (C)2001-2007 Comsenz Inc. This is NOT a freeware, use is subject to license te ...

  4. 【转】C#正则表达式详解

    正则表达式通常包含字母文本(Literaltext)和元字符(metacharacter) 字母文本指的是普通文本如"abcde"可匹配字符串中任何包含"abcde&qu ...

  5. Adobe Acrobat XI Pro 两种破解方式 Keygen秘钥 license替换 亲测有效

    大家平时看paper比较多的话想必都是用Adobe Acrobat而非Adobe Reader吧,其功能全面之处就不啰嗦了,下面给大家分享下Adobe Acrobat XI Pro的两种破解方式(两种 ...

  6. myisam和innodb索引实现的不同

    1.MyISAM 使用B+Tree 作为索引结构,叶子节点的data存放指针,也就是记录的地址.对于主键索引和辅助索引都是一样的.2.InnoDB 也使用B+Tree作为索引结构,也别需要注意的是,对 ...

  7. 【HDOJ】3459 Rubik 2×2×2

    模拟+DFS. /* 3459 */ #include <cstdio> #include <cstring> #include <cstdlib> #define ...

  8. Qt入门(20)——Qt模块简介

    当你安装Qt时,这些模块会被构建到库中.在Qt企业版.Qt评估版和Qt自由版中,包含所有的模块.对于Qt专业版,提供基本的模块--工具.核心.窗口部件.对话框.图标视图和工作区模块.画布模块画布模块提 ...

  9. 数据结构(堆):POJ 1442 Black Box

    Black Box Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 10658   Accepted: 4390 Descri ...

  10. zoj 3672 Gao The Sequence

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4915题意:a[k]-一个任意的数,这个数要等于a[1]~a[k]每个数减去任意 ...