内容简介:

  • vsftpd的安装

  • 目录介绍

  • 配置参数解释

  • 锁定用户目录

  • 其他用户不能登录

----------------------------------------------------------------------------------------------

1、安装vsftpd

安装

yum install vsftpd   

配置文件目录

cd /etc/vsftpd

启动、停止、重启

systemctl start vsftpd

systemctl stop vsftpd

systemctl restart vsftpd

2、目录介绍

vsftpd.conf  ftp的核心配置文件

ftpusers   禁止登录FTP的用户列表

chroot_list  是否允许用户列表内的用户访问父目录

user_list   是否允许列表内的用户登录

以上将在下个部分讲解

3、配置文件详解

https://www.cnblogs.com/rainiplus/p/3739100.html,,人家写的比我好多了23333

 # Allow anonymous FTP?
anonymous_enable=NO # allow local users to log in.
local_enable=YES # 允许写操作
write_enable=YES # Default umask for local users is . You may wish to change this to ,
# if your users expect that ( is used by most other ftpd's)
local_umask= allow_ftpd_full_access # 匿名是否允许上传文件
#anon_upload_enable=YES # 匿名是否允许写操作
#anon_mkdir_write_enable=YES # 欢迎语设置,如果有.message这个文件
# messages given to remote users when they go into a certain directory.
dirmessage_enable=YES # Activate logging of uploads/downloads.
# 上传下载日志记录
xferlog_enable=YES # Make sure PORT transfer connections originate from port (ftp-data).
# 主动模式时使用20端口连接客户端
connect_from_port_20=YES # You may override where the log file goes if you like. The default is shown
# below.
#xferlog_file=/var/log/xferlog # If you want, you can have your log file in standard ftpd xferlog format.
# Note that the default log file location is /var/log/xferlog in this case.
# FTP入职格式化
xferlog_std_format=YES # You may change the default value for timing out an idle session.
# 一段时间没有操作后断开连接
#idle_session_timeout= # You may change the default value for timing out a data connection.
# FTP数据传输最大时间,超过则断开连接
#data_connection_timeout= # 是否使用ASCII码传输,默认使用二进制
#ascii_upload_enable=YES
#ascii_download_enable=YES # 是否允许用户访问父目录,默认YES
chroot_local_user=NO
# 文件限制是否开启,若开启后,则列表中的用户无法访问父目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
#iginre the writeable check
# 忽略写权限检查,如果chroot_local_user=NO,那么主目录不能有写权限,这里忽略掉它
allow_writeable_chroot=YES # 是否允许列表用户登录
# 开启文件检查
#userlist_enable=YES
# 文件列表中的用户是否进制登录,YES:禁止登录
#userlist_deny=YES
#userlist_file=/etc/vsftpd/userlist # 监听IPV4
listen=YES
# 开启IPV4就关闭IPV6,好多还是用的IPV4
#listen_ipv6=YES # 应该与虚拟用户相关吧,不清楚
pam_service_name=vsftpd
# 是否允许主机连接。放这吧,不清楚
tcp_wrappers=YES # 开启被动模式,windows默认开启被动
pasv_enable=YES
# 端口开放,需要防火墙支持,如果时阿里云则需要开放端口入方向规则
pasv_min_port=
pasv_max_port=
# 暴漏给客户端外网IP,不设置默认暴漏原始IP,即内网加端口这种形式
pasv_address=你的外网ip

4、锁定用户主目录

chroot_list中放置要锁定的用户名,一行一个

修改配置

# 不允许列表中的用户访问父目录
chroot_local_user=NO
# 文件限制是否开启,若开启后,则列表中的用户无法访问父目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
#iginre the writeable check
# 忽略写权限检查,如果chroot_local_user=NO,那么主目录不能有写权限,这里忽略掉它
allow_writeable_chroot=YES

重启即可

5、禁止登陆

方案一:在ftpusers中添加,一行一个

方案二:使用user_list

在user_list中添加禁止登陆的用户,一行一个

修改配置文件

# 是否允许列表用户登录
# 开启文件检查
#userlist_enable=YES
# 文件列表中的用户是否进制登录,YES:禁止登录
#userlist_deny=YES
#userlist_file=/etc/vsftpd/userlist

重启即可

附录:FTP主动和被动区别

Linux之FTP篇的更多相关文章

  1. linux初学者-ftp篇(一)

    linux初学者-ftp篇(一) FTP是文件传输协议,是用于Internet上的控制文件的双向传输.用户可以通过客户机程序从远程主机上下载或者向远程主机上传文件. linux系统中,如果不了解SEL ...

  2. Linux(环境篇):系统搭建本地FTP后,无法登录(331 Please specify the password.)问题解决

    首先 Linux 搭建ftp,开放21端口.(省略...) 你可能会遇到以下问题:错误 SELinux is disabled 解决: setenforce: SELinux is disabled ...

  3. linux配置ftp高级权限

    建一个用于管理的ftp高级账号,ftproot,定义它的目录,也就是我们存放项目的地址,所属组www, useradd -d /home/www -g www ftproot www里存放很多项目,我 ...

  4. Linux工具参考篇(网摘)

    Linux工具参考篇 原文出处:[Linux Tools Quick Tutorial] 1. gdb 调试利器 2. ldd 查看程序依赖库 3. lsof 一切皆文件 4. ps 进程查看器 5. ...

  5. linux初学者-SElinux篇

    linux初学者-SElinux篇 SElinux是强制访问控制(MAC)安全系统,是linux历史上最杰出的新安全系统.对于linux安全模块来说,SElinux的功能是最全面的,测试也是最充分的, ...

  6. linux初学者-firewall篇

     linux初学者-firewall篇 firewalld是防火墙的另一种程序,与iptables相同,但是使用起来要比iptables简单的点,不需要了解3张表和5条链也可以使用. 1.firewa ...

  7. linux初学者-iptables篇

     linux初学者-iptables篇 iptables是防火墙的一种,是用来设置.维护和检查linux内核的IP过滤规则的,可以完成封包过滤.封包重定向和网络地址转换(NAT)等功能. iptabl ...

  8. linux开启FTP以及添加用户配置权限,只允许访问自身目录,不能跳转根目录

    1.切换到root用户 2.查看是否安装vsftp,我这个是已经安装的. [root@localhost vsftpd]# rpm -qa |grep vsftpd vsftpd--.el7_2.x8 ...

  9. Linux启动ftp服务器530 Permission denied解决方法(已试,行)

    Linux启动ftp服务器530 Permission denied解决方法重新在虚拟机下安装了linux.现在我想启动linux自带的ftp服务器:#service  vsftpd  start . ...

随机推荐

  1. [.net 多线程]异步编程模式

    .NET中的异步编程 - EAP/APM 从.NET 4.5开始,支持的三种异步编程模式: 基于事件的异步编程设计模式 (EAP,Event-based Asynchronous Pattern) 异 ...

  2. 数组中 reduce累计运算

    let arr = [1,2,3,4]; let sum = (a, b) => a + b; arr.reduce(sum, 0); 最后输出10

  3. mysql 字符串的截取与连接

    mysql 字符串的截取   left() .right() .  substring()[ mid() .substr() 等价于substring() ] .substring_index() l ...

  4. ubuntu14.10,安装ksnapshot(截图软件)

    Linux:ubuntu14.10 ubuntu软件中心对它的描述:KSnapshot captures images of the screen.  It can capture the whole ...

  5. 获取oracle 库所有表名

    (mybatis多参)

  6. 采样器----Debug Sampler

    Debug Sampler可以产生所有JMeter变量和属性的样本,可以在View Tree Result的响应中查看变量的值,此取样器在调试脚本阶段可以很方便的看到变量的值,在正式运行脚本的过程中应 ...

  7. React基础篇 (1)-- render&components

    render 基础用法 //1.创建虚拟DOM元素对象 var vDom=<h1>hello wold!</h1> //2.渲染 ReactDOM.render(vDom,do ...

  8. 抓包(Charles工具入门)

    一.charles工具简单使用 1.录制操作 录制请求.清空录制请求: 两种展示请求的视图方式: 2.录制请求的简单分析 (1)请求的总览页面Overview:可查看请求路径.请求方式.请求时间等有关 ...

  9. Java面向对象之异常(异常处理方式)

    一.基础概念 (1)异常:Java程序在运行时期发生的不正常情况. Java就按照面向对象的思想对不正常情况进行描述和对象的封装. (2)异常问题分类: (Throwable:定义对于问题共性的功能. ...

  10. CI框架部署后访问出现404

    昨天新配置了一个PHP集成开发环境,安装完后,把项目放到Apache服务器的www目录下,发现只能打开首页,其他页面全部无法打开,当时比较纳闷,以为是服务器没有配置好,测试了一下,发现环境配置没有问题 ...