vsftp 常用操作

安装

yum install vsftpd

启动服务

service vsftpd start

开启自动启动

chkconfig --level 35 vsftpd on

关闭匿名登陆

vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO

查看用户和对应管理目录

vi /etc/vsftpd/ftpusers // ftp用户黑名单 -- 指定了那些账户不可以访问ftp服务器
vi /etc/vsftpd/vsftpd.user_list // 黑白名单
// 1) userlist_enable和userlist_deny两个选项联合起来针对的是:本地全体用户(除去ftpusers中的用户)和出现在user_list文件中的用户以及不在在user_list文件中的用户这三类用户集合进行的设置。
// 2) 当且仅当userlist_enable=YES时:userlist_deny项的配置才有效,user_list文件才会被使用;当其为NO时,无论userlist_deny项为何值都是无效的,本地全体用户(除去ftpusers中的用户)都可以登入FTP
// 3) 当userlist_enable=YES时,userlist_deny=YES时:user_list是一个黑名单,即:所有出现在名单中的用户都会被拒绝登入;
// 4) 当userlist_enable=YES时,userlist_deny=NO时:user_list是一个白名单,即:只有出现在名单中的用户才会被准许登入(user_list之外的用户都被拒绝登入);另外需要特别提醒的是:使用白名单后,匿名用户将无法登入!除非显式在user_list中加入一行:anonymous
cat passwd
passwd ftp 用户名
service/restart

添加普通用户

useradd -d /home/testA test111( 添加test111 并指定该用户主目录 )
passwd test111 ( 为test111设置密码)

更改用户权限设置

usermod -s /sbin/nologin test111 ( 限定用户test111不能telnet )
usermod -s /sbin/bash test111 ( 用户test111 恢复正常?? )
usermod -d /testB test111 ( 将用户test111的主目录设置为testB )

限制用户只能访问自己的目录

vi /etc/vsftpd/vsftpd.conf
--- 查看 ---
#(default follows)
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
// 找到 vsftpd.chroot_list 并编辑
// 将受限制的用户添加进去,每个用户名一行 --- 修改 ---
chroot_list_enable=YES // 限制访问自身目录
choroot_list_file=/etc/vsftpd/vsftpd.chroot_list

需要允许用户修改密码

usermod -s /user/bin/passwd test111 // 用户连接telnet后将直接进入改密码界面

改完配置需要重启服务器

/etc/init.d/vsftpd restart

默认vsftpd.conf配置

# 默认的配置文件路径 : /etc/vsftpd/vsftpd.conf
#
# 默认编译生成设置是相当繁琐.
# 这个样板文件简化一点点。这样可以使ftp进程更具有可用性,如果你想要查看所有编译默认配置信息请查看vsftpd.conf.5
#
# 提示:这个样板文件并没有列出所有vsftpd的配置选项,你可以阅读vsftpd.conf.5获取所有编译配置选项。
#
# 允许匿名访问FTP?(注意--如果你注释这一行代表是允许匿名访问ftp)
anonymous_enable=YES
#
# 取消注释这一行代表允许本地登录,SELinux会为SE bool ftp_home_dir强制检查(类似防火墙,注意连不上要考虑这个原因)
local_enable=YES
#
# 取消注释代表可以任何形式写的命令可用
write_enable=YES
#
# 对于本地用户默认的umask是077.
# 大多数人的umask会设置为022.
#umask值为022:
#1) 文件的最大权限 rwx rwx rwx (777)
#2) umask值为022 --- -w- -w-
#3) 目录权限 rwx r-x r-x (755) 这就是目录创建缺省权限
#4) 文件权限 rw- r-- r-- (644) 这就是文件创建缺省权限
local_umask=022
#
# 取消注释这行代表允许匿名用户上传文件。
# 如果上面全局写命令被激活,这里唯一的影响就是你需要为ftp用户创建一个目录具有写的权限。
# 当然你需要设置Selinux的allow_anon_write allow_ftpd_full_access 属性
#anon_upload_enable=YES
#
# 取消注释这行表示匿名用户可以创建新的目录
#anon_mkdir_write_enable=YES
#
# 激活目录信息:远程用户访问到相对应的目录返回目录信息
dirmessage_enable=YES
#
# 激活上传/下载的日志
xferlog_enable=YES
#
# 确保连接20端口可用(ftp-data)
connect_from_port_20=YES
#
# 如果你想,你可以将匿名上传的文件所有者分配给不同的用户,注意! 不要使用root来上传文件
#chown_uploads=YES
#chown_username=whoever
#
# 你可以重写日志文件路径,默认的路径如下
#xferlog_file=/var/log/xferlog
#
# 如果你想,你可以使用标准的ftp xferlog日志格式,
# 注意默认的日志文件的位置为/var/log/xferlog
xferlog_std_format=YES
#
# 你可以改变默认空闲会话连接超时时间(也就是过了个时间,服务器会自动断开 单位 秒)
#idle_session_timeout=600
#
# 你可以改变默认数据连接超时时间
#data_connection_timeout=120
#
# 推荐在你系统上定义一个唯一用户,ftp服务将会把完全隔离没有特权的用户(剥夺政治权利终身)
#nopriv_user=ftpsecure
#
# 开启,服务器将会识别异步ABOR请求。不推荐安全下使用(这个代码意义重大)。不要开启,可能迷惑老的FTP用户。
#async_abor_enable=YES
#
# 在默认情况下服务器将会假装允许ACSII模式,但事实上会忽略这个请求
# 开启这个选项,服务器将会将会文件进行ASCII编码,
# 注意在有些ftp服务器,在ASCII模式通过命令 "SIZE/big/file可能出现DOS攻击。
# vsftpd predicted this attack and has always been safe, reporting the size of the raw file.
# 在协议中ASCII编码是可怕的特性。
#ascii_upload_enable=YES
#ascii_download_enable=YES
#
# 自定义登录的之后欢迎语
#ftpd_banner=Welcome to blah FTP service.
#
# 你可以自定义一个文件,这个文件包含禁用的匿名e-mail 地址,据说,这种方式对于避免特定DOS攻击
#deny_email_enable=YES
# (默认的email禁止文件路径)
#banned_email_file=/etc/vsftpd/banned_emails
#
# 你可能定义显式一个本地用户列表去改变的他们登录时的根目录,如果chroot_local_user为YES,那么这个列表用户变成NOT chroot() (取反)
# (警告 chroot可能非常危险。如果使用chroot,确保用户不会有获取最高目录的权限。)
You may specify an explicit list of local users to chroot() to their home
#chroot_local_user=YES
chroot_list_enable=YES
# (默认文件的位置)
#chroot_list_file=/etc/vsftpd/chroot_list
#
# 可以激活"-R"选项通过 "ls -R".
# 在默认情况不可用,这样避免大型站点产生过大I/O流。然而对于一些ftp客户端例如"ncftp"和"mirror"默认具有-R属性。这里需要特殊情况才开启
#ls_recurse_enable=YES
#
# 当“listen”可用的时候,vsftpd运行独立模式,然后监听IPv4 套接字。这个并不会监听ipv6。
listen=NO
#
# 这个选项为YES表示监听IPv6套接字。在默认情况下监听在IPv6任意地址将会接受来自IPv6和IPv4客户端。没有必要监听IPv6和IPv4套接字。
# 如果你真有这种需求,(你想要监听特定的地址),你必须要复制两份vsftpd,并且两份配置文件。
# 确保其中一个选项被注释!!
listen_ipv6=YES allow_writeable_chroot=YES //具有写权限
pam_service_name=vsftpd //验证文件
userlist_enable=YES //用户列表开启
tcp_wrappers=YES //tcp封装

linux的vsftp使用介绍的更多相关文章

  1. Linux下vsftp匿名用户配置

    Linux下vsftp匿名用户上传和下载的配置 配置要注意三部分,请一一仔细对照: 1.vsftpd.conf文件的配置(vi /etc/vsftpd/vsftpd.conf) #允许匿名用户登录FT ...

  2. Linux下VsFTP和ProFTP用户管理高级技巧 之一

    Linux下VsFTP和ProFTP用户管理高级技巧       FTP服务时互联网上比较古老的一种应用,至今Interner应用面非常广泛,但令管理员头痛不已的是其用户管理,既多且杂,如何解决这一问 ...

  3. Linux系统Vsftp 传文件出现 553 Could Not Create File错误的解决方法

    解决方法: 登录出现了这个错误提示:553 Could not create file SELinux设置如下 查看SELinux设置 [root@localhost ~]# getsebool -a ...

  4. 12个Linux进程管理命令介绍(转)

    12个Linux进程管理命令介绍 [日期:2015-06-02] 来源:Linux中国  作者:Linux [字体:大 中 小]   执行中的程序在称作进程.当程序以可执行文件存放在存储中,并且运行的 ...

  5. Linux及文件系统基本介绍

    Linux及文件系统基本介绍 1   互联网行业现状 在服务器端市场: 超级计算机 2014年11月的数据显示前500系统中的485个系统都在运行着 Linux 的发布系统,而仅仅只有一台运行着 Wi ...

  6. Linux curl使用简单介绍

    在两台新搬迁的微信服务器上执行命令: curl -H "Content-Type: application/json" -d '{"partner_no":&q ...

  7. [转]Linux下的图形库介绍

    [转]Linux 下的图形库介绍 http://blog.csdn.net/gogor/article/details/5925925 在进行Linux下的图形系统编程时,我们常常会遇到以下这些概念: ...

  8. Linux文件 I/O 介绍

    Linux文件 I/O 介绍 1. Linux系统调用 Linux系统调用(system call)是指操作系统提供给用户程序的一组"特殊接口",用户程序可以通过这组"特 ...

  9. Linux主要发行版本介绍

    Linux主要发行版本介绍 1.Red Hat Linux Red Hat是一个比较成熟的Linux版本,无论在销售还是装机量上都比较可观.该版本从4.0开始同时支持Intel.Alpha及Sparc ...

随机推荐

  1. nginx-博客阅读笔记记录-20190916

    Nginx 入门学习教程 Ng官网解释: nginx [engine x]是最初由Igor Sysoev编写的HTTP和反向代理服务器,邮件代理服务器和通用TCP / UDP代理服务器. 维基百科解释 ...

  2. 记人生中第一场认真打的CF——CF1000(虽然是Virtual participation)

    老师说下午要让我们(来自开明的新高一同学)感受一下CF,于是下午2:20我们就集中到了机房.老师教我们用Educational Codeforces Round 46 (Rated for Div. ...

  3. shell第一个脚本

    mkdir 创建目录touch 创建空文件 chmod +x ./test.sh  #使脚本具有执行权限

  4. Python全栈开发,Day1

    一.Python介绍及版本 Python崇尚优美.清晰.简单,是一个优秀并广泛使用的语言. 目前Python主要应用领域: 云计算:云计算最火的语言 WEB开发:众多优秀的WEB框架,众多大型网站均为 ...

  5. C#防止窗口重复打开

    修改Program.cs文件 using System; using System.Collections.Generic; using System.Linq; using System.Windo ...

  6. React准备工作

    一.环境准备 使用react官方推荐的脚手架create-react-app 1.安装nodejs 2.npm install -g create-react-app  //全局安装脚手架 3.cre ...

  7. centos7systemctl介绍

     Linux中如何启动.重启.停止.重载服务以及检查服务(如 httpd.service)状态  # systemctl start httpd.service # systemctl restart ...

  8. vue动态路由传值以及get传值及编程式导航

    1.动态路由传值 1.配置路由处 { path: '/content/:id', component: Content }, // 动态路由 2.对应页面传值 <router-link :to= ...

  9. 初学Cadence 一

    点击打开 Design Entry CIS 弹出 不要选 OrCAD Capture,这个组件和OrCAD Capture CIS 相比少了很多东西,对元件的管理不方便.选 OrCAD Capture ...

  10. 搭建maven本地仓库

    1. 需先配置java环境. 2. 下载nexus. https://www.sonatype.com/download-nexus-repo-oss?submissionGuid=a015a3db- ...