内容简介:

  • 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. 分别实现数组所有元素相加、相乘、相与——FP 风格

    var ops = { "plus": (x,y)=>x+y, "mul" : (x,y)=>x*y, "and" : (x,y ...

  2. spring 学习(三):aop 学习

    spring 学习(三):aop 学习 aop 概念 1 aop:面向切面(方面)编程,扩展功能不修改源代码实现 2 AOP采取横向抽取机制,取代了传统纵向继承体系重复性代码 3 aop底层使用动态代 ...

  3. 【bzoj4804】欧拉心算 莫比乌斯反演+莫比乌斯函数性质+线性筛

    Description 给出一个数字N 求\(\sum_{i=1}^{n}\sum_{j=1}^{n}\varphi(gcd(i,j))\) Input 第一行为一个正整数T,表示数据组数. 接下来T ...

  4. loj #6121. 「网络流 24 题」孤岛营救问题

    #6121. 「网络流 24 题」孤岛营救问题   题目描述 1944 年,特种兵麦克接到国防部的命令,要求立即赶赴太平洋上的一个孤岛,营救被敌军俘虏的大兵瑞恩.瑞恩被关押在一个迷宫里,迷宫地形复杂, ...

  5. P3596 [POI2015]MOD

    $ \color{#0066ff}{ 题目描述 }$ 给定一棵无根树,边权都是1,请去掉一条边并加上一条新边,定义直径为最远的两个点的距离,请输出所有可能的新树的直径的最小值和最大值 \(\color ...

  6. 初用sqlite3.exe

    1.记得要先建立数据库文件 为了进行数据库的编写,我安装了sqlite3,由于刚接触数据库,我尝试着建立表,并插入元组,属性,用select from语句也可以调出写入的内容,但是不知道如何保存,直接 ...

  7. JS原型链中的prototype与_proto_的个人理解与详细总结

    一直认为原型链太过复杂,尤其看过某图后被绕晕了一整子,今天清理硬盘空间(渣电脑),偶然又看到这图,勾起了点回忆,于是索性复习一下原型链相关的内容,表达能力欠缺逻辑混乱别见怪(为了防止新人__(此处指我 ...

  8. 把display 属性改为block样式变化问题

    可能的值 值 描述 none 此元素不会被显示. block 此元素将显示为块级元素,此元素前后会带有换行符. inline 默认.此元素会被显示为内联元素,元素前后没有换行符. inline-blo ...

  9. vue脚手架的安装和使用

    脚手架安装:

  10. Hibernate学习笔记(五)—— Hibernate查询方式

    一.对象图导航查询 对象图导航查询方式是根据已经加载的对象,导航到他的关联对象.它利用类与类之间的关系来查询对象.比如要查找一个联系人对应的客户,就可以由联系人对象自动导航找到联系人所属的客户对象.当 ...