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. PHP面向对象(OOP):__set(),__get(),__isset(),__unset()四个方法的应用

    一般来说,总是把类的属性定义为private,这更符合现实的逻辑.但是, 对属性的读取和赋值操作是非常频繁的,因此在PHP5中,预定义了两个函数”__get()”和”__set()”来获取和赋值其属性 ...

  2. 解决Silverlight5_tools无法安装问题(试验已成功)

    当前位置: 银光首页 > Silverlight > Silverlight学习教程 > 命令:regedit 打开节点:HKEY_LOCAL_MACHINE\SOFTWARE\Mi ...

  3. github的访问变慢了

    以下个人观点:把操作系统的自主研究还有处理器自主研究列入重点,还有互联网上的种种动作,我发现里面似乎揭示了某些迹象,科研真的不应该以牺牲大部分人的河法全益为代价甚至目的.当某一天win不可能出现在出厂 ...

  4. Java Socket Example

    1.服务端:server package com.socket; import java.io.BufferedReader; import java.io.IOException; import j ...

  5. 【Java】Java垃圾回收机制

    Java垃圾回收机制 说到垃圾回收(Garbage Collection,GC),很多人就会自然而然地把它和Java联系起来.在Java中,程序员不需要去关心内存动态分配和垃圾回收的问题,这一切都交给 ...

  6. 设置Tomcat默认界面

    修改配置文件:         首先,修改$tomcat/conf/server.xml文件.      在server.xml文件中,有一段如下:      ……      <engine   ...

  7. 使用next-key locks 用于搜索和索引扫描,可以防止幻读

    Next-Key Locks A next-key lock is a combination of a record lock on the index record and a gap lock ...

  8. 【Linux】鸟哥的Linux私房菜基础学习篇整理(二)

    1. dumpe2fs [-bh] devicename:查询superblock信息.参数:-b:列出保留为坏道的部分:-h:列出superblock的数据,不会列出其他的区段内容. 2. df [ ...

  9. bzoj3280

    bzoj1221的变形版本,弄懂1221,这题还是很简单的 ; type node=record        point,next,flow,cost:longint;      end; ..] ...

  10. POJ-3580-SuperMemo(splay的各种操作)

    题意:对数组进行各种操作 其中 REVOLVE右移操作.将区间[a,b]右移c位 首先c可能比较多,可以先对区间长度取模. 在右移之后,可以发现[a,b]被分为两个区间[a,b-c]  [b-c+1, ...