今天继续给大家介绍Linux相关内容,本文主要内容是vsFTPd服务的详解。

一、实战背景

在上文Linux vsFTPd服务详解——vsFTPd基础知识中,给大家简单介绍了vsFTPd服务的基本原理,基本配置和匿名登录的实现。然而,在实际部署时,由于匿名用户登录风险性太大,我们一般都会拒绝匿名用户登录,以提升FTP服务器的安全性。下面,我就给大家介绍一下vsFTPd服务中系统用户的配置方式。

二、实现步骤

FTP进行本地用户登录的配置需要以下5步:
1、建立登录用户
首先,我们需要建立FTP的登录用户,使用useradd命令创建一个用户,并使用passwd命令为该用户创建密码,命令操作如下所示:

useradd ftpuser
passwd ftpuser

2、修改配置文件
然后,我们需要修改vsFTPd服务的配置文件,禁止匿名用户登录,并且对本地用户登录进行一些必要的设置。
首先,为了禁止匿名用户登录,我们将配置文件中的anonymous_enable设置为NO。接下来,我们需要在配置文件中添加如下内容:

local_root=/var/share
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
allow_writeable_chroot=YES

上面部分内容是配置文件中原本就有的,只不过被注释掉了,我们只需要删除前面的#,使得该行内容发挥作用即可。上述第一行表示指定FTP的目标文件夹,可以自行修改为指定的目录,第二行表示允许本地用户登录,第三行表示启动本地用户访问控制列表,并且在第四行指定了该列表文件所在位置。在配置了这两行内容后,就只有在列表上的用户才能够访问FAP服务了,最后一行表示允许本地用户对FTP目录进行写操作。
修改后的配置文件如下所示:

3、添加允许登录用户列表
既然我们已经设置了允许用户登录的列表,接下来我们需要创建该列表文件,并且添加我们刚刚创建的ftpuser用户。创建文件/etc/vsftpd/chroot_list,然后在该文件中写入ftpuser即可,如果我们想要使得多个本地用户可以登录访问,则需要另起一行写入其他的用户。
4、修改本地权限
到这一步,虽然FTP的服务已经配置完毕,但是我们还需要修改指定目录的权限,由于vsFTPd服务的本地用户是ftpuser,因此我们还得保证该目录中FTP用户必须有写的权限,本地权限修改方式举例如下:

chown ftpuser:ftpuser /var/share/

当然,也可以通过chmod或者文件访问控制列表setfacl的方式达到同样的效果。
5、重启服务
在完成上述所有配置后,就需要重启vsFTPd服务了,重启命令如下:

systemctl restart vsftpd

三、效果验证

在完成上述操作后,我们尝试使用刚刚我们创建的用户登录FTP服务器,发现效果如下所示:

可以看出,我们可以使用本地用户登录FTP服务器。
接下来,我们再尝试使用匿名用户登录FTP服务器,结果如下:

可以看出,虽然表面上我们已经成功登录了FTP服务器,但是其实此时我们不能对FTP服务器进行操作,实际上,如果我们使用windows平台尝试登录FTP服务器,则会直接拒绝,这说明我们没有能够登录FTP服务器。因此,实验成功!
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

Linux vsFTPd服务详解——本地用户登录实战相关推荐

  1. Linux vsFTPd服务详解——vsFTPd基础知识

    今天继续给大家介绍Linux运维相关内容,本文主要内容是Linux的vsFTPd服务. 一.vsFTPd服务简介与安装 FTP服务,即File Transfer Protocol.文件传输服务,用于在 ...

  2. Linux DNS服务详解——DNS服务搭建细节

    前几天,我陆续给大家介绍了DNS服务的相关内容,今天,我给大家补充介绍一下DNS服务中一些小问题. 前文链接: Linux DNS服务详解--DNS基础知识 Linux DNS服务详解--DNS实战配 ...

  3. vsftpd服务详解

    一.vsftpd基本使用 VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP,从此名称可以看出来,编制者的初衷是代码的安全.安全性是编写V ...

  4. linux网络服务详解,Linux网络服务器配置基础详解 (3)

    Linux网络服务器配置基础详解 (3) Linux网络服务器配置基础详解 (3) 第三步:编辑"inetd.conf"文件(vi /etc/inetd.conf),禁止所有不需要 ...

  5. Linux DNS服务详解——DNS实战配置

    今天继续给大家介绍Linux基础知识,本文主要内容是DNS的实战配置. 一.DNS安装与配置文件 如果采用YUM的安装方式,DNS设计到三个包,相关命令如下: yum install -y bind ...

  6. Linux启动服务详解

    acpid 提供高级电源管理:配置文件:/proc/acpi/event 预设端口:无 说明:Advanced Configuration and Power Interface,为替代传统的APM电 ...

  7. Linux Apache服务详解——虚拟网站主机功能实战

    今天我们继续给大家介绍Linux相关内容,本文主要内容是Apache服务虚拟网站主机功能实战. 一.虚拟主机功能简介 Apache服务默认支持虚拟主机功能,所谓虚拟主机,就是Apache将一台服务器的 ...

  8. Linux NTP服务详解

    今天继续给大家介绍Linux运维相关内容,本文主要内容是NTP服务. 一.NTP服务简介 NTP服务,即用来同步系统时间的服务,虽然服务器内部会通过晶振自动计算时间,但是在系统长时间运行下,服务器内部 ...

  9. vsftpd配置详解——控制用户目录权限

    一.控制目录权限 1.参数说明: chroot_local_user:是否将所有用户限制在主目录,YES为启用 NO禁用.(该项默认值是NO,即在安装vsftpd后不做配置的话,ftp用户是可以向上切 ...

  10. linux who命令功能,Linux who命令详解

    who 命令显示关于当前在本地系统上的所有用户的信息.显示以下内容:登录名.tty.登录日期和时间.输入whoami 显示您的登录名.tty.您登录的日期和时间.如果用户是从一个远程机器登录的,那么该 ...

最新文章

  1. hadoop学习之一
  2. 20155327《Java程序设计》第二周学习总结
  3. TableCellRenderer TableCellEditor(三)
  4. 新生替代Reflector的反编译软件ILSpy
  5. opencv4版本和3版本_世界名曲鸽子最好听的3个版本,美醉了!
  6. Unknown/unsupported param List(--dist-cache-conf
  7. 互联网架构的演变,看了好多这个讲的确实清楚!
  8. mysqlbinlog 查看binlog时报错unknown variable 'default-character-set=utf8'
  9. 21天Jenkins打卡Day12发布到测试服务器
  10. python爬取数据时怎么将空值转化为0_大数据分析实训 | 成都信息工程大学篇
  11. faststone capture怎么滚动截图?faststone capture怎么录屏?
  12. 软考计算机硬件知识,软考程序员考点计算机硬件基础知识之指令系统
  13. 六爻预测,前沿科学?伪科学?
  14. PPT如何制作一级标题、二级标题
  15. idea破解到2100年
  16. 01、ZigBee 开发教程之进阶篇—BasicRF无线点对点传输协议
  17. 整理总结:英语口语发音技巧
  18. 干货!图像集分类大杀器--混合黎曼度量学习
  19. 前端面试题之计算机网络篇
  20. 吐血推荐:“四无男”泡良 妞 实战攻略

热门文章

  1. NLP学习—19.检索式对话系统中的rank评估指标、rank技术(Point-wise/Pair-wise/List-wise)以及RankNet、LambdaRank、LambdaMART
  2. 数据科学包1---numpy
  3. 从零实现循环神经网络
  4. 机器学习入门——图解集成学习(附代码)
  5. 5月书讯丨​​《联邦学习》带队,10新书给你全方位的技能提升
  6. 不愧是我,短短10分钟就为公司省下了几万块 ( ー̀◡ー́ )
  7. Netty的并发编程实践4:线程安全类的应用
  8. 重构:改善既有代码的设计 精彩书评二
  9. Linux下通过WebShell反弹Shell的技巧
  10. Bloom Filter布隆过滤器